__signed usage in ansi.h
dillon at apollo.backplane.com
Sun Aug 10 14:08:25 PDT 2003
The GCC double-underscore entities primarily exist to create a portable
environment that is not effected by things like -ansi, -pedantic, and
other compatibility options, and to allow environments to be compiled
using non-GCC C compilers.
However, there's a point where it just doesn't make sense to maintain
backwards compatibility all the way to K&R C, which is what __volatile
does. So in my view we can strip the '__' off of __volatile, __const,
What we can't do is replace things like '__inline' with 'inline'. We
need to keep __inline intact in order to maintain compatibility with
compilers that do not support inlining (where one can #define __inline
to nothing and the code then becomes static-like). It is simply too
dangerous to force those environments to define 'inline' to nothing,
which is why __inline exists.
:Another question some of you might be able to answer me;
:what use is using __volatile and __const over volatile and const?
:I mean, I know what they do and what they are there for, but giving
:Rob's impending work of changing all __P(()) to normal ISO C prototyping
:it makes no use to still have type wrappers like this lingering around
:as well then.
:Or am I missing something subtle here?
:Jeroen Ruigrok van der Werven <asmodai(at)wxs.nl> / asmodai
More information about the Kernel