Free Pascal Compiler

Skjermbilde programvare:
Free Pascal Compiler
Prog.varedetaljer:
Versjon: 3.0.4 Oppdatert
Last opp dato: 22 Jun 18
Utvikler: Daniel Mantione
Lisens: Gratis
Popularitet: 262

Rating: 4.0/5 (Total Votes: 2)

Gratis Pascal Compiler (aka FPK Pascal) er en Pascal-kompilator med åpen kildekode som stø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 tilgjengelig for forskjellige prosessorer Intel x86, Amd64 / x86 64, PowerPC, PowerPC64, Sparc og ARM.

Gratis Pascal Compiler har et veldig rent språk, det bruker ingen Makefiles i motsetning til de fleste programmeringsspråk, det er Rask med en stor F, hver enhet har sine egne identifikatorer og inneholder et IDE (Integrated Development Environment).

Videre har programvaren stor integrering med montører, objektorientert programmering, smartlinking, distribusjons uavhengighet, og den er kompatibel med eksisterende kode.

Hva er nytt i dette utgivelse:

  • Denne versjonen er en punktoppdatering til 3.0 og inneholder feilrettings- og oppdateringspakker, hvorav noen har høy prioritet.

Hva er nytt i versjon:

  • Språkendringer:
  • Anonyme arvelige anrop:
  • Gammel oppførsel: En anonym arvet samtale kan kalle gjennom til hvilken som helst metode i en overordnet klasse som aksepterte argumenter som er kompatible med parametrene i den gjeldende metoden.
  • Ny oppførsel: En anonym arvet samtale er garantert å alltid ringe til metoden i en overordnet klasse som ble overstyrt av den nåværende.
  • Eksempel: Se http://svn.freepascal.org/svn/fpc/trunk/tests/tbs/tb0577.pp. I tidligere FPC-versjoner vil det arvelige anropet i tc3.test koble til tc2.test (b: byte; l: longint = 1234) ;. Nå ringer det til tc.test.
  • Årsak: I overensstemmelse med FPC-dokumentasjonen, Delphi-kompatibilitet.
  • Løsning: Hvis du ønsker at kompilatoren skal bestemme hvilken metode som skal ringes basert på de angitte parametrene, må du bruke et fullt spesifisert arvet samtalekutt som arvelig test (b).
  • Overload modifier må være tilstede i grensesnittet:
  • Gammel oppførsel: Det var mulig å erklære en funksjon / prosedyre / metode som overbelastning bare i implementeringen.
  • Ny oppførsel: Hvis et overbelastningsdirektiv brukes, må det også vises i grensesnittet.
  • Årsak: Den gamle mekanismen kan føre til vanskelige å finne problemer (avhengig av om implementeringen allerede ble analysert, kompilatoren ville behandle rutinen som om den ble erklært med / uten overbelastning), kan det føre til uønskede enhetskomponeringer på grunn av å endre grensesnitt crc endringer, og Delphi kompatibilitet.
  • Løsning: Kontroller at overlastmodifikatoren er tilstede både i grensesnittet og i implementeringen hvis du bruker den.
  • Enhetsendringer:
  • Flere metoder for TDataset endrer signatur (TRecordBuffer):
  • Gammel oppførsel: Flere (virtuelle) metoder for TDataset har parametere av typen "pchar", som ofte kalles "buffer".
  • Ny oppførsel: Pchar-typen er endret til TRecordBuffer. For tiden er denne typen fortsatt et alias for p (ansi) char, men med tiden vil det bli endret til pbyte for 2.7.1 / 2.8.0 grenen, som er D2009 + kompatibel.
  • Årsak: Forberedelse til Delphi 2009 + kompatibilitet og forbedring av generell skriving. I Delphi 2009+ (og fullt kompatible FPC moduser i fremtiden) pchar peker ikke på byte lenger. Denne endringen vil bli slått sammen til 2.6 (.2), ​​men med TRecordBuffer = pchar.
  • Løsning: Endre relevante virtuelle metoder for å bruke TRecordBuffer for bufferparametere. Definer TRecordBuffer = pansichar for å beholde eldre Delphis og FPCs. På steder der en buffer er typecasted, ikke bruk pchar men symbolet TRecordbuffer.
  • DLLParam endret fra Longint til PtrInt:
  • Gammel oppførsel: DLLParam var av typen Longint selv på Win64.
  • Ny oppførsel: DLLParam er nå av typen PtrInt, så også på 64 Bit-systemer.
  • Årsak: Forhindre datatap, samsvar med erklæringen i Windows-overskriftene.
  • Løsning: Endre erklæringen av prosedyrene som brukes som dll-krok for å ta en PtrInt-parameter i stedet for Longint.
  • Noen symboler i enheten Unix og Unixutils er blitt utdatert:
  • Gammel oppførsel: Ingen utdatert advarsel for unixutils.getfs (flere varianter), unix.fpsystem (kun shortstring-versjon), Unix.MS_-konstanter og unix.tpipe. unix.statfs
  • Ny oppførsel: Kompilatoren vil avgi en utdatert advarsel for disse symbolene. I fremtidige versjoner kan disse bli fjernet.
  • Årsak: getfs har blitt erstattet av en hel-plattforms funksjon sysutils.getfilehandle for lenge siden. fpsystem (shortstring) var en gjenværende av 1.0.x-> 2.0.x-migrasjonen (ansvarsversjonen forblir støttet), MS_-konstantene er for et Msync-anrop som ikke støttes av FPC, og har dermed vært ubrukt og ukontrollert for i løpet av et tiår, og kanskje dateres til kjernen 1.x ganger, var tpipe 1.0.x-aliaset til baseunix.TFildes, enheten der (fp) -røret ble flyttet til i løpet av 2,0-serien. Unix.statfs er en overbelastet versjon som ikke var riktig omdøpt til fp * prefiks når de andre ble omdøpt i 2.4.0
  • Løsning: Bruk de nye variantene (sysutils.getfilehandle, fpsystem (ansistring), baseunix.tfildes). Når det gjelder MS_-konstantene, få nåværende verdier for konstanter fra samme sted der du har koden som bruker dem.
  • TStrings.DelimitedText oppførsel endret (enhetsklasser):
  • Gammel oppførsel: Hvis StrictDelim er sant, fulgte TStrings.DelimitedText ikke helt SDF-formatspesifikasjonen (som er definert i Delphi-hjelp), i hvert fall i tilfelle mellomrom (og antagelig andre lave ASCII-tegn) foran og på slutten av felt, så vel som sitater og linjestykker. Verre, hvis StrictDelimiter er sant, og i de tilfeller som er nevnt ovenfor, lagrer en TString .DelimitedText og laster den teksten i en annen TString til forskjeller mellom de to. Merk: StrictDelimiter er som standard false.
  • Ny oppførsel: FPC følger Delphi-oppførsel.
  • Årsak: Konsistens (skriving ut og lesing i DelimitedText skal resultere i de samme strengene), Delphi-kompatibilitet (følger SDF-spesifikasjonen).
  • Løsning: Gjennomgå din eksisterende kode som leser eller skriver Avgrenset tekst; Om nødvendig konvertere data eller skriv omformerkode. Se test webtbs tw19610.pp for en detaljert test.
  • fcl-image TTiffIDF omdøpt til TTiffIFD:
  • Gammel oppførsel: Tiff-hjelpeklassen for "bildefilkatalogen" ble feilstavet TiffIDF (tiffcmn enhet)
  • Ny oppførsel: Nå omdøpt til TTiffIFD
  • Årsak: Konsistens, lav bruk
  • Løsning: Gi nytt navn til identifikator etter behov.
  • Enhetsbiblioteket utsteder en utdatert advarsel:
  • Gammel oppførsel: Mens den ble utdatert i mange år, utgav libc-enheten ikke en utdatert advarsel
  • Ny oppførsel: En utdatert advarsel vises når enheten libc brukes, og oppfordrer deg til å oppdatere.
  • Årsak: Unit libc er en Kylix arvenhet, med begrenset overførbarhet
  • Løsning: Bruk riktige FPC-enheter som beskrevet i libc-enheten
  • Annet:
  • UPX-støtten er fjernet:
  • Gammel oppførsel: Det var noen gjenværende UPX (en kjørbar pakker) -støtte i FPC Makefiles, og DOS- og Windows FPC-utgivelser inkluderte et UPX-binært.
  • Ny oppførsel: Alle fjernet.
  • Årsak: Utgivelsesbinariene har ikke vært UPX'ed en stund. Størrelsen på FPC-kjørbarhetene er vanligvis ubetydelig i disse dager i forhold til den totale installasjonsstørrelsen, og ved å bruke UPX forårsaker det noen ganger små irritasjoner (falske positiver fra virusskannere, verre personsøkingsadferd fra operativsystemet, inkompatibiliteter med visse kjørbare seksjoner, ...)
  • Løsning: Last ned og installer UPX deg selv fra hjemmesiden sin, og reevaluere behovet for det generelt.

