lkml.org 
[lkml]   [2007]   [May]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: any value to "NORET_TYPE" macro?
    On 5/22/07, Robert P. J. Day <rpjday@mindspring.com> wrote:
    > On Tue, 22 May 2007, John Anthony Kazos Jr. wrote:
    >
    > > > given that:
    > > >
    > > > $ grep -r "define.*NORET_TYPE" *
    > > > include/linux/ext4_fs.h:# define NORET_TYPE /**/
    > > > include/linux/linkage.h:#define NORET_TYPE /**/
    > > > include/linux/ext3_fs.h:# define NORET_TYPE /**/
    > > > $
    > > >
    > > > is there any obvious value to the 30 or so uses of that macro
    > > > sprinkled throughout the tree?
    > >
    > > Since it evaluates to absolutely empty code during pre-processing,
    > > there is no obvious value. The question is whether there is some odd
    > > hackish non-obvious value, I'd expect. (I'd also expect that to be
    > > another "no".)
    > >
    > > If something that evaluates to nothingness ("There was nothing
    > > left...not even a hole!") actually does anything, then somebody in
    > > the standards-compilers-users pipeline needs to be violently beaten
    > > for stupidity.
    >
    >
    > actually, one of the folks on the KJ list found this:
    >
    > http://www.ussg.iu.edu/hypermail/linux/kernel/9605/1957.html
    >
    > which speaks thusly:
    >
    > ...
    > -#if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 5)
    > -# define NORET_TYPE __volatile__
    > -# define ATTRIB_NORET /**/
    > -# define NORET_AND /**/
    > -#else
    > # define NORET_TYPE /**/
    > # define ATTRIB_NORET __attribute__((noreturn))
    > # define NORET_AND noreturn,
    > -#endif
    > ...
    >
    > so it looks like a thoroughly obsolete macro which can be tossed.
    > i'll make the patch and test it.

    AFAICT, NORET_TYPE must've been introduced to silence gcc _warnings_,
    and not do actually do anything useful that affects functionality in any way.
    So the way to "test" your patch would be to see if there is any increase /
    decrease in the number of *warnings* blurted out by gcc during kernel build
    (best would be to build with various gcc versions on various platforms :-)

    Satyam
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2007-05-22 16:13    [W:0.024 / U:1.592 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site