-Wctad-maybe-unsupported error with "use_custom_libcxx=false" on Ventura 13.3.1

9 views
Skip to first unread message

Chris Dalton

unread,
Feb 14, 2024, 11:32:23 PMFeb 14
to Dawn Graphics
With the gn args "is_debug=false dawn_complete_static_libs=true use_custom_libcxx=false dawn_use_swiftshader=false angle_enable_swiftshader=false", I get the following warning, which is treated as an error:

../../src/dawn/native/Device.cpp:675:5: error: 'lock_guard' may not intend to support class template argument deduction [-Werror,-Wctad-maybe-unsupported]

  675 |     std::lock_guard lock(mLoggingMutex);


Is there another GN arg I could use to suppress this warning? Adding -Wno-ctad-maybe-unsupported to "cflags" didn't seem to have an effect.

Ben Clayton

unread,
Feb 15, 2024, 6:00:36 AMFeb 15
to Chris Dalton, Dawn Graphics
I've created https://dawn-review.googlesource.com/c/dawn/+/175240 to (hopefully) fix these warnings.

--
You received this message because you are subscribed to the Google Groups "Dawn Graphics" group.
To unsubscribe from this group and stop receiving emails from it, send an email to dawn-graphic...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/dawn-graphics/c7842726-a8a1-4c65-b202-99cd9b12c010n%40googlegroups.com.

Ben Clayton

unread,
Feb 15, 2024, 6:01:40 AMFeb 15
to Chris Dalton, Dawn Graphics
Chris - please can you try the change locally and confirm there are no other errors?

Chris Dalton

unread,
Feb 16, 2024, 3:43:34 PMFeb 16
to Ben Clayton, Dawn Graphics
Thank you Ben!

This looks improved, but I'm still seeing some errors. One more about -Wctad-maybe-unsupported:

../../src/dawn/native/Device.cpp:1649:5: error: 'shared_lock' may not intend to support class template argument deduction [-Werror,-Wctad-maybe-unsupported]
 1649 |     std::shared_lock lock(mLoggingMutex);

And another about mismatched visibility:

$ ../../third_party/llvm-build/Release+Asserts/bin/clang++ -MMD -MF obj/third_party/partition_alloc/src/partition_alloc/allocator_shim/allocator_shim.o.d -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D_FORTIFY_SOURCE=2 -D_LIBCPP_HARDENING_MODE=_LIBCPP_HARDENING_MODE_NONE -DCR_XCODE_VERSION=1431 -DCR_CLANG_REVISION=\"llvmorg-18-init-17730-gf670112a-1\" -DNDEBUG -DNVALGRIND -DDYNAMIC_ANNOTATIONS_ENABLED=0 -DIS_ALLOCATOR_SHIM_IMPL -I../.. -Igen -I../../third_party/partition_alloc/src -Igen/third_party/partition_alloc/src -Wall -Wextra -Wimplicit-fallthrough -Wextra-semi -Wunreachable-code-aggressive -Wthread-safety -Wunguarded-availability -Wno-missing-field-initializers -Wno-unused-parameter -Wno-psabi -Wloop-analysis -Wno-unneeded-internal-declaration -Wenum-compare-conditional -Wno-ignored-pragma-optimize -Wno-deprecated-builtins -Wno-bitfield-constant-conversion -Wno-deprecated-this-capture -Wno-invalid-offsetof -Wno-vla-extension -Wno-thread-safety-reference-return -Wshadow -Werror -fno-delete-null-pointer-checks -fno-ident -fno-strict-aliasing -fstack-protector -fno-define-target-os-macros -fcolor-diagnostics -fmerge-all-constants -fcrash-diagnostics-dir=../../tools/clang/crashreports -mllvm -instcombine-lower-dbg-declare=0 -mllvm -split-threshold-for-reg-with-hint=0 -ffp-contract=off --target=arm64-apple-macos -mno-outline -Wno-builtin-macro-redefined -D__DATE__= -D__TIME__= -D__TIMESTAMP__= -ffile-compilation-dir=. -no-canonical-prefixes -ftrivial-auto-var-init=pattern -fno-omit-frame-pointer -g2 -gdwarf-aranges -Xclang -debug-info-kind=limited -isysroot ../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk -mmacos-version-min=10.15 -fvisibility=hidden -Wheader-hygiene -Wstring-conversion -Wtautological-overlap-compare -Wexit-time-destructors -O3 -fno-math-errno -fvisibility-global-new-delete-hidden -Wno-c++11-narrowing-const-reference -std=c++20 -Wno-trigraphs -fno-exceptions -fno-rtti -fvisibility-inlines-hidden -c ../../third_party/partition_alloc/src/partition_alloc/shim/allocator_shim.cc -o obj/third_party/partition_alloc/src/partition_alloc/allocator_shim/allocator_shim.o

In file included from ../../third_party/partition_alloc/src/partition_alloc/shim/allocator_shim.cc:5:

In file included from ../../third_party/partition_alloc/src/partition_alloc/shim/allocator_shim.h:16:

