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 05:02:31PM -0800, Zack Weinberg wrote:
> On Mon, Mar 18, 2002 at 07:25:34PM -0500, Richard Kenner wrote:
> >     I am using GNAT 3.14p to compile Ada sources, and GCC 2.95 to compile
> >     C sources; the resulting object modules are then linked together to
> >     make stage1/gnat1.  Is that what you mean by a kludged-up compiler?
> > 
> > No, I mean a gnat1 built using GCC 2.95 or 3.0 sources.  It indeed
> > does not matter what is used to compile the C parts.
> 
> Ah, okay, I misunderstood.
> 
> To the best of my knowledge, the gnat1 I am using was built correctly;
> however, I am still seeing a crash when the stage1 gnat1 tries to
> build gnat1.adb.  It appears that Sem_Eval'Compile_Time_Known_Value
> was miscompiled.

Correction -- that's not the root of the problem.

This 3.14 appears to generate busted code for exception support.  We
don't care, as long as no exceptions get thrown while stage1 is
compiling stage2.  However, one is thrown during the compilation of
namet.adb.

(gdb) bt
#0  system__assertions__raise_assert_failure 
    (msg={P_ARRAY = 0x866d92f, P_BOUNDS = 0x866d488}) at ada/s-assert.ads:40
#1  0x082bf231 in sinfo__etype (n=0) at ada/sinfo.adb:981
#2  0x08278189 in sem_eval__constant_array_ref (op=2363)
    at ada/sem_eval.adb:925
#3  0x08277d5f in sem_eval__compile_time_known_value (op=2363)
    at ada/sem_eval.adb:807
#4  0x0827e68b in sem_eval__test_expression_is_foldable__2 (n=2365,
    op1=2363, op2=2364) at ada/sem_eval.adb:3820
#5  0x0827a505 in sem_eval__eval_relational_op (n=2365)
    at ada/sem_eval.adb:1959
[etc etc etc]

(gdb) frame 2
#2  0x08278189 in sem_eval__constant_array_ref (op=2363) at
    ada/sem_eval.adb:925
924                 Ind : constant Node_Id := First_Index (Etype (Arr));
925                 Lbd : constant Node_Id := Type_Low_Bound (Etype (Ind));
(gdb) p arr
$2 = 2314
(gdb) p sinfo__etype (arr)
$3 = 15854

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.

zw


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