Free Pascal Compiler

Software screenshot:
Free Pascal Compiler
Podrobnosti Software:
Verze: 3.0.4 Aktualizováno
Datum uploadu: 22 Jun 18
Vývojka: Daniel Mantione
Licence: Volný
Popularita: 262

Rating: 4.0/5 (Total Votes: 2)

Volný Pascal Compiler (aka FPK Pascal) je open source Pascal kompilátor, který podporuje následující operační systémy: Linux, FreeBSD, NetBSD, MacOSX / 2, BeOS, SunOS (Solaris), QNX a Classic Amiga.

Volný Pascal Compiler je k dispozici pro různé procesory Intel x86, Amd64 / x86 64, PowerPC, PowerPC64, Sparc a ARM.

Volný Pascal Compiler obsahuje velmi čistý jazyk, na rozdíl od většiny programovacích jazyků nepoužívá žádné Makefiles, je rychlá s velkým F, každá jednotka má své vlastní identifikátory a obsahuje IDE (Integrated Development Environment).

Kromě toho má software skvělou integraci s instalátory, objektově orientovaným programováním, inteligentním propojením, distribuční nezávislostí a je kompatibilní s existujícím kódem.

Co je nového verze:

  • Tato verze je bodová aktualizace 3.0 a obsahuje opravy a balíčky aktualizací, z nichž některé jsou vysoce prioritní.

Co je nového ve verzi:

  • Změny jazyka:
  • Anonymní zděděné hovory:
  • Staré chování: anonymní zděděný hovor by mohl vyvolat jakoukoli metodu v nadřazené třídě, která přijala argumenty kompatibilní s parametry aktuální metody.
  • Nové chování: Anonymní zděděný hovor je zaručen, že vždy volá metodu v nadřazené třídě, která byla nahrazena aktuální skupinou.
  • Příklad: Viz http://svn.freepascal.org/svn/fpc/trunk/tests/tbs/tb0577.pp. V předchozích verzích FPC by zděděný hovor v tc3.test mohl volat na tc2.test (b: byte; l: longint = 1234) ;. Nyní volá na tc.test.
  • Důvod: Dodržujte dokumentaci FPC, kompatibilitu s Delphi.
  • Náprava: Pokud si přejete, aby kompilátor rozhodl, kterou metodu volat na základě zadaných parametrů, použijte plně specifikovaný zděděný výraz, např. zděděný test (b).
  • V rozhraní musí být přítomen modifikátor přetížení:
  • staré chování: bylo možné deklarovat funkci / postup / metodu jako přetížení pouze v implementaci.
  • Nové chování: Pokud se používá směrnice o přetížení, musí se také zobrazit v rozhraní.
  • Důvod: starý mechanismus by mohl způsobit těžké problémy (v závislosti na tom, zda byla implementace již analyzována, kompilátor by rutinně zacházel jako s deklarací s / bez přetížení), mohlo by to způsobit nežádoucí jednotky kompilací kvůli na rozhraní změn crc a kompatibilitu Delphi.
  • Náprava: Ujistěte se, že modifikátor přetížení je přítomen v rozhraní i v implementaci, pokud jej používáte.
  • Změny jednotky:
  • Několik metod TDataset mění podpis (TRecordBuffer):
  • Staré chování: Některé (virtuální) metody TDatasetu mají parametry typu "pchar", které se často nazývají "buffer".
  • Nové chování: Typ pchar byl změněn na TRecordBuffer. Tento typ je stále alias pro znak p (ansi), ale časem se změní na pbyte pro pobočku 2.7.1 / 2.8.0, která je kompatibilní s D2009 +.
  • Důvod: Příprava na kompatibilitu Delphi 2009+ a zlepšení obecného psaní. V Delphi 2009+ (a plně kompatibilní režimy FPC v budoucnosti) pchar není ukazatel na byte. Tato změna bude sloučena zpět na 2.6 (.2), ​​ale s TRecordBuffer = pchar.
  • Náprava: Změňte příslušné virtuální metody a použijte TRecordBuffer pro parametry vyrovnávací paměti. Definujte TRecordBuffer = pansichar, aby starší Delphis a FPCs fungovaly. V místech, kde je typ vyrovnávací paměti, nepoužívejte pchar, ale symbol TRecordbuffer.
  • DLLParam změněn z Longint na PtrInt:
  • Staré chování: DLLParam byl typu Longint dokonce i na Win64.
  • Nové chování: DLLParam je nyní typu PtrInt tak i na 64bitových systémech.
  • Důvod: Zabraňte ztrátě dat, shodě s prohlášením v záhlavích systému Windows.
  • Náprava: Změňte deklaraci postupů použitých jako dll hook, abyste získali parametr PtrInt namísto Longint.
  • Některé symboly v jednotkách Unix a Unixutils byly zastaralé:
  • Staré chování: Žádné varování pro unixutils.getfs (několik variant), unix.fpsystem (pouze pro krátkou verzi), konstanty Unix.MS_ a unix.tpipe. unix.statfs
  • Nové chování: Kompilátor vydá tyto varovné symboly. V budoucích verzích mohou být tyto soubory odstraněny.
  • Důvod: getfs byl nahrazen plně syntetickou funkcí sysutils.getfilehandle již dávno. fpsystem (shortstring) byl zbytkem migrace 1.0.x-> 2.0.x (verze s ansistingem zůstává podporována), konstanty MS_ jsou pro volání msync, které FPC nepodporuje, a proto nebyly použity a nekontrolovány pro během desetiletí a může jít k jádru 1.x krát, tpipe byl 1.0.x alias baseunix.TFildes, jednotka, kde byla (fp) potrubí přesunuta na in během série 2.0. Unix.statfs je přetížená verze, která nebyla správně přejmenována na předponu fp *, když ostatní byli přejmenováni na 2.4.0
  • Náprava: použijte nové varianty (sysutils.getfilehandle, fpsystem (ansistring), baseunix.tfildes). V případě konstant MS_ získáte aktuální hodnoty pro konstanty ze stejného místa, kde jste získali kód, který je používá.
  • Změna chování TStrings.DelimitedText (třídy třídy):
  • Staré chování: Pokud je StrictDelim pravdivý, TStrings.DelimitedText zcela nesplnil specifikaci formátu SDF (která je definována v nápovědě Delphi) alespoň v případě mezery (a pravděpodobně dalších nízkých znaků ASCII) vpředu a na konci polí stejně jako uvozovek a zakončení řádků. Pokud je pravda StrictDelimiter, je pravda a ve výše uvedených případech ukládání TString .DelimitedText a vložení tohoto textu do jiného TString vede k rozdílům mezi těmito dvěma. Poznámka: StrictDelimetr je ve výchozím nastavení nepravdivý.
  • Nové chování: FPC následuje chování Delphi.
  • Důvod: Konzistence (zápis a čtení v DelimitedText by mělo mít za následek stejné řetězce), kompatibilitu Delphi (podle specifikace SDF).
  • Náprava: Zkontrolujte stávající kód, který čte nebo zapisuje DelimitedText; v případě potřeby převést data nebo napsat převodní kód. Pro podrobný test naleznete testy webtbs tw19610.pp.
  • fcl-image TTiffIDF přejmenován na TTiffIFD:
  • Staré chování: Třída pomocných pomocníků pro "adresář souborů obrázků" byl chybně napsán TiffIDF (tiffcmn jednotka)
  • Nové chování: Nyní přejmenováno na TTiffIFD
  • Důvod: Konzistence, nízká spotřeba
  • Náprava: Přejmenujte identifikátor podle potřeby.
  • Jednotka libc vydává zastaralé varování:
  • Starší chování: Zatímco většinu let nepoužívá jednotka libc, nevydává upozornení, které jsou zastaralé
  • Nové chování: při použití jednotky libc se zobrazuje zastaralé varování, které vás vyzývá k aktualizaci.
  • Důvod: jednotka libc je starší jednotka Kylix s omezenou přenositelností
  • Náprava: Použijte správné jednotky FPC, jak je popsáno v jednotce libc
  • Ostatní:
  • Podpora UPX byla odstraněna:
  • Starší chování: Ve složkách FPC Makefiles byla v operačním systému FPC Makefiles nějaká zbylá podpora UPX (spustitelný balík) a verze DOS a Windows FPC obsahovala binární soubor UPX.
  • Nové chování: vše bylo odebráno.
  • Důvod: Binární soubory pro vydání nebyly na chvíli UPX'ed. Velikost spustitelných souborů FPC je dnes v porovnání s celkovou velikostí instalace obvykle nepatrná a používání UPX příležitostně způsobuje některé drobné obtěžování (falešné pozitiva z antivirových skenerů, horší chování stránkování operačním systémem, neslučitelnost s některými spustitelnými oddíly ...)
  • Řešení: Stáhněte si a nainstalujte UPX sami od jeho domovské stránky a obecně ji přehodnoťte.

