[cfe-dev] clang -emit-llvm infinite recursion

Török Edvin edwintorok at gmail.com
Wed Oct 17 13:53:30 PDT 2007


Hi,

If I run clang on alex.i, with -emit-llvm option I get infinite
recursion, if I run without it,
it gives me errors [because struct initializers are not implemented,
the errors are ok].
I know that struct initializers are not yet implemented (right?), but
then -emit-llvm should give an error if it can't handle something, and
not infinite recursion.

I would have used bugpoint to create a reduced testcase, but I don't
know how to use it with clang, is it possible to use it?

alex.i is available from here (it is a bit large):
http://edwintorok.googlepages.com/alex.i

$ clang -emit-llvm alex.i
alex.i:661:19: warning: declaration does not declare anything
    __extension__ union
                  ^
Segmentation fault

P.S.: I hope you don't misinterpret my mails, I want to help the
development of clang/llvm by submitting the issues I encounter with
it. That doesn't mean I don't like clang/llvm ;)

(gdb) r -emit-llvm alex.i
Starting program: /usr/local/bin/clang -emit-llvm alex.i
warning: no loadable sections found in added symbol-file
system-supplied DSO at 0x7fffd3bfd000
[Thread debugging using libthread_db enabled]
[New Thread 0x2b94d6fade50 (LWP 6242)]
alex.i:661:19: warning: declaration does not declare anything
    __extension__ union
                  ^

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x2b94d6fade50 (LWP 6242)]
0x00000000005ef179 in clang::QualType::getCanonicalType (this=Cannot
access memory at address 0x7fffd3321ff8
) at /home/edwin/llvm-svn/llvm/tools/clang/AST/../include/clang/AST/Type.h:894
...
#163 0x00000000005edc4b in clang::CodeGen::CodeGenTypes::ConvertType
(this=0xac8940, T={ThePtr = 11475776}) at CodeGenTypes.cpp:
80
#164 0x00000000005ee0f2 in clang::CodeGen::CodeGenTypes::ConvertType
(this=0xac8940, T={ThePtr = 11475728}) at CodeGenTypes.cpp:
164
#165 0x00000000005edc4b in clang::CodeGen::CodeGenTypes::ConvertType
(this=0xac8940, T={ThePtr = 11475776}) at CodeGenTypes.cpp:
80
#166 0x00000000005ee0f2 in clang::CodeGen::CodeGenTypes::ConvertType
(this=0xac8940, T={ThePtr = 11475728}) at CodeGenTypes.cpp:
164
...
Quit

--Edwin



More information about the cfe-dev mailing list