[llvm-bugs] [Bug 46726] New: Clang rejects valid code with "anonymous types declared in an anonymous union are an extension"
via llvm-bugs
llvm-bugs at lists.llvm.org
Wed Jul 15 07:19:32 PDT 2020
https://bugs.llvm.org/show_bug.cgi?id=46726
Bug ID: 46726
Summary: Clang rejects valid code with "anonymous types
declared in an anonymous union are an extension"
Product: clang
Version: trunk
Hardware: PC
OS: Linux
Status: NEW
Severity: normal
Priority: P
Component: Frontend
Assignee: unassignedclangbugs at nondot.org
Reporter: haoxintu at gmail.com
CC: llvm-bugs at lists.llvm.org, neeilans at live.com,
richard-llvm at metafoo.co.uk
Hi, all.
This code, test.cc, is a valid code I guess, but Clang rejects this under
-pedantic-errors.
$cat test.cc
namespace g_namespace {
static union { union {} u; } ;
}
$clang++ -pedantic-errors test.cc
test.cc:2:21: error: anonymous types declared in an anonymous union are an
extension [-Werror,-Wnested-anon-types]
static union { union {} u; } ;
^
1 error generated.
Apparently, "union {} u;" is not an anonymous union.
While in other mainstream compilers, gcc, icc, or msvc, they all accept this
code.
Every Clang version from 4.0 onwards behaves the same (I didn't test anything
older).
Thanks,
Haoxin
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20200715/77c524b7/attachment-0001.html>
More information about the llvm-bugs
mailing list