This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [Ada] Bootstrapping mainline GNAT fails


On Mon, Mar 18, 2002 at 08:47:45PM -0500, Robert Dewar wrote:
> <<Node 15854 has no Type_Low_Bound.  I cannot figure out how to dump out
> the node attached to one of these indexes, so that's as far as I get.
> >>
> 
> Nodes can conveniently be dumped with the pn procedure.

Thanks.

(gdb) p ind
$1 = 0
(gdb) p arr
$2 = 2314
(gdb) call pn(arr)
N_String_Literal (Node_Id=2314) (analyzed)
 Rewritten: original node = N_Op_Concat "Oconcat" (Node_Id=15853)
 Parent = N_Object_Declaration (Node_Id=2278)
 Sloc = 21208  ../../../vanilla/gcc/ada/namet.adb:380:29
 Is_Static_Expression = True
 Etype = N_Defining_Identifier "T22b" (Entity_Id=15854)
 Strval = "ab  ad+ an  co& di/ eq= ex**gt> ge>=le<=lt< mo  mu* ne/=no  or  re  su- xo  " (String_Id=400000121)
(gdb) call pn (sinfo__etype (arr))
N_Defining_Identifier "T22b" (Entity_Id=15854)
 Parent = <empty>
 Sloc = 21208  ../../../vanilla/gcc/ada/namet.adb:380:29
 Chars = "T22b" (Name_Id=300001919)
 Next_Entity = N_Defining_Identifier "TmapS" (Entity_Id=15869)
 Scope = N_Defining_Identifier "B_12" (Entity_Id=5394)
 Ekind = E_String_Literal_Subtype
 Etype = N_Defining_Identifier "string" (Entity_Id=22s)
 Associated_Node_For_Itype = N_String_Literal (Node_Id=2314)
 Esize = 0 (Uint = 600032768)
 RM_Size = 0 (Uint = 600032768)
 Alignment = 0 (Uint = 600032768)
 String_Literal_Low_Bound = N_Integer_Literal (Node_Id=622s)
 String_Literal_Length = 76 (Uint = 600032844)
 Is_Constrained = True
 Is_Frozen = True
 Is_Internal = True
 Is_Itype = True
 Size_Known_At_Compile_Time = True

As previously mentioned, the routine we're in here
(sem_eval__constant_array_ref) wants node 15854 to have a
Type_Low_Bound property, which it doesn't.

Do those nodes look correct to you?  Off the top of my head I'm a
little dubious about having the Etype field of a string literal point
at a Defining_Identifier -- shouldn't it be some sort of type node?

zw


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]