Hva er nytt i versjon 2.4.4:

  • Denne versjonen inneholder de fleste bibliotekskorrigeringer fra tidlig juni 2010 til mars 2011.
  • Det finnes også noen kompilatorrettelser, de fleste relaterer seg til 64-biters.

Hva er nytt i versjon 2.4.0:

  • Delphi liker ressurser for alle plattformer
  • Dværg feilsøkingsinformasjon forbedringer,
  • Flere nye mål
  • 64-biters Mac OS X (x86_64 / ppc64)
  • iPhone (Mac OS X / Arm)
  • Haiku (fra BeOS-familien)
  • Forbedret ARM EABI-støtte
  • Hele programoptimalisering
  • Mange kompilator feilrettinger og et halvt år med bibliotek oppdateringer (siden 2.2.4)

Hva er nytt i versjon 2.2.4:

  • Alt:
  • Eksperimentelle pakker-installeringsverktøy
  • Pakker:
  • Lagt til støtte for TIFF-lesing / skriving i fcl-bilde
  • Forbedringer og rettelser i CHM-støtte
  • Fast kobling av gtk2-pakken med gtk-versjoner over 2.13.4
  • IDE:
  • Lagt til støtte for CHM-hjelpefiler

Lignende programvare

GNU Octave
GNU Octave

22 Jun 18

Scala
Scala

17 Feb 15

GCC MELT
GCC MELT

17 Feb 15

CeGCC
CeGCC

3 Jun 15

Kommentarer til Free Pascal Compiler

Kommentarer ikke funnet
Legg til kommentar
Slå på bilder!