Skip to content

Crash in llvm-gcc with variably modified type and pointer subtraction #3621

@efriedma-quic

Description

@efriedma-quic
Bugzilla Link 3249
Resolution DUPLICATE
Resolved on Feb 07, 2009 18:02
Version unspecified
OS Linux
CC @asl

Extended Description

Testcase:
int a() {return (char()[printf("asdf\n")])0 + 1 - (char()[printf("asdf\n")])0;}

Output:
: In function ‘a’:
:1: warning: implicit declaration of function ‘printf’
:1: warning: incompatible implicit declaration of built-in function ‘printf’
Unhandled expression!
TREE_CODE: 118
<save_expr 0xb7b731e0
type <integer_type 0xb7b772a0 int public SI
size <integer_cst 0xb7b6d6e4 constant invariant 32>
unit size <integer_cst 0xb7b6d40c constant invariant 4>
align 32 symtab 1 alias set -1 precision 32 min <integer_cst 0xb7b6d690 -2147483648> max <integer_cst 0xb7b6d6ac 2147483647>
LLVM: i32
pointer_to_this <pointer_type 0xb7b77cc0>>
side-effects invariant public
arg 0 <var_decl 0xb7bf40d0 D.964 type <integer_type 0xb7b772a0 int>
used ignored asm-frame-size 0 SI file line 1 size <integer_cst 0xb7b6d6e4 32> unit size <integer_cst 0xb7b6d40c 4>
align 32 context <function_decl 0xb7be8400 a>
LLVM: i32* %0
chain <var_decl 0xb7bf4138 D.965 type <integer_type 0xb7b772a0 int>
used ignored asm-frame-size 0 SI file line 1 size <integer_cst 0xb7b6d6e4 32> unit size <integer_cst 0xb7b6d40c 4>
align 32 context <function_decl 0xb7be8400 a>>>>
:1: internal compiler error: in Emit, at llvm-convert.cpp:947
Please submit a full bug report,
with preprocessed source if appropriate.
See URL:http://developer.apple.com/bugreporter for instructions.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugzillaIssues migrated from bugzilladuplicateResolved as duplicate

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions