Lazarus has Synesthesia lazarus / 10-Designer ---------------------------------------------------------------------- dbannon · 2022-01-03 12:26 OK, this is really, really strange. I'm using lazarus main, initially from last December, now from today. And my object inspector looks like the attached image. Note that properties like Left, PixelsPerInch, Top have a color ?? Sounds like Synesthesia to me, now, Lazarus is intelligent but so intelligent it starts having mental health issues ?  (Yeah, Synesthesia is not a Mental Health thing but ...). I have created a new config, downloaded fresh source, rebooted, its always there, every project I open. Go back to an older Lazarus (eg 2.2.0rc2) and its OK again.  What on earth is happening ? Anyone else seen anything like this ? Linux U20.04, Lazarus-Main Davo ---------------------------------------------------------------------- PascalDragon · 2022-01-03 12:32 What version of FPC are you using? Cause there was a recent change in both FPC and Lazarus that would explain why you're experiencing this. ---------------------------------------------------------------------- dbannon · 2022-01-03 12:40 fpc-3.2.3 from october last year. But I am building Lazarus itself with 3.2.0 (I think, will check). I have not had a new FPC since October anyway. EDIT: No, wrong, I am building Lazarus with that October 3.2.3 too.  I still have an 3.2.0 install, should I try it ? Davo ---------------------------------------------------------------------- PascalDragon · 2022-01-03 12:47 If it should turn out that your Lazarus is build with 3.2.3 and not 3.2.0 then you should update your FPC, cause the change I mentioned was merged around a month ago. Only the latest 3.2.3 commit is considered supported and Lazarus only tests against the version number. If you do indeed build Lazarus with 3.2.0 then we need to dig a bit more... ---------------------------------------------------------------------- dbannon · 2022-01-03 12:55 OK, thanks PD, I have rebuild with FPC3.2.0 and its fine, no problems. So, sounds like you are aware of whats happening, no bug report needed, I'll pull down a newer FPC tomorrow.... Thanks, that was quite interesting ! I'm trying to imagine what could go wrong in the compiler to produce that strange and very specific effect but still build everything else fine ?? Davo ---------------------------------------------------------------------- PascalDragon · 2022-01-03 13:14 It's nothing in the compiler that goes wrong, it's how TColor is declared that is the problem. In a correctly working Lazarus/FPC combination (namely before the change I mentioned and after it) TColor is essentially declared as Code: Pascal  [Select][+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i type  TColor = type LongWord; It's important that it is declared as a unique type as otherwise the type information for TColor and LongWord won't be different. Now, if you have a wrong combination of Lazarus and FPC (in your case: Lazarus after the fix, FPC before the fix) you'll essentially have the following: Code: Pascal  [Select][+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i type  TColor = LongWord; This difference essentially has no problems in normal programs except for a specific one: The IDE registers a property handler for all TColor properties. Now in the second case TypeInfo(TColor) = TypeInfo(LongInt), thus the property handler was registers for all LongInt properties! If the two types are distinct the LongInt properties aren't affected obviously ---------------------------------------------------------------------- dbannon · 2022-01-03 13:38 Wow, thats subtle ! Thanks for explaining. I'll stick with FPC 3.20 for now, at least until the next call for testing. It looks like the changes you mention are not going into fixes 3.2 and main is just a bit scary. Thanks Again ! Davo ---------------------------------------------------------------------- PascalDragon · 2022-01-04 08:02 Quote from: dbannon on January 03, 2022, 02:38:54 pmIt looks like the changes you mention are not going into fixes 3.2 and main is just a bit scary. What do you mean? The changes for this are in both FPC main and 3.2.3 (which will become the next 3.2.4 release) as well as Lazarus main and the upcoming 2.2 release. It's just that you're using a FPC 3.2.3 that can no longer be considered up to date (3.2.3 is a moving target after all). ---------------------------------------------------------------------- dbannon · 2022-01-04 10:08 OK, my bad. I was looking at the tag "3.2.3" (no action for 7 months) but there is a separate version "fixes_3_2", that does have recent, including the TColor, commits, see attached. So, when the talk was about "3.2.3", well, it is a touch confusing. But the one to get is obviously, Fixes_3_2 . Good ! Thanks Davo ---------------------------------------------------------------------- PascalDragon · 2022-01-04 12:22 Quote from: dbannon on January 04, 2022, 11:08:55 amOK, my bad. I was looking at the tag "3.2.3" (no action for 7 months) but there is a separate version "fixes_3_2", that does have recent, including the TColor, commits, see attached. That tag probably got created during the conversion from SVN to Git. Quote from: dbannon on January 04, 2022, 11:08:55 amSo, when the talk was about "3.2.3", well, it is a touch confusing. But the one to get is obviously, Fixes_3_2 . Good ! Just keep in mind that if the lowest number is odd (3.2.3, 3.3.1), it's a development version, thus it's always a moving target.