lkml.org 
[lkml]   [2004]   [Sep]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    SubjectRe: __attribute__((always_inline)) fiasco
    From
    Date
    On Thu, 2004-09-23 at 12:50, William Lee Irwin III wrote:
    > On Thu, Sep 23, 2004 at 12:26:18PM -0400, Albert Cahalan wrote:
    > > #define INLINE
    > > #define INLINE inline
    > > #define INLINE static inline // an oxymoron
    > > #define INLINE extern inline // an oxymoron
    > > #define INLINE __force_inline
    > > #define INLINE __attribute__((always_inline))
    > > #define INLINE _Pragma("inline")
    > > #define INLINE __inline_or_die_you_foul_compiler
    > > #define INLINE _Please inline
    >
    > The // apart from being a C++ ism (screw C99; it's still non-idiomatic)

    Once you get over the initial jolt of seeing new syntax,
    you'll find that C99 comments are clearly superior.

    Even with block comments above functions, you'll typically
    save two lines of screen space. (and 7 bytes)

    I think the only trouble is assembly code abusing
    the C (note: "C", not "assembly") pre-processor.

    > will cause spurious ignorance of the remainder of the line, which is
    > often very important. e.g.
    >
    > static INLINE int lock_need_resched(spinlock_t *lock)
    > {

    Huh? Sure? It works for me:

    albert 0 /tmp$ cat slash.c
    #define MAIN main // test C99 comment
    int MAIN (int argc, char *argv[]){
    (void)argc;
    (void)argv;
    return 0;
    }
    albert 0 /tmp$ gcc -Wall -W -O2 slash.c
    albert 0 /tmp$ ./a.out
    albert 0 /tmp$ gcc -v
    Reading specs from /usr/lib/gcc-lib/powerpc-linux/3.2.3/specs
    Configured with: ../src/configure -v --enable-languages=c,c++,java,f77,objc,ada --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-gxx-include-dir=/usr/include/c++/3.2 --enable-shared --with-system-zlib --enable-nls --without-included-gettext --enable-__cxa_atexit --enable-clocale=gnu --enable-java-gc=boehm --enable-objc-gc powerpc-linux
    Thread model: posix
    gcc version 3.2.3 20030415 (Debian prerelease)


    -
    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: 2005-03-22 14:06    [W:0.053 / U:0.044 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site