-
Notifications
You must be signed in to change notification settings - Fork 15.3k
Open
Labels
clang:frontendLanguage frontend issues, e.g. anything involving "Sema"Language frontend issues, e.g. anything involving "Sema"crash-on-invalidgenerated by fuzzer
Description
Hi, while testing clang by the fuzzing driver clang-fuzzer, it found a crashing case:
Version: 531fd45
Flags:
mkdir build
cd build
cmake -GNinja -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_PROJECTS="lld;clang;compiler-rt" ../llvm -DLLVM_ENABLE_ASSERTIONS=ON -DLLVM_BUILD_RUNTIME=Off -DLLVM_BUILD_INSTRUMENTED_COVERAGE=On -DCLANG_ENABLE_PROTO_FUZZER=ON
ninja clang-fuzzer
PoC:
template<typename...Ts>oid Pac00nsideLocal0lass(){[]{f class L0{Ts t};L0 l}}template oid Pac00nsideLocal0lass<>(;Reproduction:
./bin/clang-fuzzer ./poc
Crashing thread backtrace: (it looks like a recursive stack overflow)
#0 0x000055555cac9623 in clang::ASTContext::getTypeInfo (fuzz-binaries/clang-fuzzer)
at /src/llvm/clang/lib/AST/ASTContext.cpp:1966
#1 0x000055555cae481f in clang::ASTContext::getTypeInfoImpl (fuzz-binaries/clang-fuzzer)
at /src/llvm/clang/lib/AST/ASTContext.cpp:2465
#2 0x000055555cac97e7 in clang::ASTContext::getTypeInfo (fuzz-binaries/clang-fuzzer)
at /src/llvm/clang/lib/AST/ASTContext.cpp:1972
#3 0x000055555cae481f in clang::ASTContext::getTypeInfoImpl (fuzz-binaries/clang-fuzzer)
at /src/llvm/clang/lib/AST/ASTContext.cpp:2465
#4 0x000055555cac97e7 in clang::ASTContext::getTypeInfo (fuzz-binaries/clang-fuzzer)
at /src/llvm/clang/lib/AST/ASTContext.cpp:1972
#5 0x000055555cae481f in clang::ASTContext::getTypeInfoImpl (fuzz-binaries/clang-fuzzer)
at /src/llvm/clang/lib/AST/ASTContext.cpp:2465
#6 0x000055555cac97e7 in clang::ASTContext::getTypeInfo (fuzz-binaries/clang-fuzzer)
at /src/llvm/clang/lib/AST/ASTContext.cpp:1972
#7 0x000055555cae481f in clang::ASTContext::getTypeInfoImpl (fuzz-binaries/clang-fuzzer)
at /src/llvm/clang/lib/AST/ASTContext.cpp:2465
#8 0x000055555cac97e7 in clang::ASTContext::getTypeInfo (fuzz-binaries/clang-fuzzer)
at /src/llvm/clang/lib/AST/ASTContext.cpp:1972
#9 0x000055555cae481f in clang::ASTContext::getTypeInfoImpl (fuzz-binaries/clang-fuzzer)
at /src/llvm/clang/lib/AST/ASTContext.cpp:2465
#10 0x000055555cac97e7 in clang::ASTContext::getTypeInfo (fuzz-binaries/clang-fuzzer)
at /src/llvm/clang/lib/AST/ASTContext.cpp:1972
#11 0x000055555cae481f in clang::ASTContext::getTypeInfoImpl (fuzz-binaries/clang-fuzzer)
at /src/llvm/clang/lib/AST/ASTContext.cpp:2465
#12 0x000055555cac97e7 in clang::ASTContext::getTypeInfo (fuzz-binaries/clang-fuzzer)
at /src/llvm/clang/lib/AST/ASTContext.cpp:1972
#13 0x000055555cae481f in clang::ASTContext::getTypeInfoImpl (fuzz-binaries/clang-fuzzer)
at /src/llvm/clang/lib/AST/ASTContext.cpp:2465
#14 0x000055555cac97e7 in clang::ASTContext::getTypeInfo (fuzz-binaries/clang-fuzzer)
at /src/llvm/clang/lib/AST/ASTContext.cpp:1972
#15 0x000055555cae481f in clang::ASTContext::getTypeInfoImpl (fuzz-binaries/clang-fuzzer)
at /src/llvm/clang/lib/AST/ASTContext.cpp:2465
#16 0x000055555cac97e7 in clang::ASTContext::getTypeInfo (fuzz-binaries/clang-fuzzer)
at /src/llvm/clang/lib/AST/ASTContext.cpp:1972
#17 0x000055555cae481f in clang::ASTContext::getTypeInfoImpl (fuzz-binaries/clang-fuzzer)
at /src/llvm/clang/lib/AST/ASTContext.cpp:2465
#18 0x000055555cac97e7 in clang::ASTContext::getTypeInfo (fuzz-binaries/clang-fuzzer)
at /src/llvm/clang/lib/AST/ASTContext.cpp:1972
#19 0x000055555cae481f in clang::ASTContext::getTypeInfoImpl (fuzz-binaries/clang-fuzzer)
at /src/llvm/clang/lib/AST/ASTContext.cpp:2465
Metadata
Metadata
Assignees
Labels
clang:frontendLanguage frontend issues, e.g. anything involving "Sema"Language frontend issues, e.g. anything involving "Sema"crash-on-invalidgenerated by fuzzer