PixarAnimationStudios/OpenUSD

[BUG]Invalid code in SdfChildrenProxy fails to compile with clang19

Opened this issue · 5 comments

Description of Issue

Trying to build a project using OpenUSD with Clang19 fails with following error:

[...]/lib/linux_x64/usd/include/pxr/usd/sdf/childrenProxy.h:75:21: error: no member named '_Set' in 'SdfChildrenProxy<_View>'
   75 |             _owner->_Set(*_pos, x);
      |             ~~~~~~  ^

Issue discovered when trying to build Blender with Clang 19.

This is related to this change in the compiler (see also the PR).

System Information (OS, Hardware)

Operating System: Linux Debian Testing, x86_64
Other: Clang-19

Package Versions

Version / Commit SHA: USD 24.05

Issue seems to still be present in current main, code looks unchanged (although affected line is now pxr/usd/sdf/childrenProxy.h:75).

I think @dgovil's change #3434 will address this.

Thanks for those links, Bastien. Yeah, this is very timely as I just hit this last week and I believe my changes should resolve it for you. Please let me know if you hit anything else, as I've only tested against our own Apple compiler forks.

@dgovil that was the only issue I had with USD libraries on a full Blender build, so indeed your patch should cover it all. :)
FYI the only other similar issue we have in Blender so far is with OpenVDB.

Ah that's really good to know about OpenVDB.

Filed as internal issue #USD-10484