comp.lang.ada
 help / color / mirror / Atom feed
From: kilgallen@eisner.decus.org (Larry Kilgallen)
Subject: Re: How do I get this to work??
Date: 1999/01/06
Date: 1999-01-06T00:00:00+00:00	[thread overview]
Message-ID: <1999Jan6.074153.1@eisner> (raw)
In-Reply-To: 76uvjt$o0f$1@nnrp1.dejanews.com

In article <76uvjt$o0f$1@nnrp1.dejanews.com>, robert_dewar@my-dejanews.com writes:
> In article <36926c54.2583014@news.pacbell.net>,
>   tmoran@bix.com (Tom Moran) wrote:
>> NO.  'address is non-portable.  For instance, one of the
>> compilers I use regularly uses the full Intel
>> segment:offset form, all 32 bits, for 'address, vs 32
>> bits with (Win32's) implied segment for 'access.
> 
> First, I assume you mean full 48 bits for the
> segment:offset form, since that is what it is in 32-bit
> mode, and surely you are talking about 32-bit mode here.
> 
> If so, that is an extraordinarily bad choice for a compiler
> to make. Why? Because there is loads of legacy code around
> that assumes that an Address value can be passed to C as
> a pointer. A compiler that does not allow this usage is in
> my opinion badly flawed if you want to interface to C using
> it.

For the sake of portability, a compiler should at least flag
all such usages that are not guaranteed to work by the standard
against which it is written.  Not working on the development
platform is a very large hammer, but perhaps it is justified
for Ada 95 where there is a supported mechanism for calling
to some of the other standardized languages.

Also, representation of addresses can vary even on a single
platform, so sometimes you have to know how the other language
code (or portion thereof) was compiled to know how big _it_
thinks an address is.  It would not do to have the C code
stuff a 64 bit address into your 32 bit address variable.

Larry Kilgallen




  reply	other threads:[~1999-01-06  0:00 UTC|newest]

Thread overview: 55+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1999-01-04  0:00 How do I get this to work?? Chris Warwick
1999-01-05  0:00 ` Tom Moran
1999-01-05  0:00 ` Chris Warwick
1999-01-05  0:00   ` Stephen Leake
1999-01-05  0:00     ` Tom Moran
1999-01-06  0:00       ` robert_dewar
1999-01-06  0:00         ` Larry Kilgallen [this message]
1999-01-06  0:00           ` Tom Moran
1999-01-06  0:00         ` Tom Moran
1999-01-07  0:00           ` robert_dewar
1999-01-07  0:00             ` Tom Moran
1999-01-10  0:00               ` robert_dewar
1999-01-10  0:00                 ` Tom Moran
1999-01-10  0:00                   ` robert_dewar
1999-01-10  0:00                     ` Pat Rogers
1999-01-10  0:00                     ` Tom Moran
1999-01-10  0:00                   ` robert_dewar
1999-01-06  0:00         ` Tom Moran
1999-01-07  0:00           ` robert_dewar
1999-01-07  0:00             ` Tom Moran
1999-01-10  0:00               ` robert_dewar
1999-01-06  0:00     ` robert_dewar
1999-01-06  0:00     ` Chris Warwick
1999-01-06  0:00       ` Tom Moran
1999-01-07  0:00       ` robert_dewar
1999-01-09  0:00         ` Chris Warwick
1999-01-09  0:00           ` Simon Wright
1999-01-10  0:00             ` robert_dewar
1999-01-11  0:00               ` Simon Wright
1999-01-16  0:00               ` Chris Warwick
1999-01-16  0:00                 ` Matthew Heaney
1999-01-16  0:00                   ` robert_dewar
1999-01-18  0:00                   ` Chris Warwick
1999-01-18  0:00                     ` Matthew Heaney
1999-01-18  0:00                     ` robert_dewar
1999-01-18  0:00                       ` dennison
1999-01-18  0:00                       ` Tucker Taft
1999-01-19  0:00                         ` Chris Warwick
1999-01-19  0:00                           ` Tom Moran
1999-01-19  0:00                           ` robert_dewar
1999-01-20  0:00                             ` Jeff Carter
1999-01-20  0:00                               ` robert_dewar
1999-01-21  0:00                                 ` Chris Warwick
1999-01-19  0:00                           ` Stephen Leake
1999-01-18  0:00                     ` dennison
1999-01-16  0:00                 ` Simon Wright
1999-01-16  0:00                 ` robert_dewar
1999-01-18  0:00                   ` Chris Warwick
1999-01-18  0:00                     ` Matthew Heaney
1999-01-09  0:00           ` Brian Rogoff
1999-01-10  0:00             ` Matthew Heaney
1999-01-07  0:00       ` Stephen Leake
1999-01-08  0:00         ` Simon Wright
1999-01-06  0:00   ` Simon Wright
1999-01-22  0:00   ` Nick Roberts
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox