public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
From: Laurent GUERBY <laurent@guerby.net>
To: Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
Cc: gcc@gcc.gnu.org
Subject: Ada system.fat_lflt.fat_long_float.scaling problem analysis
Date: Fri, 17 Sep 2004 20:52:00 -0000	[thread overview]
Message-ID: <1095450828.6762.125.camel@pc.site> (raw)
In-Reply-To: <10409132124.AA11452@vlsi1.ultra.nyu.edu>

On Mon, 2004-09-13 at 23:24, Richard Kenner wrote:
>     s-fatlfl.o(.bss+0x0): In function `system.fat_lflt.fat_long_float.scaling':
>     /home/guerby/work/gcc/build/build-20040913T200122/gcc/ada/rts/s-fatgen.adb:540: multiple definition of `r'
>     s-fatflt.o(.bss+0x0):/home/guerby/work/gcc/build/build-20040913T200122/gcc/ada/rts/s-fatgen.adb:540: first defined here
> 
> I'm assuming this is a problem in the Ada front end, though I haven't
> gotten a chance to look at it yet.

I looked at the expanded code for s-fatflt.ads and found the "r":

xa : constant system.system__address := 
           system__fat_flt__fat_float__valid__to_addressGP22755__target!
           (system__fat_flt__fat_float__valid__float_access(x));
r : system__fat_flt__fat_float__valid__float_rep;
        pragma import (ada, r);
        for r'address use xa;
        freeze r []

The following reduced test case shows the problem:

procedure P is
   procedure P1 (X : access Integer) is
      R : Integer;
      pragma Import (Ada, R);
      for R'Address use X.all'Address;
   begin
      null;
   end P1;
   procedure P2 (X : access Integer) is
      R : Integer;
      pragma Import (Ada, R);
      for R'Address use X.all'Address;
   begin
      null;
   end P2;
begin
   null;
end P;

$ /home/guerby/work/gcc/build/build-20040917T192720/gcc/xgcc -B/home/guerby/work/gcc/build/build-20040917T192720/gcc/ -c p.adb
/tmp/ccK6lePn.s: Assembler messages:
/tmp/ccK6lePn.s:13: Error: symbol `r' is already defined

My guess is that the r symbol is not flagged as local when
there's an address clause and an Import pragma, so it
might be a gigi problem.

Hope this helps,

Laurent


  reply	other threads:[~2004-09-17 19:54 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-09-13 22:08 Ada broken on i686-linux (some more progress) Richard Kenner
2004-09-17 20:52 ` Laurent GUERBY [this message]
2004-09-17 21:24   ` Ada system.fat_lflt.fat_long_float.scaling problem analysis Robert Dewar
2004-09-17 21:34     ` Laurent GUERBY
2004-09-17 22:07       ` Robert Dewar
2004-09-17 22:35         ` Laurent GUERBY
2004-09-18  9:16           ` Robert Dewar
2004-09-18 14:36 Richard Kenner
2004-09-18 14:43 ` Laurent GUERBY
2004-09-18 16:52 ` Robert Dewar

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1095450828.6762.125.camel@pc.site \
    --to=laurent@guerby.net \
    --cc=gcc@gcc.gnu.org \
    --cc=kenner@vlsi1.ultra.nyu.edu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).