codetools mit cvar und procedure

Für Fehler in Lazarus, um diese von anderen verifizieren zu lassen.
Antworten
Mathias
Beiträge: 7285
Registriert: Do 2. Jan 2014, 17:21
OS, Lazarus, FPC: Linux (die neusten Trunk)
CPU-Target: 64Bit
Wohnort: Schweiz

codetools mit cvar und procedure

Beitrag von Mathias »

Wen ich bei unterem Code bei "wri" Ctrl+Space drücke, gibt es den Fehler im Anhang.
Der Code lässt sich ohne Probleme compilieren, natürlich ohne das "wri". 8)
Getestet mit stable und trunk.
Könnt ihr das Problem nachvollziehen ?

Code: Alles auswählen

program Project1;

var
  epoxy_glAccum: procedure(op: Integer; value: Single); cvar;external 'epoxy';
  glAccum: procedure(op: Integer; value: Single) absolute epoxy_glAccum;

begin
         wri  // Ctrl+Space geht nicht
end.
Vermutlich habe ich wieder mal etwas total exotisches entdeckt. 8)


Sind ganz normale Typen da, wie ein Pointer, geht alles einwandfrei,

Code: Alles auswählen

var
  epoxy_glAccum: Pointer; cvar;external 'epoxy';
  glAccum: Pointer absolute epoxy_glAccum;
Oder wen man den Type auslagert.

Code: Alles auswählen

type
  Tproc = procedure(op: integer; Value: single);
var
  epoxy_glAccum: Tproc; cvar;external 'epoxy';
  glAccum: Tproc absolute epoxy_glAccum;
Dateianhänge
2026-05-05_17-15.png
2026-05-05_17-15.png (73.36 KiB) 150 mal betrachtet
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot

Mathias
Beiträge: 7285
Registriert: Do 2. Jan 2014, 17:21
OS, Lazarus, FPC: Linux (die neusten Trunk)
CPU-Target: 64Bit
Wohnort: Schweiz

Re: codetools mit cvar und procedure

Beitrag von Mathias »

Wen mal Alt+Up drückt, um einen Bezeichner zu suchen, genau das gleiche Problem.
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot

Mathias
Beiträge: 7285
Registriert: Do 2. Jan 2014, 17:21
OS, Lazarus, FPC: Linux (die neusten Trunk)
CPU-Target: 64Bit
Wohnort: Schweiz

Re: codetools mit cvar und procedure

Beitrag von Mathias »

Ich bin ein Schritt weiter gekommen, mit dem cvar hat es nichts zu tun, auch bei diesem einfachen absolute geht es nicht,

Code: Alles auswählen

var
  p: Pointer;
  glAccum: procedure(op: integer; value: single) absolute p;

begin
  wri;
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot

Benutzeravatar
theo
Beiträge: 11304
Registriert: Mo 11. Sep 2006, 19:01

Re: codetools mit cvar und procedure

Beitrag von theo »

Schreib's in den Bugtracker.
Es ist gut möglich, dass ein Problem mit diesem Konstrukt bisher niemandem aufgefallen ist.

Mathias
Beiträge: 7285
Registriert: Do 2. Jan 2014, 17:21
OS, Lazarus, FPC: Linux (die neusten Trunk)
CPU-Target: 64Bit
Wohnort: Schweiz

Re: codetools mit cvar und procedure

Beitrag von Mathias »

Schreib's in den Bugtracker.
Es ist gut möglich, dass ein Problem mit diesem Konstrukt bisher niemandem aufgefallen ist.
Schon gemacht.

https://gitlab.com/freepascal.org/lazar ... k2Nzc1MjZ9
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot

Antworten