DragonFly BSD
DragonFly kernel List (threaded) for 2003-08
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

Re: __signed usage in ansi.h


From: Matthew Dillon <dillon@xxxxxxxxxxxxxxxxxxxx>
Date: Sun, 10 Aug 2003 14:07:23 -0700 (PDT)

    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,
    and __signed.

    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.

						-Matt

:OK, committed.
:
: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



[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]