Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / lazarus / 2000-01

Problems

3 messages · 3 people ·

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

Shane Miller

The new compiler DOES support these constructs. Your sure you compiled the new compiler and moved it over your current one? Do a ppc386 -i (That's the letter I as in "I"nformation). See if it displays today's (or yesterday's) date.

Let us know what it displays.
Shane

>> 01/18/00 09:27PM >>>

No problems with compiler, rtl, fcl, packages apart from some toplevel makefile problems but compiling in lower directories seemed to cure all makefile errors.

Problems found with CVS clean checkout of lazarus, lcl only compile.

1: Pascal Construct in vclglobals.pp and lcllinux.pp
Error reported:
lcllinux.pp(58,14) Error: Illegal expression
lcllinux.pp(58,14) Error: Error in type definition
lcllinux.pp(58,14) Fatal: Syntax error, ; expected but identifier LONGWORD found
Offending code:
HDC = type LongWord;

2: Construct in forms.pp
Error reported:
forms.pp(114,71) Fatal: Syntax error, ; expected but identifier ISFORM found Offending code:
property OnClose: TCloseEvent read FOnClose write FOnClose stored IsForm; other code also has stored attributes problems.
After spending a few hours trying to comment out all illegal contructs etc I came to the conclusion that the compiler is not supporting a lot of the language constructs being used.
Compiling the compiler from the CVS sources was no problem so I presume I have the latest and greatest compiler. Looking through the FPC manuals I could find no reference to the above constructs, so I presume they are new in some version of the compiler somewhere. Also I noticed {$mode objfpc} switch, again with nothing to tell me what this does, though I have not grepped the compiler sources yet for this.
The shear number of errors encountered trying to comment out code just to get it to compile was too great and I eventually came up against the usage of the foo = type bar temp fix I made which was to get rid of the word type. Of course further down the chain some modules did not like type
foo = bar;
so I have now ground to a halt.
If anyone could help me just getting the sources to compile, then maybe I can start to help a little.
One thing I noticed in the vclglobals is
THandle = Integer;
hwnd = THandle;
TCaption = string;
//TMessage = Pointer;
HMENU = type Longword;
HPEN = type Longword;
HBitmap = type Longword;

would it not be better to define all handles as THandle, make it much easier for the future?
Many thanks
Peter.

Reply by email

Peter Dyson

�
No problems with compiler, rtl, fcl, packages apart from some
toplevel makefile problems but compiling in lower
directories
seemed to cure all makefile errors.
�
Problems found with CVS clean checkout of lazarus, lcl only compile.
�
1: Pascal Construct in vclglobals.pp and
lcllinux.pp
Error reported:
lcllinux.pp(58,14) Error: Illegal expression
lcllinux.pp(58,14) Error: Error in type
definition
lcllinux.pp(58,14) Fatal: Syntax error, ; expected but identifier LONGWORD found
Offending code:
HDC = type LongWord;
�
2: Construct in forms.pp
Error reported:
forms.pp(114,71) Fatal: Syntax error, ; expected but identifier ISFORM found
Offending code:
property OnClose: TCloseEvent read FOnClose write FOnClose stored IsForm;
other code also has stored attributes
problems.
After spending a few hours trying to comment out all illegal contructs etc
I came to the conclusion that the compiler is not
supporting a lot
of the language constructs being used.
Compiling the compiler from the CVS sources was no problem so I presume
I have the latest and greatest compiler. Looking through the FPC manuals
I could find no reference to the above constructs, so I presume they are
new in some version of the compiler somewhere. Also I noticed {$mode objfpc}
switch, again with nothing to tell me what this does, though I have not
grepped the compiler sources yet for this.
The shear number of errors encountered trying to comment out code just to get
it to compile was too great and I eventually came up against the usage of the
foo = type bar temp fix I made which was to get rid of the word type. Of
course further down the chain some modules did not like
type
foo = bar;
so I have now ground to a halt.
If anyone could help me just getting the sources to compile, then maybe I can
start to help a little.
One thing I noticed in the vclglobals is
THandle = Integer;
hwnd = THandle;
TCaption = string;
//TMessage = Pointer;
HMENU = type Longword;
HPEN = type Longword;
HBitmap = type Longword;
�
would it not be better to define all handles as THandle, make it much easier
for the future?
Many thanks
Peter.
�

Reply by email

Florian Klaempfl
to Peter Dyson
Show quoted text 26 lines
Peter Dyson wrote: No problems with compiler, rtl, fcl, packages apart from some toplevel makefile problems but compiling in lower directories seemed to cure all makefile errors. Problems found with CVS clean checkout of lazarus, lcl only compile. 1: Pascal Construct in vclglobals.pp and lcllinux.pp Error reported: lcllinux.pp(58,14) Error: Illegal expression lcllinux.pp(58,14) Error: Error in type definition lcllinux.pp(58,14) Fatal: Syntax error, ; expected but identifier LONGWORD found Offending code: HDC = type LongWord; 2: Construct in forms.pp Error reported: forms.pp(114,71) Fatal: Syntax error, ; expected but identifier ISFORM found Offending code: property OnClose: TCloseEvent read FOnClose write FOnClose stored IsForm; other code also has stored attributes problems. After spending a few hours trying to comment out all illegal contructs etc I came to the conclusion that the compiler is not supporting a lot of the language constructs being used.

What compiler version do you use? You need a snapshot, with 0.99.12b it doesn't work.

Reply by email