System Information
- Ogre Version: 2.3.3
- Operating System / Platform: OSX via Conda
- RenderSystem: -
- GPU: -
Detailled description
The gz-rendering compilation seems to be broken on Conda using ogre-2.3.3 for Mac, see conda-forge/gz-rendering-feedstock#42 (comment).
I think that the problem is a change in the libc++ , concretely in 19 version;
The base template for std::char_traits has been removed in LLVM 19. If you are using std::char_traits with types other than char, wchar_t, char8_t, char16_t, char32_t or a custom character type for which you specialized std::char_traits, your code will stop working. The Standard does not mandate that a base template is provided, and such a base template is bound to be incorrect for some types, which could currently cause unexpected behavior while going undetected.
Line 235 in OgreUTFString seems to be triggering the error by a template expansion over dstring that uses a uint32.
Probably the right move would be to transform dstring into std::u16string or something that uses char16_t instead of uint16. But I'm unsure about the implications in maintaining the API/ABI compatibility and if there is a better alternative.
Thanks!
System Information
Detailled description
The gz-rendering compilation seems to be broken on Conda using ogre-2.3.3 for Mac, see conda-forge/gz-rendering-feedstock#42 (comment).
I think that the problem is a change in the libc++ , concretely in 19 version;
Line 235 in OgreUTFString seems to be triggering the error by a template expansion over dstring that uses a uint32.
Probably the right move would be to transform dstring into
std::u16stringor something that useschar16_tinstead ofuint16. But I'm unsure about the implications in maintaining the API/ABI compatibility and if there is a better alternative.Thanks!