Free Pascal Compiler

Software screenshot:
Free Pascal Compiler
Software detaljer:
Version: 3.0.4 Opdateret
Upload dato: 22 Jun 18
Udvikler: Daniel Mantione
Licens: Gratis
Popularitet: 518

Rating: 4.3/5 (Total Votes: 3)

Gratis Pascal Compiler (aka FPK Pascal) er en open source Pascal compiler, der understøtter følgende operativsystemer: Linux, FreeBSD, NetBSD, MacOSX / Darwin, MacOS classic, DOS, Win32, OS / 2, BeOS, SunOS (Solaris), QNX og Classic Amiga.

Gratis Pascal Compiler er tilgængelig for forskellige processorer Intel x86, Amd64 / x86 64, PowerPC, PowerPC64, Sparc og ARM.

Gratis Pascal Compiler har et meget rent sprog, det bruger ingen Makefiles i modsætning til de fleste programmeringssprog, det er hurtigt med en stor F, hver enhed har sine egne identifikatorer og indeholder et IDE (Integrated Development Environment).

Desuden indeholder softwaren stor integration med montører, objektorienteret programmering, smartlinking, distribution uafhængighed, og den er kompatibel med eksisterende kode.

Hvad er nyt i dette frigivelse:

  • Denne version er en punktopdatering til 3.0 og indeholder fejlrettelser og opdateringspakker, hvoraf nogle prioriteres højt.

Hvad er nyt i version:

  • Sprogændringer:
  • Anonyme arvede opkald:
  • Gammel opførsel: Et anonymt arvet kald kunne kalde igennem enhver metode i en forældersklasse, der accepterede argumenter, der var forenelige med parametrene i den nuværende metode.
  • Ny opførsel: En anonym arvelig samtale garanterer altid at gennemgå metoden i en forældersklasse, der blev overskredet af den nuværende.
  • Eksempel: Se http://svn.freepascal.org/svn/fpc/trunk/tests/tbs/tb0577.pp. I tidligere FPC versioner vil det arvede opkald i tc3.test kalde igennem til tc2.test (b: byte; l: longint = 1234) ;. Nu kalder det igennem til tc.test.
  • Årsag: I overensstemmelse med FPC-dokumentationen, Delphi-kompatibilitet.
  • Afhjælpning: Hvis du ønsker, at kompilatoren skal bestemme hvilken metode, der skal kaldes baseret på de angivne parametre, skal du bruge et fuldt specificeret arvet samtalek udtryk som arvelig test (b).
  • Overload modifier skal være til stede i grænsefladen:
  • Gammel adfærd: Det var muligt at erklære en funktion / procedure / metode som overbelastning kun i implementeringen.
  • Ny adfærd: Hvis et overbelastningsdirektiv anvendes, skal det også vises i grænsefladen.
  • Årsag: Den gamle mekanisme kan medføre vanskelige problemer (afhængigt af om implementeringen allerede blev analyseret, eller kompilatoren ville behandle rutinen som om den blev erklæret med / uden overbelastning), kan det medføre uønskede enhedskompileringer på grund af til grænseflade crc ændringer og Delphi kompatibilitet.
  • Afhjælpning: Sørg for, at overbelastningsmodifikatoren er til stede både i grænsefladen og i implementeringen, hvis du bruger den.
  • Enhedsændringer:
  • Flere metoder til TDataset ændrer signaturen (TRecordBuffer):
  • Gammel opførsel: Flere (virtuelle) metoder til TDataset har parametre af typen "pchar", som ofte kaldes "buffer".
  • Ny opførsel: Pchar-typen er blevet ændret til TRecordBuffer. For øjeblikket er denne type stadig et alias for p (ansi) char, men med tiden vil det blive ændret til pbyte for 2.7.1 / 2.8.0 branchen, som er D2009 + kompatibel.
  • Årsag: Forberedelse til Delphi 2009 + kompatibilitet og forbedring af generel maskinskrivning. I Delphi 2009+ (og fuldt kompatible FPC-tilstande i fremtiden) pchar ikke peger på byte længere. Denne ændring vil blive slået sammen til 2.6 (.2), ​​men med TRecordBuffer = pchar.
  • Afhjælpning: Skift de relevante virtuelle metoder til at bruge TRecordBuffer til bufferparametre. Definer TRecordBuffer = pansichar for at holde ældre Delphis og FPC'er i gang. På steder, hvor en buffer er typecasted, må du ikke bruge pchar men symbolet TRecordbuffer.
  • DLLParam ændret fra Longint til PtrInt:
  • Gammel opførsel: DLLParam var af typen Longint selv på Win64.
  • Ny opførsel: DLLParam er nu af typen PtrInt, så også på 64 Bit-systemer.
  • Årsag: Undgå datatab, match deklarationen i Windows-overskrifterne.
  • Afhjælpning: Skift deklarationen af ​​de procedurer, der anvendes som dll hook, for at tage en PtrInt parameter i stedet for Longint.
  • Nogle symboler i enhed Unix og Unixutils er blevet udskrevet:
  • Gammel opførsel: Ingen uddateret advarsel for unixutils.getfs (flere varianter), unix.fpsystem (kun shortstring version), Unix.MS_ constants og unix.tpipe. unix.statfs
  • Ny opførsel: Kompilatoren vil udsende en uddateret advarsel for disse symboler. I fremtidige versioner kan disse blive fjernet.
  • Årsag: getfs er blevet erstattet af en hel platformsfunktion sysutils.getfilehandle for længe siden. fpsystem (shortstring) var en overblivelse af 1.0.x-> 2.0.x migrering (ansvarsversionen forbliver understøttet), MS_-konstanterne er til et msync-opkald, der ikke understøttes af FPC, og har således været ubrugt og ukontrolleret til i løbet af et årti og måske dateres til kernel 1.x gange, var tpipe 1.0.x-aliaset for baseunix.TFildes, den enhed, hvor (fp) -røret blev flyttet til i under 2,0-serien. Unix.statfs er en overbelastet version, der ikke blev omdøbt til fp * prefix, da de andre blev omdøbt til 2.4.0
  • Afhjælpning: Brug de nye varianter (sysutils.getfilehandle, fpsystem (ansistring), baseunix.tfildes). I tilfælde af MS_-konstanterne får du aktuelle værdier for konstanterne fra samme sted, hvor du har den kode, der bruger dem.
  • TStrings.DelimitedText adfærd ændret (enhedsklasser):
  • Gammel opførsel: Hvis StrictDelim er sandt, fulgte TStrings.DelimitedText ikke fuldstændigt SDF-formatspecifikationen (som er defineret i Delphi help) i det mindste i tilfælde af mellemrum (og formodentlig andre lave ASCII-tegn) foran og i slutningen af felter samt citater og linjestykker. Værre, hvis StrictDelimiter er sandt, og i de ovennævnte tilfælde gemmer en TString .DelimitedText og indlæser den pågældende tekst i en anden TString til forskelle mellem de to. Bemærk: StrictDelimiter er som standard false.
  • Ny opførsel: FPC følger Delphi-adfærd.
  • Årsag: Konsistens (skrivning og læsning i DelimitedText skal resultere i samme strenge), Delphi-kompatibilitet (efter SDF-specifikationen).
  • Afhjælpning: Gennemgå din eksisterende kode, der læser eller skriver Delimiteret tekst; Om nødvendigt konvertere data eller skriv konverter kode. Se test webtbs tw19610.pp for en detaljeret test.
  • fcl-image TTiffIDF omdøbt til TTiffIFD:
  • Gammel opførsel: Tiff-hjælperklassen for "billedfilmappen" blev stavet TiffIDF (tiffcmn enhed)
  • Ny opførsel: Nu omdøbt til TTiffIFD
  • Årsag: Konsistens, lav brug
  • Afhjælpning: Omdøb identifikator efter behov.
  • enhed libc udsteder en forældet advarsel:
  • Gammel adfærd: Mens den blev forældet i mange år, udstedte libc-enheden ikke en forældet advarsel
  • Ny opførsel: En uddateret advarsel vises, når enhed libc bruges, og opfordrer dig til at opdatere.
  • Årsag: enhed libc er en Kylix arv enhed med begrænset overførbarhed
  • Afhjælpning: Brug de korrekte FPC-enheder som beskrevet i libc-enhed
  • Andet:
  • UPX-support er blevet fjernet:
  • Gammel opførsel: Der var en del resterende UPX (en eksekverbar pakker) understøttelse i FPC Makefiles, og DOS og Windows FPC udgivelser inkluderede en UPX binær.
  • Ny opførsel: Alle fjernet.
  • Årsag: Udgivelse af binære filer har ikke været UPX'ed i et stykke tid. Størrelsen af ​​FPC-eksekverbarhederne er i almindelighed ubetydelig i disse dage i forhold til den samlede installationsstørrelse, og ved hjælp af UPX forårsager det nogle gange nogle mindre irritationer (falske positive fra virusscannere, værre pagingadfærd ved operativsystemet, inkompatibiliteter med visse eksekverbare sektioner ...)
  • Afhjælpning: Download og installer UPX dig selv fra sin hjemmeside og genovervurderer generelt behovet for det.

