[gelöst] Compilereinstellungen -> Syntaxeinstellungen n.v.

Für Fehler in Lazarus, um diese von anderen verifizieren zu lassen.
Antworten
Michl
Beiträge: 2505
Registriert: Di 19. Jun 2012, 12:54

[gelöst] Compilereinstellungen -> Syntaxeinstellungen n.v.

Beitrag von Michl »

Einen schönen Abend in die Runde,

ich habe eben ein paar Tests mit den Projekteinstellungen -> Compilereinstellungen -> Parsen -> Syntaxeinstellungen gemacht. Dabei ist mir aufgefallen, dass sich Lazarus 1.2.6 mMn richtig verhällt und Lazarus-Trunc nicht.

Ich habe jeweils die "C-artigen Operatoren" und "LABEL und GOTO erlauben" ausgestellt und folgenden Test gemacht:

Code: Alles auswählen

procedure TForm1.Button1Click(Sender: TObject);
var
  i: Integer;
label
  L1;
begin
  i:=10;
  i+=1;
  ShowMessage(IntToStr(i));
  goto L1;
  ShowMessage('Sowas');
  L1:
end;   
Unter Lazarus 1.2.6 meckert der Compiler das Label L1 an, im Trunc läuft der Compiler ohne Fehlermeldung durch und erstellt das Projekt. Scheinbar ignoriert die Trunc-Version diese Einstellungen.

Kann das jemand verifizieren, bevor ich einen Bugreport dazu erstelle?

Windows 7, Lazarus 1.5 r48762M FPC 3.1.1 i386-win32-win32/win64

Danke

Michael
Zuletzt geändert von Michl am Mo 27. Apr 2015, 15:11, insgesamt 1-mal geändert.

Code: Alles auswählen

type
  TLiveSelection = (lsMoney, lsChilds, lsTime);
  TLive = Array[0..1] of TLiveSelection; 

Warf
Beiträge: 1910
Registriert: Di 23. Sep 2014, 17:46
OS, Lazarus, FPC: Win10 | Linux
CPU-Target: x86_64

Re: Compilereinstellungen -> Parsen -> Syntaxeinstellungen n

Beitrag von Warf »

Kann ich bestätigen, über die Projekteinstellungen funktioniert der Code trozdem, mit dem Code

Code: Alles auswählen

{$GOTO OFF}

Spricht mir der FPC direkt den erwarteten Fehler

W7, Lazarus 1.5, grade erst geupdated, fpc 2.6.4

Michl
Beiträge: 2505
Registriert: Di 19. Jun 2012, 12:54

Re: Compilereinstellungen -> Parsen -> Syntaxeinstellungen n

Beitrag von Michl »

Danke!

Habe mir eben auch Lazarus 1.5 r48870 FPC 3.1.1 i386-win32-win32/win64 gebaut, mit dem gleichen fehlerhaften Verhalten. Habe es eben gemeldet: http://bugs.freepascal.org/view.php?id=27972

Code: Alles auswählen

type
  TLiveSelection = (lsMoney, lsChilds, lsTime);
  TLive = Array[0..1] of TLiveSelection; 

Michl
Beiträge: 2505
Registriert: Di 19. Jun 2012, 12:54

Re: [gelöst] Compilereinstellungen -> Syntaxeinstellungen n.

Beitrag von Michl »

Leider hatte ich bei einem Test mit Lazarus 1.2.6 "-Sgc" in der fpc.cfg entfernt, bei Lazarus 1.5 nicht (und nicht mehr daran gedacht :wink: ). Daher kam es zu unterschiedlichen Resultaten.

Wie mir Mattias erklärt hat, sind die Optionen unter Projekteinstellungen -> Compilereinstellungen -> Parsen -> Syntaxeinstellungen nur zum Aktivieren zusätzlicher Optionen für den Compiler geeignet. Ist eine Option bereits in der fpc.cfg gesetzt, hat die Aktivierung bzw. Deaktivierung dieser, per Projekteinstellungen, keinerlei Funktion.

Code: Alles auswählen

type
  TLiveSelection = (lsMoney, lsChilds, lsTime);
  TLive = Array[0..1] of TLiveSelection; 

Antworten