Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

ICE: Assertion `!isResultDependent() && "Generic selection is result-dependent but getResultIndex called!"' failed. #50227

Closed
Labels
bugzillaIssues migrated from bugzillacclang:frontendLanguage frontend issues, e.g. anything involving "Sema"confirmedVerified by a second partycrash-on-invalid
@chengniansun

Description

@chengniansun
Bugzilla Link50883
Versiontrunk
OSLinux
CC@DougGregor,@zygoloid

Extended Description

$ clang-trunk -v
clang version 13.0.0 (https://github.com/llvm/llvm-project.git2e9c75d)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /home/cnsun/usr/bin
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/10
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/8
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/9
Selected GCC installation: /usr/lib/gcc/x86_64-linux-gnu/10
Candidate multilib: .;@m64
Candidate multilib: 32;@m32
Candidate multilib: x32;@MX32
Selected multilib: .;@m64

$ cat mutant.c
main() { _Generic(n(_Generic(n++, int : 0)), int : 0); }

$ clang-trunk mutant.c
mutant.c:1:1: warning: type specifier missing, defaults to 'int' [-Wimplicit-int]
main() { _Generic(n(_Generic(n++, int : 0)), int : 0); }
^
mutant.c:1:19: warning: implicit declaration of function 'n' is invalid in C99 [-Wimplicit-function-declaration]
main() { _Generic(n(_Generic(n++, int : 0)), int : 0); }
^
mutant.c:1:31: error: cannot increment value of type 'int ()'
main() { _Generic(n(_Generic(n++, int : 0)), int : 0); }
~^
clang-13: /tmp/tmp.xjN6dMkdrg-clang-builder/llvm-project/clang/include/clang/AST/Expr.h:5778: unsigned int clang::GenericSelectionExpr::getResultIndex() const: Assertion `!isResultDependent() && "Generic selection is result-dependent but getResultIndex called!"' failed.
PLEASE submit a bug report tohttps://bugs.llvm.org/ and include the crash backtrace, preprocessed source, and associated run script.
Stack dump:
0.Program arguments: /scratch/software/clang-trunk/bin/clang-13 -cc1 -triple x86_64-unknown-linux-gnu -emit-obj -mrelax-all --mrelax-relocations -disable-free -main-file-name mutant.c -mrelocation-model static -mframe-pointer=all -fmath-errno -fno-rounding-math -mconstructor-aliases -munwind-tables -target-cpu x86-64 -tune-cpu generic -debugger-tuning=gdb -fcoverage-compilation-dir=/scratch/cnsun/workspace/perses-fuzzer/default_c_finding_folder/crash_20210626_162408_09d9/delta/perses_result -resource-dir /scratch/software/clang-trunk/lib/clang/13.0.0 -c-isystem . -c-isystem /usr/local/include/cmsith -internal-isystem /scratch/software/clang-trunk/lib/clang/13.0.0/include -internal-isystem /usr/local/include -internal-isystem /usr/lib/gcc/x86_64-linux-gnu/10/../../../../x86_64-linux-gnu/include -internal-externc-isystem /usr/include/x86_64-linux-gnu -internal-externc-isystem /include -internal-externc-isystem /usr/include -fdebug-compilation-dir=/scratch/cnsun/workspace/perses-fuzzer/default_c_finding_folder/crash_20210626_162408_09d9/delta/perses_result -ferror-limit 19 -fgnuc-version=4.2.1 -faddrsig -D__GCC_HAVE_DWARF2_CFI_ASM=1 -o /tmp/mutant-3d868c.o -x c mutant.c

  1. mutant.c:1:54: current parser token ';'
  2. mutant.c:1:8: parsing function body 'main'
  3. mutant.c:1:8: in compound statement ('{}')
    #​0 0x0000557053e10184 PrintStackTraceSignalHandler(void*) Signals.cpp:0:0
    #​1 0x0000557053e0d93e SignalHandler(int) Signals.cpp:0:0
    #​2 0x00007f940d3bd3c0 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x153c0)
    #​3 0x00007f940ce5c18b raise /build/glibc-ZN95T4/glibc-2.31/signal/../sysdeps/unix/sysv/linux/raise.c:51:1
    #​4 0x00007f940ce3b859 abort /build/glibc-ZN95T4/glibc-2.31/stdlib/abort.c:81:7
    #​5 0x00007f940ce3b729 get_sysdep_segment_value /build/glibc-ZN95T4/glibc-2.31/intl/loadmsgcat.c:509:8
    #​6 0x00007f940ce3b729 _nl_load_domain /build/glibc-ZN95T4/glibc-2.31/intl/loadmsgcat.c:970:34
    #​7 0x00007f940ce4cf36 (/lib/x86_64-linux-gnu/libc.so.6+0x36f36)
    #​8 0x0000557056ec6819 (/scratch/software/clang-trunk/bin/clang-13+0x6a11819)
    #​9 0x0000557056ece1f9 clang::Expr::HasSideEffects(clang::ASTContext const&, bool) const (/scratch/software/clang-trunk/bin/clang-13+0x6a191f9)
    #​10 0x0000557056ecdee3 clang::Expr::HasSideEffects(clang::ASTContext const&, bool) const (/scratch/software/clang-trunk/bin/clang-13+0x6a18ee3)
    #​11 0x00005570564b2b8f clang::Sema::CreateGenericSelectionExpr(clang::SourceLocation, clang::SourceLocation, clang::SourceLocation, clang::Expr*, llvm::ArrayRefclang::TypeSourceInfo*, llvm::ArrayRefclang::Expr*) (/scratch/software/clang-trunk/bin/clang-13+0x5ffdb8f)
    #​12 0x00005570564ce936 clang::Sema::ActOnGenericSelectionExpr(clang::SourceLocation, clang::SourceLocation, clang::SourceLocation, clang::Expr*, llvm::ArrayRef<clang::OpaquePtrclang::QualType >, llvm::ArrayRefclang::Expr*) (/scratch/software/clang-trunk/bin/clang-13+0x6019936)
    #​13 0x000055705608411b clang::Parser::ParseGenericSelectionExpression() (/scratch/software/clang-trunk/bin/clang-13+0x5bcf11b)
    #​14 0x0000557056081b2f clang::Parser::ParseCastExpression(clang::Parser::CastParseKind, bool, bool&, clang::Parser::TypeCastState, bool, bool*) (/scratch/software/clang-trunk/bin/clang-13+0x5bccb2f)
    #​15 0x000055705608350b clang::Parser::ParseCastExpression(clang::Parser::CastParseKind, bool, clang::Parser::TypeCastState, bool, bool*) (/scratch/software/clang-trunk/bin/clang-13+0x5bce50b)
    #​16 0x00005570560835ad clang::Parser::ParseAssignmentExpression(clang::Parser::TypeCastState) (/scratch/software/clang-trunk/bin/clang-13+0x5bce5ad)
    #​17 0x0000557056086b0d clang::Parser::ParseExpression(clang::Parser::TypeCastState) (/scratch/software/clang-trunk/bin/clang-13+0x5bd1b0d)
    #​18 0x00005570560ee74e clang::Parser::ParseExprStatement(clang::Parser::ParsedStmtContext) (/scratch/software/clang-trunk/bin/clang-13+0x5c3974e)
    #​19 0x00005570560e5ce2 clang::Parser::ParseStatementOrDeclarationAfterAttributes(llvm::SmallVector<clang::Stmt*, 32u>&, clang::Parser::ParsedStmtContext, clang::SourceLocation*, clang::ParsedAttributesWithRange&) (/scratch/software/clang-trunk/bin/clang-13+0x5c30ce2)
    #​20 0x00005570560e66ca clang::Parser::ParseStatementOrDeclaration(llvm::SmallVector<clang::Stmt*, 32u>&, clang::Parser::ParsedStmtContext, clang::SourceLocation*) (/scratch/software/clang-trunk/bin/clang-13+0x5c316ca)
    #​21 0x00005570560e7649 clang::Parser::ParseCompoundStatementBody(bool) (/scratch/software/clang-trunk/bin/clang-13+0x5c32649)
    #​22 0x00005570560e9c5a clang::Parser::ParseFunctionStatementBody(clang::Decl*, clang::Parser::ParseScope&) (/scratch/software/clang-trunk/bin/clang-13+0x5c34c5a)
    #​23 0x000055705602fef2 clang::Parser::ParseFunctionDefinition(clang::ParsingDeclarator&, clang::Parser::ParsedTemplateInfo const&, clang::Parser::LateParsedAttrList*) (/scratch/software/clang-trunk/bin/clang-13+0x5b7aef2)
    #​24 0x000055705605c850 clang::Parser::ParseDeclGroup(clang::ParsingDeclSpec&, clang::DeclaratorContext, clang::SourceLocation*, clang::Parser::ForRangeInit*) (/scratch/software/clang-trunk/bin/clang-13+0x5ba7850)
    #​25 0x000055705602a6f6 clang::Parser::ParseDeclOrFunctionDefInternal(clang::ParsedAttributesWithRange&, clang::ParsingDeclSpec&, clang::AccessSpecifier) (/scratch/software/clang-trunk/bin/clang-13+0x5b756f6)
    #​26 0x000055705602ace1 clang::Parser::ParseDeclarationOrFunctionDefinition(clang::ParsedAttributesWithRange&, clang::ParsingDeclSpec*, clang::AccessSpecifier) (.part.0) Parser.cpp:0:0
    #​27 0x00005570560314e7 clang::Parser::ParseExternalDeclaration(clang::ParsedAttributesWithRange&, clang::ParsingDeclSpec*) (/scratch/software/clang-trunk/bin/clang-13+0x5b7c4e7)
    #​28 0x0000557056032a7e clang::Parser::ParseTopLevelDecl(clang::OpaquePtrclang::DeclGroupRef&, bool) (/scratch/software/clang-trunk/bin/clang-13+0x5b7da7e)
    #​29 0x0000557056032e29 clang::Parser::ParseFirstTopLevelDecl(clang::OpaquePtrclang::DeclGroupRef&) (/scratch/software/clang-trunk/bin/clang-13+0x5b7de29)
    #​30 0x000055705602529a clang::ParseAST(clang::Sema&, bool, bool) (/scratch/software/clang-trunk/bin/clang-13+0x5b7029a)
    #​31 0x0000557054f6c968 clang::CodeGenAction::ExecuteAction() (/scratch/software/clang-trunk/bin/clang-13+0x4ab7968)
    #​32 0x000055705481c599 clang::FrontendAction::Execute() (/scratch/software/clang-trunk/bin/clang-13+0x4367599)
    #​33 0x00005570547af7e6 clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) (/scratch/software/clang-trunk/bin/clang-13+0x42fa7e6)
    #​34 0x00005570548fa480 clang::ExecuteCompilerInvocation(clang::CompilerInstance*) (/scratch/software/clang-trunk/bin/clang-13+0x4445480)
    #​35 0x000055705171a696 cc1_main(llvm::ArrayRef<char const*>, char const*, void*) (/scratch/software/clang-trunk/bin/clang-13+0x1265696)
    #​36 0x00005570517169d8 ExecuteCC1Tool(llvm::SmallVectorImpl<char const*>&) driver.cpp:0:0
    #​37 0x00005570516440e6 main (/scratch/software/clang-trunk/bin/clang-13+0x118f0e6)
    #​38 0x00007f940ce3d0b3 __libc_start_main /build/glibc-ZN95T4/glibc-2.31/csu/../csu/libc-start.c:342:3
    #​39 0x000055705171654e _start (/scratch/software/clang-trunk/bin/clang-13+0x126154e)
    clang-13: error: unable to execute command: Aborted (core dumped)
    clang-13: error: clang frontend command failed due to signal (use -v to see invocation)
    clang version 13.0.0 (https://github.com/llvm/llvm-project.git2e9c75d)
    Target: x86_64-unknown-linux-gnu
    Thread model: posix
    InstalledDir: /home/cnsun/usr/bin
    clang-13: note: diagnostic msg:

PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT:
Preprocessed source(s) and associated run script(s) are located at:
clang-13: note: diagnostic msg: /tmp/mutant-32b756.c
clang-13: note: diagnostic msg: /tmp/mutant-32b756.sh
clang-13: note: diagnostic msg:


Metadata

Metadata

Assignees

No one assigned

    Labels

    bugzillaIssues migrated from bugzillacclang:frontendLanguage frontend issues, e.g. anything involving "Sema"confirmedVerified by a second partycrash-on-invalid

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions


      [8]ページ先頭

      ©2009-2025 Movatter.jp