Co je nového ve verzi 2.4.4:

  • Tato verze obsahuje většinu opravených knihoven od počátku června 2010 do března 2011.
  • Existují také některé opravy kompilátorů, které se většinou vztahují k 64bitové verzi.

Co je nového ve verzi 2.4.0:

  • >
  • Vylepšení informací o ladění trpaslíků
  • Několik nových cílů
  • 64bitový systém Mac OS X (x86_64 / ppc64)
  • iPhone (Mac OS X / rameno)
  • Haiku (z rodiny BeOS)
  • Vylepšená podpora ARM EABI
  • Celá optimalizace programu
  • Mnoho oprav překladačů a půl roku aktualizací knihoven (od 2.2.4)

Co je nového ve verzi 2.2.4:

  • Experimentální balíčky - instalační nástroj
  • Balíčky:
  • Přidána podpora pro čtení / psaní TIFF v fcl-image
  • Vylepšení a opravy v podpoře CHM
  • Pevné propojení balíku gtk2 s verzemi gtk nad 2.13.4
  • IDE:
  • Přidána podpora souborů CHM nápovědy
  • Podobný software

    TinyCOBOL
    TinyCOBOL

    11 May 15

    Intel C++ Compiler
    Intel C++ Compiler

    20 Feb 15

    JarBuilder
    JarBuilder

    2 Jun 15

    Jikes RVM
    Jikes RVM

    15 Apr 15

    Komentáře k Free Pascal Compiler

    Komentáře nebyl nalezen
    Přidat komentář
    Zapnout obrázky!