Need someone to look at a regression
Kamil Iskra
kamil@dwd.interkom.pl
Mon Aug 17 19:53:00 GMT 1998
On Sat, 15 Aug 1998, Jeffrey A Law wrote:
> My simplistic viewpoint is
>
> typedef int SFtype __attribute__ ((mode (SF)));
>
>
> Is bogus -- the type is actually specified by the attribute and the
> "int" is neither used nor wanted.
Definitely "int" and "__attribute__ ((mode (SF)))" on the same typedef
clash.
However, "float" and "__attribute__ ((mode (SF)))" certainly do not.
IMHO, saying that:
typedef SFtype __attribute__ ((mode (SF)));
gives all the type information it needs is wrong. Sure, in case of
floating type there is no much else you can do with it apart from storing
a floating pointer number, but compare it with:
typedef SItype __attribute__ ((mode (SI)));
Now, what do I want? An integer? A pointer? Or perhaps a 4-byte
structure? GCC will use SImode for all of them on my machine.
Modes provide only a subset of information than types do. Just compare the
mode-based alias analysis vs. the type-based one.
Therefore, I think that GCC should warn when the mode has been specified,
but the type has not. Such a new type is simply incomplete.
/ Kamil Iskra AmigaOS Linux/i386 Linux/m68k \
| GeekGadgets GCC maintainer UNIX system administrator |
| iskra@student.uci.agh.edu.pl kiskra@ernie.icslab.agh.edu.pl |
\ kamil@dwd.interkom.pl http://student.uci.agh.edu.pl/~iskra /
More information about the Gcc
mailing list