After updating clang recently, I'm seeing these warnings:
/Users/jgroff/src/s/swift/stdlib/public/stubs/GlobalObjects.cpp:40:39: warning:
declaration requires a global constructor [-Wglobal-constructors]
swift::_SwiftEmptyArrayStorage swift::_swiftEmptyArrayStorage = {
^ ~
/Users/jgroff/src/s/swift/stdlib/public/stubs/GlobalObjects.cpp:55:44: warning:
declaration requires a global constructor [-Wglobal-constructors]
swift::_SwiftEmptyDictionaryStorage swift::_swiftEmptyDictionaryStorage = {
^ ~
/Users/jgroff/src/s/swift/stdlib/public/stubs/GlobalObjects.cpp:83:37: warning:
declaration requires a global constructor [-Wglobal-constructors]
swift::_SwiftEmptySetStorage swift::_swiftEmptySetStorage = {
^ ~
Looking at the definitions of those objects, it isn't clear to me why they
would require global constructors. The types are POD, and their initializers
only contain pointers to other globals, which ought to be resolvable by the
linker. I also didn't see any recent change to the runtime that seems like it
would trigger a change here. Is this a clang bug?
-Joe
_______________________________________________
swift-dev mailing list
[email protected]
https://lists.swift.org/mailman/listinfo/swift-dev