[Development] ABI of deprecated supportsThreadedFontRendering()

Olivier Goffart olivier at woboq.com
Thu Oct 10 15:16:58 CEST 2013


On Thursday 10 October 2013 15:04:40 Harri Porten wrote:
> Hi!
> 
> I just learnt about what looks like an ABI regression in Qt 5.2:
> 
> The function QFontDatabase::supportsThreadedFontRendering() got deprecated
> in 5.2 with commit b0b786a2f05e9451a65519ab8904f55c35f51b7d:
> 
>   -    static bool supportsThreadedFontRendering();
>   +#if QT_DEPRECATED_SINCE(5, 2)
>   +    QT_DEPRECATED static inline bool supportsThreadedFontRendering() {
> return true; } +#endif
> 
> At the same time it got inlined. At least with MinGW this made the symbol
> go away. While e.g. MSVC still exports it.
> 
> Now I don't know the exact strategy pursured by QT_DEPRECATED but I assume
> that the function's symbol should not disappear from the 5.2 ABI? If so,
> I wonder whether removing the "inline" will already do the job.

Hi,

Thanks for spotting this issue.

That patch indeed removed a symbol. 

Removing "inline" is not enough. One need to put back the definition in the 
.cpp file.


Please fill a bug report. (or a patch :-))

-- 
Olivier

Woboq - Qt services and support - http://woboq.com - http://code.woboq.org



More information about the Development mailing list