Hvad er nyt i version 2.4.4:

  • Denne version indeholder de fleste biblioteksrettelser fra begyndelsen af ​​juni 2010 til marts 2011.
  • Der er også nogle kompilatorrettelser, de fleste relaterer til 64-bit.

Hvad er nyt i version 2.4.0:

  • Delphi kan lide ressourcer til alle platforme
  • Forbedringer af dværgfejloplysninger,
  • Flere nye mål
  • 64-bit Mac OS X (x86_64 / ppc64)
  • iPhone (Mac OS X / Arm)
  • Haiku (fra BeOS-familien)
  • Forbedret ARM EABI-understøttelse
  • Hel programoptimering
  • Mange kompileringsfejlfinding og et halvt år med biblioteksopdateringer (siden 2.2.4)

Hvad er nyt i version 2.2.4:

  • Alt:
  • Eksperimentelle pakker-installationsværktøj
  • Pakker:
  • Tilføjet support til TIFF læsning / skrivning i fcl-image
  • Forbedringer og rettelser i CHM-support
  • Fast binding af gtk2-pakken med gtk-versioner over 2.13.4
  • IDE:
  • Tilføjet support til CHM-hjælpefiler

Lignende software

Nimrod
Nimrod

20 Feb 15

GNU Smalltalk
GNU Smalltalk

11 May 15

Invicta
Invicta

2 Jun 15

Kommentarer til Free Pascal Compiler

Kommentarer ikke fundet
Tilføj kommentar
Tænd billeder!