Overview
Examples
Screenshots
Comparisons
Applications
Download
Documentation
Tutorials
Bazaar
Status & Roadmap
FAQ
Authors & License
Forums
Funding Ultimate++
Search on this site
Search in forums












SourceForge.net Logo
Home » Community » U++ community news and announcements » 2022(?).2 beta
Re: 2022(?).2 beta [message #59302 is a reply to message #59286] Tue, 13 December 2022 03:19 Go to previous messageGo to next message
Lance is currently offline  Lance
Messages: 526
Registered: March 2007
Contributor
mirek wrote on Mon, 12 December 2022 04:44
Klugier wrote on Sun, 11 December 2022 23:08
Hello Mirek and Lance,

I think we should remove AStyle completely from the TheIDE. The true thing is that there is no true maintainer of that code and it was not updated for years. However, I think we should do it when we will have alternative.

As a replacement to AStyle we should go with clang-format executable. It is bundle with clang tool-chain.


Quick check: I do not see it in toolchain we are using in Win32.... Sad


I need to install some package before I can run clang-format on ubuntu linux.
Re: 2022(?).2 beta [message #59303 is a reply to message #59299] Tue, 13 December 2022 03:21 Go to previous messageGo to next message
Lance is currently offline  Lance
Messages: 526
Registered: March 2007
Contributor
mirek wrote on Mon, 12 December 2022 16:18
Lance wrote on Mon, 12 December 2022 00:52
mirek wrote on Sun, 11 December 2022 16:54
Lance wrote on Sun, 11 December 2022 21:13
ok. We don't really need that much flexibility as offered by LibFormat; just formatting code to u++ preferred style is satisfactory. This way code will look more consistent. The AStyle utility that's currently used is very broken Sad


I can remove it completely for 2022.2, but not replace...


Yes, time is too tight. It should be removed as it serves no practical purposes in its current state, other than messing up code.


AStyle removed.


Thanks!
Re: 2022(?).2 beta [message #59304 is a reply to message #59303] Tue, 13 December 2022 10:25 Go to previous messageGo to next message
Tom1
Messages: 1212
Registered: March 2007
Senior Contributor
Hi,

It seems StaticText has changed. Where is:
StaticText::GetFont();

Or how can I get this done now?

Best regards,

Tom
Re: 2022(?).2 beta [message #59305 is a reply to message #59304] Tue, 13 December 2022 10:45 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 13975
Registered: November 2005
Ultimate Member
Tom1 wrote on Tue, 13 December 2022 10:25
Hi,

It seems StaticText has changed. Where is:
StaticText::GetFont();

Or how can I get this done now?

Best regards,

Tom


Sorry, that was gone June during the "sizeof(widget)" campaign. I have now put GetXXX methods to StaticText.

Please check!

Mirek
Re: 2022(?).2 beta [message #59306 is a reply to message #59305] Tue, 13 December 2022 10:56 Go to previous messageGo to next message
Tom1
Messages: 1212
Registered: March 2007
Senior Contributor
Mirek,

Thanks, it works now. (Also thanks for fixing the warnings with MSBTx64.)

Just noticed that the left stripe in code editor no longer shows errors, just recently edited code. (I'm on Windows if that has any significance...)

Best regards,

Tom
Re: 2022(?).2 beta [message #59307 is a reply to message #59306] Tue, 13 December 2022 11:08 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 13975
Registered: November 2005
Ultimate Member
Tom1 wrote on Tue, 13 December 2022 10:56
Mirek,

Thanks, it works now. (Also thanks for fixing the warnings with MSBTx64.)

Just noticed that the left stripe in code editor no longer shows errors, just recently edited code. (I'm on Windows if that has any significance...)

Best regards,

Tom


Yes, that is by design. Errors are now shown in the text, while you are typing and also in scrollbar.
Re: 2022(?).2 beta [message #59308 is a reply to message #59307] Tue, 13 December 2022 11:42 Go to previous messageGo to next message
Tom1
Messages: 1212
Registered: March 2007
Senior Contributor
OK, I see. I turned back on the 'Show errors in the current file...' option. It seems less intrusive now. Maybe I will learn to like it.

Unfortunately, it seems to erroneously flag my structure packing pragma:
#pragma pack(push,1)

It complains about "Unterminated #pragma pack(push,...) at end of file". It seems to ignore:
#pragma pack(pop)

following the packed structure(s).

Best regards,

Tom
Re: 2022(?).2 beta [message #59309 is a reply to message #59308] Tue, 13 December 2022 11:57 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 13975
Registered: November 2005
Ultimate Member
Tom1 wrote on Tue, 13 December 2022 11:42
OK, I see. I turned back on the 'Show errors in the current file...' option. It seems less intrusive now. Maybe I will learn to like it.

Unfortunately, it seems to erroneously flag my structure packing pragma:
#pragma pack(push,1)

It complains about "Unterminated #pragma pack(push,...) at end of file". It seems to ignore:
#pragma pack(pop)

following the packed structure(s).

Best regards,

Tom


libclang is not perfect... I guess we just need to take what it gives (which IMO is a lot) and ignore quirks...

Mirek
Re: 2022(?).2 beta [message #59310 is a reply to message #59308] Tue, 13 December 2022 11:58 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 13975
Registered: November 2005
Ultimate Member
Tom1 wrote on Tue, 13 December 2022 11:42
OK, I see. I turned back on the 'Show errors in the current file...' option. It seems less intrusive now. Maybe I will learn to like it.

Unfortunately, it seems to erroneously flag my structure packing pragma:
#pragma pack(push,1)

It complains about "Unterminated #pragma pack(push,...) at end of file". It seems to ignore:
#pragma pack(pop)

following the packed structure(s).

Best regards,

Tom


That said, maybe if it is a warning, you could find some commandline option to switch it off? You can specify that in Setup/Assist commandline... (and if you tell me it, I will add it as default).
Re: 2022(?).2 beta [message #59312 is a reply to message #59308] Tue, 13 December 2022 13:21 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 13975
Registered: November 2005
Ultimate Member
Tom1 wrote on Tue, 13 December 2022 11:42
OK, I see. I turned back on the 'Show errors in the current file...' option. It seems less intrusive now. Maybe I will learn to like it.

Unfortunately, it seems to erroneously flag my structure packing pragma:
#pragma pack(push,1)

It complains about "Unterminated #pragma pack(push,...) at end of file". It seems to ignore:
#pragma pack(pop)

following the packed structure(s).

Best regards,

Tom


-Wno-pragma-pack seems to do the job. It is now default (but you will need to add it to Assist setup. Note that unless you update theide (one more bug fixed), it needs restart).

Thanks for testing. At this time very helpful. I still want to release 2022.2 (not 2023.1) Smile
Re: 2022(?).2 beta [message #59313 is a reply to message #59312] Tue, 13 December 2022 13:30 Go to previous messageGo to next message
Tom1
Messages: 1212
Registered: March 2007
Senior Contributor
mirek wrote on Tue, 13 December 2022 14:21
Tom1 wrote on Tue, 13 December 2022 11:42
OK, I see. I turned back on the 'Show errors in the current file...' option. It seems less intrusive now. Maybe I will learn to like it.

Unfortunately, it seems to erroneously flag my structure packing pragma:
#pragma pack(push,1)

It complains about "Unterminated #pragma pack(push,...) at end of file". It seems to ignore:
#pragma pack(pop)

following the packed structure(s).

Best regards,

Tom


-Wno-pragma-pack seems to do the job. It is now default (but you will need to add it to Assist setup. Note that unless you update theide (one more bug fixed), it needs restart).

Thanks for testing. At this time very helpful. I still want to release 2022.2 (not 2023.1) Smile

Thanks Mirek,

It works now! (I could not do it here with -Wno-pragma-pack, but your fix worked.)

Please note though that 2022.2 has been out for quite some time, so this must be 2022.3. (The U++ front page says 2022.2 (rev. 16270)).

BR, Tom
Re: 2022(?).2 beta [message #59314 is a reply to message #59313] Tue, 13 December 2022 14:40 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 13975
Registered: November 2005
Ultimate Member
Tom1 wrote on Tue, 13 December 2022 13:30

Please note though that 2022.2 has been out for quite some time, so this must be 2022.3. (The U++ front page says 2022.2 (rev. 16270)).

BR, Tom


Good point, thanks! Smile

Mirek
Re: 2022(?).2 beta [message #59315 is a reply to message #59298] Tue, 13 December 2022 17:33 Go to previous messageGo to next message
zsolt is currently offline  zsolt
Messages: 696
Registered: December 2005
Location: Budapest, Hungary
Contributor
mirek wrote on Mon, 12 December 2022 22:17
zsolt wrote on Mon, 12 December 2022 12:42
I have found an interesting bug.
The new assist complained about a lot of weird bugs in my code.
I'm using some external libraries, so I created a new .bm file and used it for compiling.
But it seemed to me, that Assist isn't working based on that .bm file, so I removed all the other .bm files, and renamed my custom one to CLANG.bm.
Everything seems to be working well now.


I am now adding "real" build method's include paths after CLANG's ones. Hopefully this might fix this issue...


Seems to be working now, thanks.
Re: 2022(?).2 beta [message #59316 is a reply to message #59315] Tue, 13 December 2022 17:39 Go to previous messageGo to next message
zsolt is currently offline  zsolt
Messages: 696
Registered: December 2005
Location: Budapest, Hungary
Contributor
An other bug:
Assist goes mad on .icpp files. Try opening Painter/PainterInit.icpp
It is just trying to parse it without success endlessly:
C:\Download\Upp\upp\uppsrc\Painter\PainterInit.icpp parsed in 15 ms
C:\Download\Upp\upp\uppsrc\Painter\PainterInit.icpp parser output processed in 0 ms
Failed commandline: C:\Download\Upp\upp\uppsrc\Painter\PainterInit.icpp -DflagDEBUG -DflagDEBUG_FULL -DflagMAIN -DflagCLANG  -std=c++14 -xc++ -Wno-logical-op-parentheses 
C:\Download\Upp\upp\uppsrc\Painter\PainterInit.icpp parsed in 0 ms
C:\Download\Upp\upp\uppsrc\Painter\PainterInit.icpp parser output processed in 0 ms
Failed commandline: C:\Download\Upp\upp\uppsrc\Painter\PainterInit.icpp -DflagDEBUG -DflagDEBUG_FULL -DflagMAIN -DflagCLANG  -std=c++14 -xc++ -Wno-logical-op-parentheses 
Re: 2022(?).2 beta [message #59317 is a reply to message #59316] Tue, 13 December 2022 17:49 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 13975
Registered: November 2005
Ultimate Member
zsolt wrote on Tue, 13 December 2022 17:39
An other bug:
Assist goes mad on .icpp files. Try opening Painter/PainterInit.icpp
It is just trying to parse it without success endlessly:
C:\Download\Upp\upp\uppsrc\Painter\PainterInit.icpp parsed in 15 ms
C:\Download\Upp\upp\uppsrc\Painter\PainterInit.icpp parser output processed in 0 ms
Failed commandline: C:\Download\Upp\upp\uppsrc\Painter\PainterInit.icpp -DflagDEBUG -DflagDEBUG_FULL -DflagMAIN -DflagCLANG  -std=c++14 -xc++ -Wno-logical-op-parentheses 
C:\Download\Upp\upp\uppsrc\Painter\PainterInit.icpp parsed in 0 ms
C:\Download\Upp\upp\uppsrc\Painter\PainterInit.icpp parser output processed in 0 ms
Failed commandline: C:\Download\Upp\upp\uppsrc\Painter\PainterInit.icpp -DflagDEBUG -DflagDEBUG_FULL -DflagMAIN -DflagCLANG  -std=c++14 -xc++ -Wno-logical-op-parentheses 


Accidentally, I have noticed and file into internal TODO already this morning. I might try to fix this later tonight, but I am OK with releasing with this problem.
Re: 2022(?).2 beta [message #59318 is a reply to message #59317] Tue, 13 December 2022 18:17 Go to previous messageGo to next message
zsolt is currently offline  zsolt
Messages: 696
Registered: December 2005
Location: Budapest, Hungary
Contributor
Thanks.
Sometimes Assist ended up in parsing them endlessly, so I started to rename .icpp files to .cpp.
As I can see, they are not needed anymore. I used them for registering translations and unit tests, but now they are working in .cpp files as well.
Re: 2022(?).2 beta [message #59319 is a reply to message #59318] Tue, 13 December 2022 18:32 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 13975
Registered: November 2005
Ultimate Member
zsolt wrote on Tue, 13 December 2022 18:17
Thanks.
Sometimes Assist ended up in parsing them endlessly, so I started to rename .icpp files to .cpp.
As I can see, they are not needed anymore. I used them for registering translations and unit tests, but now they are working in .cpp files as well.


Careful here:

The purpose of .icpp was that it never went into .lib file during the build process, always are linked as .obj. This has the effect that it is always linked; files in .lib can be ignored if there are no references to its contents from other files.

In debug, theide builder does not bother creating .libs. So what you do can work in debug and fail in release.

Current U++ really dropped .icpp use (but still supports them when building), replaced with INITIALIZE and INITIALIZER macros (which basically create the reference to initializer by including the file). It is not ideal either, but makes U++ tiny bit more standard.

Re: 2022(?).2 beta [message #59320 is a reply to message #59319] Tue, 13 December 2022 19:01 Go to previous messageGo to next message
zsolt is currently offline  zsolt
Messages: 696
Registered: December 2005
Location: Budapest, Hungary
Contributor
mirek wrote on Tue, 13 December 2022 18:32
zsolt wrote on Tue, 13 December 2022 18:17
Thanks.
Sometimes Assist ended up in parsing them endlessly, so I started to rename .icpp files to .cpp.
As I can see, they are not needed anymore. I used them for registering translations and unit tests, but now they are working in .cpp files as well.


Careful here:

The purpose of .icpp was that it never went into .lib file during the build process, always are linked as .obj. This has the effect that it is always linked; files in .lib can be ignored if there are no references to its contents from other files.

In debug, theide builder does not bother creating .libs. So what you do can work in debug and fail in release.

Current U++ really dropped .icpp use (but still supports them when building), replaced with INITIALIZE and INITIALIZER macros (which basically create the reference to initializer by including the file). It is not ideal either, but makes U++ tiny bit more standard.



Thanks, I have just checked these macros, but I think, it would be a nightmare to use them for every unit tests I created.
But I turned on Blitz for compiling release builds and it seems to me, that it doesn't generate .libs. Is that true?
Re: 2022(?).2 beta [message #59321 is a reply to message #59320] Tue, 13 December 2022 19:12 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 13975
Registered: November 2005
Ultimate Member
zsolt wrote on Tue, 13 December 2022 19:01
mirek wrote on Tue, 13 December 2022 18:32
zsolt wrote on Tue, 13 December 2022 18:17
Thanks.
Sometimes Assist ended up in parsing them endlessly, so I started to rename .icpp files to .cpp.
As I can see, they are not needed anymore. I used them for registering translations and unit tests, but now they are working in .cpp files as well.


Careful here:

The purpose of .icpp was that it never went into .lib file during the build process, always are linked as .obj. This has the effect that it is always linked; files in .lib can be ignored if there are no references to its contents from other files.

In debug, theide builder does not bother creating .libs. So what you do can work in debug and fail in release.

Current U++ really dropped .icpp use (but still supports them when building), replaced with INITIALIZE and INITIALIZER macros (which basically create the reference to initializer by including the file). It is not ideal either, but makes U++ tiny bit more standard.



Thanks, I have just checked these macros, but I think, it would be a nightmare to use them for every unit tests I created.
But I turned on Blitz for compiling release builds and it seems to me, that it doesn't generate .libs. Is that true?


Yes. But I cannot guarantee it will not change in the future.
Re: 2022(?).2 beta [message #59322 is a reply to message #59321] Tue, 13 December 2022 20:01 Go to previous messageGo to previous message
zsolt is currently offline  zsolt
Messages: 696
Registered: December 2005
Location: Budapest, Hungary
Contributor
OK, I hope, I will notice that Smile
Previous Topic: New Assist features
Next Topic: 2022.3rc3
Goto Forum:
  


Current Time: Thu Apr 18 05:39:17 CEST 2024

Total time taken to generate the page: 0.02080 seconds