This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Chill vs. Pascal sets (was: undefined reference to `__setbits')
Per Bothner wrote:
>
> This was also discussed in my previous message. Basically, in
> Chill there is no need to align "powersets" (the Chill term for
> Pascal "sets"), because you cannot do operations on powersets
> with incompatible domains. However, if Pascal needs sets to be
> aligned there is no reason not to align Chill powersets as well.
> Simplicity and binary compatibility between the languages
> would argue in favor doing that. The only downside is infrequent
> allocation of an extra word. I suspect if there is anyone
> using the public version of GNU Chill, they would be happy to
> sacrifice that for compatibility with Pascal.
That's good news for us. :)
> > * What's the issue with `BYTES_BIG_ENDIAN'? Why don't we
> > consistently use the mask `1 << bitpos' on all machines to
> > access the `bitpos'th bit in a word?
>
> My previous message discusses this in depth. For true big-endian
> consistency on a big-endian machine, one should define the 0'th bit
> as the *high-order* bit. However, I doubt the consistency is
> worth the extra complication, so I agree we should just use
> 1<<bitpos.
Okay.
> > * In `store_constructor()' (expr.c) there should be a
> > comment indicating that the `__setbits()' function has to
> > be supported by the language-specific run time library.
> > (Since there are different values of `BITS_PER_SET_UNIT'
> > and `SET_ALIGNMENT', this is indeed language-specific.)
>
> But if we agree that Pascal and Chill shoudl use the same values for
> BITS_PER_SET_UNIT and SET_ALIGNMENT (which should probably be the same),
> there is no problem, is there?
Then there is no problem. At least not for me; you would
probably have to change some code in Chill ...
Okay, I am prepared to put Pascal sets back to units of
BITS_PER_WORD. :)
How do we proceed from now? I think it's reasonable
when you start changing Chill and the GCC backend to use
BITS_PER_WORD-aligned sets, and then I adapt GPC to that
backend. Okay?
Peter
--
http://home.pages.de/~Peter.Gerwinski/ - G-N-U GmbH: http://www.g-n-u.de
Maintainer GNU Pascal - http://home.pages.de/~GNU-Pascal/ - gpc-19990118
GnuPG key fingerprint: 9E7C 0FC4 8A62 5536 1730 A932 9834 65DB 2143 9422
keys: ftp://ftp.gerwinski.de/pub/keys/ - AntiSpam: http://spam.abuse.net