[Bug modula2/116048] New: cc1gm2 ICE when encountering qualident of the wrong kind
gaius at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Tue Jul 23 12:26:11 GMT 2024
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=116048
Bug ID: 116048
Summary: cc1gm2 ICE when encountering qualident of the wrong
kind
Product: gcc
Version: 15.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: modula2
Assignee: gaius at gcc dot gnu.org
Reporter: gaius at gcc dot gnu.org
Target Milestone: ---
Following on from PR-115957 further ICEs can be generated by using the wrong
qualident (kind) of symbol. For example using a variable instead of a type or
using a type instead of a const. For example:
$ cat badtype.mod
MODULE badtype ;
PROCEDURE bar (VAR a: CARDINAL) ;
TYPE
Foo = a ;
BEGIN
END bar ;
BEGIN
END badtype.
$ gm2 badtype.mod
<parm_decl 0xffffba855480 a
type <reference_type 0xffffba812b28
type <integer_type 0xffffba7c5690 CARDINAL public unsigned SI
size <integer_cst 0xffffba7b1fc0 constant 32>
unit-size <integer_cst 0xffffba7b1fd8 constant 4>
align:32 warn_if_not_align:0 symtab:0 alias-set -1 canonical-type
0xffffba7c5690 precision:32 min <integer_cst 0xffffba7ca000 0> max <integer_cst
0xffffba7b1fa8 4294967295>
pointer_to_this <pointer_type 0xffffba7ffe70> reference_to_this
<reference_type 0xffffba812b28>>
unsigned DI
size <integer_cst 0xffffba7b1d80 constant 64>
unit-size <integer_cst 0xffffba7b1d98 constant 8>
align:64 warn_if_not_align:0 symtab:0 alias-set -1 canonical-type
0xffffba812b28>
readonly unsigned DI badtype.mod:3:20 size <integer_cst 0xffffba7b1d80 64>
unit-size <integer_cst 0xffffba7b1d98 8>
align:64 warn_if_not_align:0 context <function_decl 0xffffba854f00 bar>
arg-type <reference_type 0xffffba812b28>>
In function 'bar':
cc1gm2: internal compiler error: ../../gcc/m2/gm2-gcc/m2type.cc:1805:condition
m2tree_is_type (type) failed
0x30005db internal_error(char const*, ...)
../../gcc/diagnostic-global-context.cc:491
0xe25087 m2type_BuildStartType
../../gcc/m2/gm2-gcc/m2type.cc:1805
0xe66d07 DeclareType
m2/gm2-compiler-boot/M2GCCDeclare.c:3227
0xe6f193 TypeConstFullyDeclared
m2/gm2-compiler-boot/M2GCCDeclare.c:7089
0xe66587 DeclareTypeConstFully
m2/gm2-compiler-boot/M2GCCDeclare.c:2866
0xe66723 Body
m2/gm2-compiler-boot/M2GCCDeclare.c:3021
0xed452b Sets_ForeachElementInSetDo
m2/gm2-compiler-boot/Sets.c:336
0xe6683f ForeachTryDeclare
m2/gm2-compiler-boot/M2GCCDeclare.c:3057
0xe66a1b DeclaredOutstandingTypes
m2/gm2-compiler-boot/M2GCCDeclare.c:3115
0xe688eb DeclareTypesConstantsProceduresInRange
m2/gm2-compiler-boot/M2GCCDeclare.c:4171
0xebf51b M2Scope_ForeachScopeBlockDo3
m2/gm2-compiler-boot/M2Scope.c:701
0xe68b27 DeclareTypesConstantsProcedures
m2/gm2-compiler-boot/M2GCCDeclare.c:4268
0xe68cdb StartDeclareProcedureScope
m2/gm2-compiler-boot/M2GCCDeclare.c:4339
0xe70963 M2GCCDeclare_StartDeclareScope
m2/gm2-compiler-boot/M2GCCDeclare.c:8119
0xe7402b CodeProcedureScope
m2/gm2-compiler-boot/M2GenGCC.c:3425
0xe71bcf CodeStatement
m2/gm2-compiler-boot/M2GenGCC.c:1936
0xe829b7 M2GenGCC_ConvertQuadsToTree
m2/gm2-compiler-boot/M2GenGCC.c:9601
0xebf487 M2Scope_ForeachScopeBlockDo2
m2/gm2-compiler-boot/M2Scope.c:669
0xe5d83f M2Code_CodeBlock
m2/gm2-compiler-boot/M2Code.c:508
0xe43c93 Lists_ForeachItemInListDo
m2/gm2-compiler-boot/Lists.c:391
More information about the Gcc-bugs
mailing list