Bug 5743

Summary: autogen-native: do_compile failed
Product: [Build System, Metadata & Runtime] OE-Core Reporter: Robert Yang <liezhi.yang>
Component: coreAssignee: Robert Yang <liezhi.yang>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: Undecided CC: meta.mr.watcher, meta.watcher
Version: 1.6   
Target Milestone: 1.6 M3   
Hardware: x86   
OS: Multiple   
Whiteboard:
OS type for building Yocto: --- Type of Regression: ---
Verified: Documentation change: No (bug/feature does not impact docs)

Description Robert Yang 2014-01-21 09:58:21 UTC
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/include/guile/2.0/libguile/error.h:40:24: error: expected ')' before '__attribute__'
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/include/guile/2.0/libguile/error.h:40:24: error: expected ',' or ';' before ')' token
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/include/guile/2.0/libguile/error.h:42:27: error: expected ')' before '__attribute__'
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/include/guile/2.0/libguile/error.h:42:27: error: expected ',' or ';' before ')' token
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/include/guile/2.0/libguile/error.h:44:46: error: expected ')' before '__attribute__'
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/include/guile/2.0/libguile/error.h:44:46: error: expected ',' or ';' before ')' token
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/include/guile/2.0/libguile/error.h:46:30: error: expected ')' before '__attribute__'
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/include/guile/2.0/libguile/error.h:46:30: error: expected ',' or ';' before ')' token
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/include/guile/2.0/libguile/error.h:47:50: error: expected ')' before '__attribute__'
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/include/guile/2.0/libguile/error.h:47:50: error: expected ',' or ';' before ')' token
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/include/guile/2.0/libguile/error.h:49:6: error: expected ')' before '__attribute__'
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/include/guile/2.0/libguile/error.h:49:6: error: expected ',' or ';' before ')' token
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/include/guile/2.0/libguile/error.h:51:6: error: expected ')' before '__attribute__'
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/include/guile/2.0/libguile/error.h:51:6: error: expected ',' or ';' before ')' token
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/include/guile/2.0/libguile/error.h:52:44: error: expected ')' before '__attribute__'
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/include/guile/2.0/libguile/error.h:52:44: error: expected ',' or ';' before ')' token
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/include/guile/2.0/libguile/error.h:53:57: error: expected ')' before '__attribute__'
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/include/guile/2.0/libguile/error.h:53:57: error: expected ',' or ';' before ')' token
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/include/guile/2.0/libguile/error.h:55:21: error: expected ')' before '__attribute__'
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/include/guile/2.0/libguile/error.h:55:21: error: expected ',' or ';' before ')' token
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/include/guile/2.0/libguile/error.h:57:28: error: expected ')' before '__attribute__'
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/include/guile/2.0/libguile/error.h:57:28: error: expected ',' or ';' before ')' token
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/include/guile/2.0/libguile/error.h:59:41: error: expected ')' before '__attribute__'
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/include/guile/2.0/libguile/error.h:59:41: error: expected ',' or ';' before ')' token
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/include/guile/2.0/libguile/error.h:60:50: error: expected ')' before '__attribute__'
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/include/guile/2.0/libguile/error.h:60:50: error: expected ',' or ';' before ')' token
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/include/guile/2.0/libguile/error.h:62:19: error: expected ')' before '__attribute__'
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/include/guile/2.0/libguile/error.h:62:19: error: expected ',' or ';' before ')' token


Comments from RP:
a) you have gcc 4.6, I have gcc 4.8
b) the error appears to come from error.h in SCM_NORETURN definitions
c) the config log for autogen shows different results for
   "checking for working stdnoreturn.h", yes in my case, no in yours.

The definition of SCM_NORETURN is from __scm.h:
 
#define SCM_NORETURN __attribute__ ((noreturn))

and the dummy stdnoreturn.h that autogen would generate does:

#define noreturn _Noreturn

and then _Noreturn.h defines:

#  define _Noreturn __attribute__ ((__noreturn__))

so I think what is happening is there is double macro overlap with

#define SCM_NORETURN __attribute__ ((noreturn))

becoming

#define SCM_NORETURN __attribute__ ((__attribute__ ((__noreturn__))))