https://llvm.org/bugs/show_bug.cgi?id=24862
Bug ID: 24862 Summary: crasher: "auto lol = (__typeof__(auto())*) 2;" Product: clang Version: unspecified Hardware: PC OS: All Status: NEW Severity: normal Priority: P Component: -New Bugs Assignee: unassignedclangb...@nondot.org Reporter: grosb...@apple.com CC: llvm-bugs@lists.llvm.org Classification: Unclassified $ cat crash.cpp auto lol = (__typeof__(auto())*) 2; $ ~/sources/build-llvm/bin/clang -c -std=c++14 crash.cpp undeduced auto type in IR-generation UNREACHABLE executed at /Users/grosbaj/sources/llvm/tools/clang/lib/CodeGen/CodeGenFunction.cpp:182! 0 clang-3.8 0x000000010be7b6be llvm::sys::PrintStackTrace(llvm::raw_ostream&) + 46 1 clang-3.8 0x000000010be7d859 PrintStackTraceSignalHandler(void*) + 25 2 clang-3.8 0x000000010be79959 llvm::sys::RunSignalHandlers() + 425 3 clang-3.8 0x000000010be7db99 SignalHandler(int) + 345 4 libsystem_platform.dylib 0x00007fff9b775eaa _sigtramp + 26 5 libsystem_platform.dylib 000000000000000000 _sigtramp + 1686675824 6 clang-3.8 0x000000010be7d87b raise + 27 7 clang-3.8 0x000000010be7d932 abort + 18 8 clang-3.8 0x000000010bd8bcb6 llvm::llvm_unreachable_internal(char const*, char const*, unsigned int) + 198 9 clang-3.8 0x000000010c42711d clang::CodeGen::CodeGenFunction::getEvaluationKind(clang::QualType) + 141 10 clang-3.8 0x000000010c206d1d clang::CodeGen::CodeGenFunction::hasScalarEvaluationKind(clang::QualType) + 29 11 clang-3.8 0x000000010c664f6d isAggregateTypeForABI(clang::QualType) + 29 12 clang-3.8 0x000000010c683407 (anonymous namespace)::X86_64ABIInfo::getIndirectReturnResult(clang::QualType) const + 55 13 clang-3.8 0x000000010c680eb3 (anonymous namespace)::X86_64ABIInfo::classifyReturnType(clang::QualType) const + 579 14 clang-3.8 0x000000010c67ecdc (anonymous namespace)::X86_64ABIInfo::computeInfo(clang::CodeGen::CGFunctionInfo&) const + 156 15 clang-3.8 0x000000010c1e50b0 clang::CodeGen::CodeGenTypes::arrangeLLVMFunctionInfo(clang::CanQual<clang::Type>, bool, bool, llvm::ArrayRef<clang::CanQual<clang::Type> >, clang::FunctionType::ExtInfo, clang::CodeGen::RequiredArgs) + 1392 16 clang-3.8 0x000000010c1e5599 arrangeLLVMFunctionInfo(clang::CodeGen::CodeGenTypes&, bool, llvm::SmallVectorImpl<clang::CanQual<clang::Type> >&, clang::CanQual<clang::FunctionProtoType>) + 441 17 clang-3.8 0x000000010c1e5391 clang::CodeGen::CodeGenTypes::arrangeFreeFunctionType(clang::CanQual<clang::FunctionProtoType>) + 113 18 clang-3.8 0x000000010c567da0 clang::CodeGen::CodeGenTypes::ConvertType(clang::QualType) + 2816 19 clang-3.8 0x000000010c567237 clang::CodeGen::CodeGenTypes::ConvertTypeForMem(clang::QualType) + 55 20 clang-3.8 0x000000010c5677f6 clang::CodeGen::CodeGenTypes::ConvertType(clang::QualType) + 1366 21 clang-3.8 0x000000010c567237 clang::CodeGen::CodeGenTypes::ConvertTypeForMem(clang::QualType) + 55 22 clang-3.8 0x000000010c2d94be clang::CodeGen::CodeGenModule::EmitConstantValue(clang::APValue const&, clang::QualType, clang::CodeGen::CodeGenFunction*) + 654 23 clang-3.8 0x000000010c2d7462 clang::CodeGen::CodeGenModule::EmitConstantValueForMemory(clang::APValue const&, clang::QualType, clang::CodeGen::CodeGenFunction*) + 82 24 clang-3.8 0x000000010c2d6f6f clang::CodeGen::CodeGenModule::EmitConstantInit(clang::VarDecl const&, clang::CodeGen::CodeGenFunction*) + 399 25 clang-3.8 0x000000010c44c3d2 clang::CodeGen::CodeGenModule::EmitGlobalVarDefinition(clang::VarDecl const*) + 930 26 clang-3.8 0x000000010c445b40 clang::CodeGen::CodeGenModule::EmitGlobalDefinition(clang::GlobalDecl, llvm::GlobalValue*) + 800 27 clang-3.8 0x000000010c44ab8c clang::CodeGen::CodeGenModule::EmitGlobal(clang::GlobalDecl) + 1116 28 clang-3.8 0x000000010c44e3f4 clang::CodeGen::CodeGenModule::EmitTopLevelDecl(clang::Decl*) + 404 29 clang-3.8 0x000000010c5cbd9d (anonymous namespace)::CodeGeneratorImpl::HandleTopLevelDecl(clang::DeclGroupRef) + 157 30 clang-3.8 0x000000010c422124 clang::BackendConsumer::HandleTopLevelDecl(clang::DeclGroupRef) + 196 31 clang-3.8 0x000000010d90ba66 clang::ParseAST(clang::Sema&, bool, bool) + 966 32 clang-3.8 0x000000010c99b91f clang::ASTFrontendAction::ExecuteAction() + 511 33 clang-3.8 0x000000010c420c0d clang::CodeGenAction::ExecuteAction() + 6365 34 clang-3.8 0x000000010c99ae80 clang::FrontendAction::Execute() + 112 35 clang-3.8 0x000000010c8f4275 clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) + 997 36 clang-3.8 0x000000010ca2ecaa clang::ExecuteCompilerInvocation(clang::CompilerInstance*) + 4410 37 clang-3.8 0x0000000109baa23e cc1_main(llvm::ArrayRef<char const*>, char const*, void*) + 4926 38 clang-3.8 0x0000000109b994f7 ExecuteCC1Tool(llvm::ArrayRef<char const*>, llvm::StringRef) + 695 39 clang-3.8 0x0000000109b968fa main + 4106 40 libdyld.dylib 0x00007fff8dd2b5ad start + 1 Stack dump: 0. Program arguments: /Users/grosbaj/sources/build-llvm/bin/clang-3.8 -cc1 -triple x86_64-apple-macosx10.11.0 -emit-obj -mrelax-all -disable-free -main-file-name crash.cpp -mrelocation-model pic -pic-level 2 -mthread-model posix -mdisable-fp-elim -masm-verbose -munwind-tables -target-cpu core2 -target-linker-version 251.4 -dwarf-column-info -coverage-file /Users/grosbaj/tmp/crash.cpp -resource-dir /Users/grosbaj/sources/build-llvm/bin/../lib/clang/3.8.0 -stdlib=libc++ -std=c++14 -fdeprecated-macro -fdebug-compilation-dir /Users/grosbaj/tmp -ferror-limit 19 -fmessage-length 135 -stack-protector 1 -fblocks -fobjc-runtime=macosx-10.11.0 -fencode-extended-block-signature -fcxx-exceptions -fexceptions -fmax-type-align=16 -fdiagnostics-show-option -fcolor-diagnostics -o crash.o -x c++ crash.cpp 1. <eof> parser at end of file 2. crash.cpp:1:6: LLVM IR generation of declaration 'lol' 3. crash.cpp:1:6: Generating code for declaration 'lol' clang-3.8: error: unable to execute command: Illegal instruction: 4 clang-3.8: error: clang frontend command failed due to signal (use -v to see invocation) clang version 3.8.0 (trunk 247808) (llvm/trunk 247820) Target: x86_64-apple-darwin15.0.0 Thread model: posix InstalledDir: /Users/grosbaj/sources/build-llvm/bin -- You are receiving this mail because: You are on the CC list for the bug.
_______________________________________________ llvm-bugs mailing list llvm-bugs@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs