No, I think it is simply the versioning from synedit itself. Lazarus uses synedit as the main editor so editor improvements over time cause synedit mutations.
"TRangeState" to "Pointer"
Are the failing sources in vclua, or in SynEdit?-----------Some of those errors remind me of things that are 64 or 32 bit only errors.Quote "TRangeState" to "Pointer"I dont know what source causes that, but search through SynEdits own sources.You may need to typecast via PtrInt or PtrUIntPointer(PtrInt(rangestate))
It would be good to get them on the bugtracker. I just did a build of Lazarus 1.6.4 (entire IDE, incl SynEdit) on 64 bit with fpc 3.0.2.And the build succeeded.So I need the exact settings (compile options), to compile SynEdit package, that will trigger this error.1.6.5 at the moment is near identical to 1.6.4.I guess 3.0.3 and 3.0.2 have little diff either.Otherwise it would be desirable to know if it happens with 3.0.2 too (since it could be an fpc issue)If I cannot reproduce on 1.6.4 / 3.0.2 then I will need to know, if you can.--------------------Those errors happen from time to time, because when committing new code it is usually tested with one set of compiler options and for one of 32/64 bit only.
Code: Pascal [Select] syneditmarks.pp(1048,35) Error: Illegal type conversion: "TSynEditMarkChangeReasons" to "LongInt"
I am compiling the vclua project which uses some of the TSynEdit/Highlighter files, using Lazarus 1.6.5 and FPC 3.0.3.These are the error messages from versions 0.5vclua 0.5 - 32bit:failure, 64bit:failureerror messageCode: Pascal [Select]syneditmarks.pp(1048,35) Error: Illegal type conversion: "TSynEditMarkChangeReasons" to "LongInt" offending codeCode: Pascal [Select]procedure TSynEditMarkChangedHandlerList.Add(AHandler: TSynEditMarkChangeEvent; Changes: TSynEditMarkChangeReasons);begin AddBitFilter(TMethod(AHandler), LongInt(Changes));end;
what about:QuoteCode: Pascal [Select] syneditmarks.pp(1048,35) Error: Illegal type conversion: "TSynEditMarkChangeReasons" to "LongInt" That is part of Lazarus.But as I said, it did compile for me (on both 32 and 64 bit). That is unless the unit is not compiled when building the IDE.
Are you compiling with the current table builds i.e 1.6.2/300/302 or 1.6.4/300/302?Did you compile it with another projects or the vclua project itself? Perhaps it could be down to some projects settings in vclua which is a dll/so.
Quote from: vfclists on February 28, 2017, 04:08:34 pmAre you compiling with the current table builds i.e 1.6.2/300/302 or 1.6.4/300/302?Did you compile it with another projects or the vclua project itself? Perhaps it could be down to some projects settings in vclua which is a dll/so.I did a full IDE build. Afaik that builds the entire package.Build with tagged versions 3.0.2, and 1.6.4 (Actually, build with the official 1.6.4 win 64 bit release binaries / the fpc included is build from svn, not taken from the fpc release bin, but that is the case for all past lazarus releases.)I just compiled a new empty project, to which I added the unit. no problems (on 64 bit). And the unit definitely got compiled, if I put an error in there, then it fails, if I remove it again, then it compiles.I only tested windows. and intel. Not sure about other targets.It looks as if for some reason your fpc does not think of LongInt as 32 bit signed integer.Or some setting affects, the sizeof(set)
Until I get to look at the project, check your fpc config forhttp://www.freepascal.org/docs-html/3.0.0/user/userap1.html -CPPACKSET=<y> <y> set allocation: 0, 1 or DEFAULT or NORMAL, 2, 4 and 8 -CPPACKENUM=<y> <y> enum packing: 0, 1, 2 and 4 or DEFAULT or NORMAL Also check in the project options "Additions and Overrides", the "Configure Build Lazarus" Dialog (option menu), and of course the SynEdit Package options (or ensure the latter are not changed from svn).Not tested, but I guess SynEdit will fail with those.