]> granicus.if.org Git - clang/commit
[modules] Follow the C++ standard's rule for linkage of enumerators: they have
authorRichard Smith <richard-llvm@metafoo.co.uk>
Fri, 13 Nov 2015 03:52:13 +0000 (03:52 +0000)
committerRichard Smith <richard-llvm@metafoo.co.uk>
Fri, 13 Nov 2015 03:52:13 +0000 (03:52 +0000)
commitd10ae9b34e251034cd8c0d217d926fbdf73b4d57
treebe093b6e1499a85598fafd4d6dae9f3ee582d200
parent426b990c352d28265c43cbd9cd8d7dfd1442e3e9
[modules] Follow the C++ standard's rule for linkage of enumerators: they have
the linkage of the enumeration. For enumerators of unnamed enumerations, extend
the -Wmodules-ambiguous-internal-linkage extension to allow selecting an
arbitrary enumerator (but only if they all have the same value, otherwise it's
ambiguous).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@253010 91177308-0d34-0410-b5e6-96231b3b80d8
include/clang/Sema/Sema.h
lib/AST/Decl.cpp
lib/AST/DeclBase.cpp
lib/Sema/SemaDecl.cpp
lib/Sema/SemaOverload.cpp
test/Index/linkage.c
test/Modules/Inputs/no-linkage/decls.h
test/Modules/no-linkage.cpp
test/Modules/submodules-merge-defs.cpp