[LLVMbugs] [Bug 23931] New: Clang allows a virtual member function inside a union
bugzilla-daemon at llvm.org
bugzilla-daemon at llvm.org
Tue Jun 23 13:50:28 PDT 2015
https://llvm.org/bugs/show_bug.cgi?id=23931
Bug ID: 23931
Summary: Clang allows a virtual member function inside a union
Product: clang
Version: 3.5
Hardware: PC
OS: Linux
Status: NEW
Severity: normal
Priority: P
Component: C++11
Assignee: unassignedclangbugs at nondot.org
Reporter: andrey.vul at gmail.com
CC: dgregor at apple.com, llvmbugs at cs.uiuc.edu
Classification: Unclassified
>From [class.union]p2:
"A union can have member functions (including constructors and destructors),
but not virtual (10.3) functions."
The source in question compiles when a failure diagnostic is warranted.
### SOURCE: u.cc
union A {
virtual void f();
};
### INVOCATION: clang++ -std=c++11 -c -v u.cc
clang version 3.7.0 (trunk 239822)
Target: powerpc64le-unknown-linux-gnu
Thread model: posix
Found candidate GCC installation: /usr/lib/gcc/powerpc64le-linux-gnu/4.8
Found candidate GCC installation: /usr/lib/gcc/powerpc64le-linux-gnu/4.8.2
Found candidate GCC installation: /usr/lib/gcc/powerpc64le-linux-gnu/4.9
Found candidate GCC installation: /usr/lib/gcc/powerpc64le-linux-gnu/4.9.1
Selected GCC installation: /usr/lib/gcc/powerpc64le-linux-gnu/4.8
Candidate multilib: .;@m64
Selected multilib: .;@m64
"/home/andrey/clang.trunk/bin/clang-3.7" -cc1 -triple
powerpc64le-unknown-linux-gnu -emit-obj -mrelax-all -disable-free
-main-file-name u.cc -mrelocation-model static -mthread-model posix
-mdisable-fp-elim -fmath-errno -masm-verbose -mconstructor-aliases
-fuse-init-array -target-cpu ppc64le -target-abi elfv2 -v -dwarf-column-info
-coverage-file /tmp/u.cc -resource-dir
/home/andrey/clang.trunk/bin/../lib/clang/3.7.0 -internal-isystem
/usr/lib/gcc/powerpc64le-linux-gnu/4.8/../../../../include/c++/4.8
-internal-isystem
/usr/lib/gcc/powerpc64le-linux-gnu/4.8/../../../../include/powerpc64le-linux-gnu/c++/4.8
-internal-isystem
/usr/lib/gcc/powerpc64le-linux-gnu/4.8/../../../../include/powerpc64le-linux-gnu/c++/4.8
-internal-isystem
/usr/lib/gcc/powerpc64le-linux-gnu/4.8/../../../../include/c++/4.8/backward
-internal-isystem /usr/local/include -internal-isystem
/home/andrey/clang.trunk/bin/../lib/clang/3.7.0/include
-internal-externc-isystem /usr/include/powerpc64le-linux-gnu
-internal-externc-isystem /include -internal-externc-isystem /usr/include
-std=c++11 -fdeprecated-macro -fdebug-compilation-dir /tmp -ferror-limit 19
-fmessage-length 0 -mstackrealign -fno-signed-char -fobjc-runtime=gcc
-fcxx-exceptions -fexceptions -fdiagnostics-show-option -o u.o -x c++ u.cc
clang -cc1 version 3.7.0 based upon LLVM 3.7.0svn default target
powerpc64le-unknown-linux-gnu
ignoring nonexistent directory "/include"
ignoring duplicate directory
"/usr/lib/gcc/powerpc64le-linux-gnu/4.8/../../../../include/powerpc64le-linux-gnu/c++/4.8"
#include "..." search starts here:
#include <...> search starts here:
/usr/lib/gcc/powerpc64le-linux-gnu/4.8/../../../../include/c++/4.8
/usr/lib/gcc/powerpc64le-linux-gnu/4.8/../../../../include/powerpc64le-linux-gnu/c++/4.8
/usr/lib/gcc/powerpc64le-linux-gnu/4.8/../../../../include/c++/4.8/backward
/usr/local/include
/home/andrey/clang.trunk/bin/../lib/clang/3.7.0/include
/usr/include/powerpc64le-linux-gnu
/usr/include
End of search list.
--
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/20150623/99ada638/attachment.html>
More information about the llvm-bugs
mailing list