diff --git a/clang/test/Modules/ambiguous-anonymous-enum-lookup.cpp b/clang/test/Modules/ambiguous-anonymous-enum-lookup.cpp new file mode 100644 --- /dev/null +++ b/clang/test/Modules/ambiguous-anonymous-enum-lookup.cpp @@ -0,0 +1,41 @@ +// RUN: rm -rf %t +// RUN: split-file %s %t +// RUN: %clang_cc1 -fsyntax-only -fmodules -fimplicit-module-maps -fmodules-cache-path=%t/modules.cache -I %t/include %t/test.cpp -verify + +//--- include/textual.h +#ifndef TEXTUAL_H +#define TEXTUAL_H + +enum { + kAnonymousEnumValue = 0, +}; + +#endif + +//--- include/empty.h +// empty + +//--- include/initially_hidden.h +#include + +//--- include/module.modulemap +module Piecewise { + module Empty { + header "empty.h" + export * + } + module InitiallyHidden { + header "initially_hidden.h" + export * + } +} + +//--- test.cpp +#include +#include +#include + +// expected-no-diagnostics +int testReferencingAnonymousEnumConstant() { + return kAnonymousEnumValue; +}