[LLVMbugs] [Bug 6380] New: clang crashes during compilation of boost::optional

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Mon Feb 22 03:28:50 PST 2010


http://www.llvm.org/bugs/show_bug.cgi?id=6380

           Summary: clang crashes during compilation of boost::optional
           Product: clang
           Version: trunk
          Platform: PC
        OS/Version: Linux
            Status: NEW
          Severity: normal
          Priority: P5
         Component: C++
        AssignedTo: unassignedclangbugs at nondot.org
        ReportedBy: sorokin at rain.ifmo.ru
                CC: dgregor at apple.com
   Estimated Hours: 0.0


clang failed to compile the following line:

optional<int> t;

the error message:

ivan at ivan-desktop:~/d/llvm-build/Debug/bin$ ./clang++ 3.cpp
3.cpp:802:45: error: type 'int' cannot be used prior to '::' because it has no
members
    void destroy_impl ( ) { get_ptr_impl()->T::~T() ; }
                                            ^
3.cpp:795:24: note: in instantiation of member function
'boost::optional_detail::optional_base<int>::destroy_impl'
      requested here
    ~optional_base() { destroy_impl() ; }
                       ^
3.cpp:815:47: note: in instantiation of member function
'boost::optional_detail::optional_base<int>::~optional_base'
      requested here
   boost::optional_detail::optional_base<int> t;
                                              ^
clang: /home/ivan/d/llvm/tools/clang/lib/Sema/TreeTransform.h:1756:
clang::NestedNameSpecifier*
clang::TreeTransform<Derived>::TransformNestedNameSpecifier(clang::NestedNameSpecifier*,
clang::SourceRange, bool, clang::QualType, clang::NamedDecl*) [with Derived =
<unnamed>::TemplateInstantiator]: Assertion `(Prefix || !ObjectType.isNull())
&& "Identifier nested-name-specifier with no prefix or object type"' failed.
0  clang           0x000000000180c892
1  clang           0x000000000180c70b
2  libpthread.so.0 0x00007fa3139d0190
3  libc.so.6       0x00007fa312cd64b5 gsignal + 53
4  libc.so.6       0x00007fa312cd9f50 abort + 384
5  libc.so.6       0x00007fa312ccf481 __assert_fail + 241
6  clang           0x00000000007e2d0d
7  clang           0x00000000007f3b14
8  clang           0x00000000007e2533
9  clang           0x00000000007e9acf
10 clang           0x00000000007e1227
11 clang           0x00000000007e0b1c
12 clang           0x00000000007f9fcb
13 clang           0x00000000007e4819
14 clang           0x00000000007e00e6
15 clang           0x00000000007df4ca
16 clang           0x000000000080ccfc
17 clang           0x000000000080ea5e
18 clang           0x000000000080ce7e
19 clang           0x000000000080ea5e
20 clang           0x00000000006824ae
21 clang           0x0000000000a1e947
22 clang           0x00000000006802bb
23 clang           0x0000000000430dce
24 clang           0x0000000000430a5c
25 clang           0x000000000041b08e
26 clang           0x0000000000408e57
27 clang           0x000000000040db8f main + 259
28 libc.so.6       0x00007fa312cc1abd __libc_start_main + 253
29 clang           0x0000000000407979
Stack dump:
0.    Program arguments: /home/ivan/d/llvm-build/Debug/bin/clang -cc1 -triple
x86_64-unknown-linux-gnu -S -disable-free -main-file-name 3.cpp
-mrelocation-model static -mdisable-fp-elim -mconstructor-aliases
-munwind-tables -target-cpu x86-64 -resource-dir
/home/ivan/d/llvm-build/Debug/lib/clang/1.1 -fmessage-length 117 -fexceptions
-fgnu-runtime -fdiagnostics-show-option -fcolor-diagnostics -o /tmp/cc-6l99GQ.s
-x c++ 3.cpp 
1.    <eof> parser at end of file
2.    3.cpp:795:5: instantiating function definition
'boost::optional_detail::optional_base<int>::~optional_base'
3.    3.cpp:802:10: instantiating function definition
'boost::optional_detail::optional_base<int>::destroy_impl'
clang: error: compiler command failed due to signal 6 (use -v to see
invocation)

-- 
Configure bugmail: http://www.llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching all bug changes.



More information about the llvm-bugs mailing list