Re: Re[4]: wxWidgets-3.2.4 non-backwards compatibility with 3.2.2.1

Mike Rossiter <[email protected]>
Newsgroups gmane.comp.lib.wxwindows.general
Message-ID <[email protected]>
The fix works fine. 

Made the change to *defs.h* in the binaries. No need to recompile wxWidgets.
Used set CL=/DwxABI_VERSION=30202 %CL% in my* .bat* file. 
Dan used this in the cmake configuration: -DCMAKE_CXX_FLAGS="/DwxABI_VERSION=30202 
/EHsc /MP /DWIN32" 
Many thanks.

On Sunday 25 February 2024 at 18:24:51 UTC Vadim Zeitlin wrote:

> On Sun, 25 Feb 2024 07:15:35 -0800 (PST) Mike Rossiter wrote:
>
> MR> Dan Dickey has tracked the problem down to the define 
> wxHAS_RVALUE_REF. Not 
> MR> present in wxWidgets-3.2.2.1, I think.
>
> Hello,
>
> Thanks for tracking this down! The important part is this one:
>
> > The import name shipdriver_pi.dll is seeking is "(__declspec(dllimport) 
> public: class wxString & __thiscall wxString::operator=(class wxString 
> &&))".
>
> and it shows that we must be exporting wxString move assignment operator 
> from the 3.2.4 DLL but (of course) not from 3.2.2 one, where it hadn't been 
> defined.
>
> I have to admit that I don't understand why isn't the compiler inlining 
> this (very simple) function, as I'd expect it to, my thinking when 
> backporting move-related changes to wx 3.2 was that they should be 
> ABI-compatible because all the functions should be always inlined, but this 
> clearly isn't the case and so we have to fix it.
>
> My proposed fix is in https://github.com/wxWidgets/wxWidgets/pull/24357 
> and your problem should be fixed if you
>
> 1. Cherry pick the first commit from it (
> https://github.com/wxWidgets/wxWidgets/pull/24357/commits/54abbb3fc0b5563ef381e503f3791a4a60613d6d
> )
> 2. Define wxABI_VERSION=30202 when building your code.
>
> Please let me know if this works for you, TIA!
> VZ
>
> -- 
> TT-Solutions: wxWidgets consultancy and technical support
> https://www.tt-solutions.com/
>

-- 
Please read https://www.wxwidgets.org/support/mlhowto.htm before posting.
--- 
You received this message because you are subscribed to the Google Groups "wx-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].
To view this discussion on the web visit https://groups.google.com/d/msgid/wx-users/44c486e2-664a-4631-a08c-bc8c37ac5c6fn%40googlegroups.com.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.