https://llvm.org/bugs/show_bug.cgi?id=26249
Bug ID: 26249 Summary: Poor diagnostic when anonymous enum with underlying type is declared in a struct and the underlying type isn't known Product: clang Version: trunk Hardware: PC OS: All Status: NEW Severity: normal Priority: P Component: C++11 Assignee: unassignedclangb...@nondot.org Reporter: nicolaswe...@gmx.de CC: dgre...@apple.com, llvm-bugs@lists.llvm.org Classification: Unclassified This has a nice diagnostic: Nicos-MBP:llvm-build thakis$ cat enum.cc enum : uint32_t { kNone = 0 }; Nicos-MBP:llvm-build thakis$ clang -c enum.cc -std=c++11 enum.cc:1:8: error: unknown type name 'uint32_t' enum : uint32_t { kNone = 0 }; ^ This makes it fairly clear that an stdint.h include is missing. But this doesn't: Nicos-MBP:llvm-build thakis$ cat enum.cc struct bla { enum : uint32_t { kNone = 0 }; }; Nicos-MBP:llvm-build thakis$ clang -c enum.cc -std=c++11 enum.cc:2:8: error: unnamed enumeration must be a definition enum : uint32_t { kNone = 0 }; ^ enum.cc:2:3: warning: declaration does not declare anything [-Wmissing-declarations] enum : uint32_t { kNone = 0 }; ^ -- You are receiving this mail because: You are on the CC list for the bug.
_______________________________________________ llvm-bugs mailing list llvm-bugs@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs