[llvm-bugs] [Bug 24862] New: crasher: "auto lol = (__typeof__(auto())*) 2; "

via llvm-bugs llvm-bugs at lists.llvm.org
Thu Sep 17 10:39:40 PDT 2015


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: unassignedclangbugs at nondot.org
          Reporter: grosbach at apple.com
                CC: llvm-bugs at 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.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20150917/6e680f27/attachment.html>


More information about the llvm-bugs mailing list