In file included from ../../third_party/partition_alloc/src/partition_alloc/partition_alloc_base/types/strong_alias.h:8:

In file included from ../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/functional:510:

In file included from ../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/__functional/bind.h:17:

In file included from ../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/tuple:225:

../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/new:191:31: error: visibility does not match previous declaration

  191 | _LIBCPP_NODISCARD_AFTER_CXX17 _LIBCPP_OVERRIDABLE_FUNC_VIS void* operator new(std::size_t __sz) _THROW_BAD_ALLOC;

      |                               ^

../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/__config:610:44: note: expanded from macro '_LIBCPP_OVERRIDABLE_FUNC_VIS'

  610 | #      define _LIBCPP_OVERRIDABLE_FUNC_VIS _LIBCPP_VISIBILITY("default")

      |                                            ^

../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/__config:594:54: note: expanded from macro '_LIBCPP_VISIBILITY'

  594 | #      define _LIBCPP_VISIBILITY(vis) __attribute__((__visibility__(vis)))

      |                                                      ^

note: previous attribute is here

In file included from ../../third_party/partition_alloc/src/partition_alloc/shim/allocator_shim.cc:5:

In file included from ../../third_party/partition_alloc/src/partition_alloc/shim/allocator_shim.h:16:

In file included from ../../third_party/partition_alloc/src/partition_alloc/partition_alloc_base/types/strong_alias.h:8:

In file included from ../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/functional:510:

In file included from ../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/__functional/bind.h:17:

In file included from ../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/tuple:225:

../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/new:193:1: error: visibility does not match previous declaration

  193 | _LIBCPP_OVERRIDABLE_FUNC_VIS void  operator delete(void* __p) _NOEXCEPT;

      | ^

../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/__config:610:44: note: expanded from macro '_LIBCPP_OVERRIDABLE_FUNC_VIS'

  610 | #      define _LIBCPP_OVERRIDABLE_FUNC_VIS _LIBCPP_VISIBILITY("default")

      |                                            ^

../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/__config:594:54: note: expanded from macro '_LIBCPP_VISIBILITY'

  594 | #      define _LIBCPP_VISIBILITY(vis) __attribute__((__visibility__(vis)))

      |                                                      ^

note: previous attribute is here

In file included from ../../third_party/partition_alloc/src/partition_alloc/shim/allocator_shim.cc:5:

In file included from ../../third_party/partition_alloc/src/partition_alloc/shim/allocator_shim.h:16:

In file included from ../../third_party/partition_alloc/src/partition_alloc/partition_alloc_base/types/strong_alias.h:8:

In file included from ../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/functional:510:

In file included from ../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/__functional/bind.h:17:

In file included from ../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/tuple:225:

../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/new:199:31: error: visibility does not match previous declaration

  199 | _LIBCPP_NODISCARD_AFTER_CXX17 _LIBCPP_OVERRIDABLE_FUNC_VIS void* operator new[](std::size_t __sz) _THROW_BAD_ALLOC;

      |                               ^

../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/__config:610:44: note: expanded from macro '_LIBCPP_OVERRIDABLE_FUNC_VIS'

  610 | #      define _LIBCPP_OVERRIDABLE_FUNC_VIS _LIBCPP_VISIBILITY("default")

      |                                            ^

../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/__config:594:54: note: expanded from macro '_LIBCPP_VISIBILITY'

  594 | #      define _LIBCPP_VISIBILITY(vis) __attribute__((__visibility__(vis)))

      |                                                      ^

note: previous attribute is here

In file included from ../../third_party/partition_alloc/src/partition_alloc/shim/allocator_shim.cc:5:

In file included from ../../third_party/partition_alloc/src/partition_alloc/shim/allocator_shim.h:16:

In file included from ../../third_party/partition_alloc/src/partition_alloc/partition_alloc_base/types/strong_alias.h:8:

In file included from ../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/functional:510:

In file included from ../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/__functional/bind.h:17:

In file included from ../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/tuple:225:

../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/new:201:1: error: visibility does not match previous declaration

  201 | _LIBCPP_OVERRIDABLE_FUNC_VIS void  operator delete[](void* __p) _NOEXCEPT;

      | ^

../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/__config:610:44: note: expanded from macro '_LIBCPP_OVERRIDABLE_FUNC_VIS'

  610 | #      define _LIBCPP_OVERRIDABLE_FUNC_VIS _LIBCPP_VISIBILITY("default")

      |                                            ^

../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/__config:594:54: note: expanded from macro '_LIBCPP_VISIBILITY'

  594 | #      define _LIBCPP_VISIBILITY(vis) __attribute__((__visibility__(vis)))

      |                                                      ^

note: previous attribute is here

In file included from ../../third_party/partition_alloc/src/partition_alloc/shim/allocator_shim.cc:5:

In file included from ../../third_party/partition_alloc/src/partition_alloc/shim/allocator_shim.h:16:

In file included from ../../third_party/partition_alloc/src/partition_alloc/partition_alloc_base/types/strong_alias.h:8:

In file included from ../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/functional:510:

In file included from ../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/__functional/bind.h:17:

In file included from ../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/tuple:225:

../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/new:208:31: error: visibility does not match previous declaration

  208 | _LIBCPP_NODISCARD_AFTER_CXX17 _LIBCPP_OVERRIDABLE_FUNC_VIS void* operator new(std::size_t __sz, std::align_val_t) _THROW_BAD_ALLOC;

      |                               ^

../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/__config:610:44: note: expanded from macro '_LIBCPP_OVERRIDABLE_FUNC_VIS'

  610 | #      define _LIBCPP_OVERRIDABLE_FUNC_VIS _LIBCPP_VISIBILITY("default")

      |                                            ^

../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/__config:594:54: note: expanded from macro '_LIBCPP_VISIBILITY'

  594 | #      define _LIBCPP_VISIBILITY(vis) __attribute__((__visibility__(vis)))

      |                                                      ^

note: previous attribute is here

In file included from ../../third_party/partition_alloc/src/partition_alloc/shim/allocator_shim.cc:5:

In file included from ../../third_party/partition_alloc/src/partition_alloc/shim/allocator_shim.h:16:

In file included from ../../third_party/partition_alloc/src/partition_alloc/partition_alloc_base/types/strong_alias.h:8:

In file included from ../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/functional:510:

In file included from ../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/__functional/bind.h:17:

In file included from ../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/tuple:225:

../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/new:210:1: error: visibility does not match previous declaration

  210 | _LIBCPP_OVERRIDABLE_FUNC_VIS void  operator delete(void* __p, std::align_val_t) _NOEXCEPT;

      | ^

../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/__config:610:44: note: expanded from macro '_LIBCPP_OVERRIDABLE_FUNC_VIS'

  610 | #      define _LIBCPP_OVERRIDABLE_FUNC_VIS _LIBCPP_VISIBILITY("default")

      |                                            ^

../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/__config:594:54: note: expanded from macro '_LIBCPP_VISIBILITY'

  594 | #      define _LIBCPP_VISIBILITY(vis) __attribute__((__visibility__(vis)))

      |                                                      ^

note: previous attribute is here

In file included from ../../third_party/partition_alloc/src/partition_alloc/shim/allocator_shim.cc:5:

In file included from ../../third_party/partition_alloc/src/partition_alloc/shim/allocator_shim.h:16:

In file included from ../../third_party/partition_alloc/src/partition_alloc/partition_alloc_base/types/strong_alias.h:8:

In file included from ../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/functional:510:

In file included from ../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/__functional/bind.h:17:

In file included from ../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/tuple:225:

../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/new:216:31: error: visibility does not match previous declaration

  216 | _LIBCPP_NODISCARD_AFTER_CXX17 _LIBCPP_OVERRIDABLE_FUNC_VIS void* operator new[](std::size_t __sz, std::align_val_t) _THROW_BAD_ALLOC;

      |                               ^

../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/__config:610:44: note: expanded from macro '_LIBCPP_OVERRIDABLE_FUNC_VIS'

  610 | #      define _LIBCPP_OVERRIDABLE_FUNC_VIS _LIBCPP_VISIBILITY("default")

      |                                            ^

../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/__config:594:54: note: expanded from macro '_LIBCPP_VISIBILITY'

  594 | #      define _LIBCPP_VISIBILITY(vis) __attribute__((__visibility__(vis)))

      |                                                      ^

note: previous attribute is here

In file included from ../../third_party/partition_alloc/src/partition_alloc/shim/allocator_shim.cc:5:

In file included from ../../third_party/partition_alloc/src/partition_alloc/shim/allocator_shim.h:16:

In file included from ../../third_party/partition_alloc/src/partition_alloc/partition_alloc_base/types/strong_alias.h:8:

In file included from ../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/functional:510:

In file included from ../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/__functional/bind.h:17:

In file included from ../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/tuple:225:

../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/new:218:1: error: visibility does not match previous declaration

  218 | _LIBCPP_OVERRIDABLE_FUNC_VIS void  operator delete[](void* __p, std::align_val_t) _NOEXCEPT;

      | ^

../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/__config:610:44: note: expanded from macro '_LIBCPP_OVERRIDABLE_FUNC_VIS'

  610 | #      define _LIBCPP_OVERRIDABLE_FUNC_VIS _LIBCPP_VISIBILITY("default")

      |                                            ^

../../../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/__config:594:54: note: expanded from macro '_LIBCPP_VISIBILITY'

  594 | #      define _LIBCPP_VISIBILITY(vis) __attribute__((__visibility__(vis)))

      |                                                      ^

note: previous attribute is here

8 errors generated.

Austin Eng

unread,
Feb 21, 2024, 12:45:39 PMFeb 21
to Chris Dalton, Arthur Sonzogni, Ben Clayton, Dawn Graphics
https://dawn-review.googlesource.com/c/dawn/+/175347 should have fixed the other class template argument deduction warning.

+Arthur Sonzogni about the visibility errors in partition_alloc.

Reply all
Reply to author
Forward
0 new messages