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

Bug#366369: linux-kernel-headers: Mismatched conditional in compiler.h



Package: linux-kernel-headers
Version: 2.6.13+0rc3-2.1
Severity: normal
File: /usr/include/linux/compiler.h

Preprocessing the following C code:

#include <signal.h>
__attribute__((noinline))

produces

__attribute__(())

which breaks user code that expects that to successfully uninline
function calls.

The preprocessor conditionals in compiler.h is messed up.  The
#endif /* __KERNEL__ */ at line 169 actually matches
#ifndef __ASSEMBLY__ on line 4.  In turn, the #if !defined(__KERNEL__)
matches #endif /* __ASSEMBLY__ */ on line 92.  I think moving line 92
to line 170 gives the intended code, but I'm not sure.

-- System Information:
Debian Release: testing/unstable
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: i386 (i686)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.6.15+2006.03.18
Locale: LANG=ja_JP.eucJP, LC_CTYPE=ja_JP.eucJP (charmap=EUC-JP) (ignored: LC_ALL set to ja_JP.eucJP)

-- no debconf information



Reply to: