[LLVMbugs] [Bug 6801] New: sample clang plugin crashes

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Tue Apr 6 17:02:18 PDT 2010


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

           Summary: sample clang plugin crashes
           Product: clang
           Version: trunk
          Platform: All
        OS/Version: Linux
            Status: NEW
          Severity: normal
          Priority: P
         Component: -New Bugs
        AssignedTo: unassignedclangbugs at nondot.org
        ReportedBy: zhanyong.wan at gmail.com
                CC: llvmbugs at cs.uiuc.edu


Build the PrintFunctionNames sample plugin in
tools/clang/examples/PrintFunctionNames/, then run:

$ clang -cc1 -load path/to/PrintFunctionNames.so -plugin print-fns t.cc

where t.cc has content:

int f() {
  return 1;
}

and clang will crash:

Two passes with the same argument (-preverify) attempted to be registered!
UNREACHABLE executed at include/llvm/Support/PassNameParser.h:74!
0  clang                  0x00000000012975ce
1  clang                  0x00000000012974b5
2  libpthread.so.0        0x00007f9a507e3580
3  libc.so.6              0x00007f9a4ff98da5 gsignal + 53
4  libc.so.6              0x00007f9a4ff9a750 abort + 272
5  clang                  0x00000000012bd928
llvm::FoldingSetNodeID::AddPointer(void const*) + 0
6  clang                  0x0000000001213bb1
llvm::PassNameParser::passRegistered(llvm::PassInfo const*) + 229
7  clang                  0x0000000001211c36 llvm::PassInfo::registerPass() +
140
8  clang                  0x0000000000aecde3 llvm::PassInfo::PassInfo(char
const*, char const*, long, llvm::Pass* (*)(), bool, bool) + 145
9  PrintFunctionNames.so  0x00007f9a4ef3b965
10 PrintFunctionNames.so  0x00007f9a4ef3c99a
11 PrintFunctionNames.so  0x00007f9a4ef3cb19
12 PrintFunctionNames.so  0x00007f9a4ef9ae36
Stack dump:
0.    Program arguments: clang -cc1 -load path/to/PrintFunctionNames.so -plugin
print-fns t.cc 
Aborted

-- 
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.



More information about the llvm-bugs mailing list