compiler.h: Move c++ standard feature out of compiler specific section
and correct the code indent Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
This commit is contained in:
parent
0c223998c7
commit
fb996ebaa9
@ -31,6 +31,36 @@
|
||||
* Pre-processor Definitions
|
||||
****************************************************************************/
|
||||
|
||||
/* ISO C11 supports anonymous (unnamed) structures and unions, added in
|
||||
* GCC 4.6 (but might be suppressed with -std= option). ISO C++11 also
|
||||
* adds un-named unions, but NOT unnamed structures (although compilers
|
||||
* may support them).
|
||||
*
|
||||
* CAREFUL: This can cause issues for shared data structures shared between
|
||||
* C and C++ if the two versions do not support the same features.
|
||||
* Structures and unions can lose binary compatibility!
|
||||
*
|
||||
* NOTE: The NuttX coding standard forbids the use of unnamed structures and
|
||||
* unions within the OS.
|
||||
*/
|
||||
|
||||
#undef CONFIG_HAVE_ANONYMOUS_STRUCT
|
||||
#undef CONFIG_HAVE_ANONYMOUS_UNION
|
||||
|
||||
#if (defined(__cplusplus) && __cplusplus >= 201103L) || \
|
||||
(defined(__STDC_VERSION__) && __STDC_VERSION__ >= 201112L)
|
||||
# define CONFIG_HAVE_ANONYMOUS_STRUCT 1
|
||||
# define CONFIG_HAVE_ANONYMOUS_UNION 1
|
||||
#endif
|
||||
|
||||
/* C++ support */
|
||||
|
||||
#if defined(__cplusplus) && __cplusplus >= 201402L
|
||||
# define CONFIG_HAVE_CXX14 1
|
||||
#else
|
||||
# undef CONFIG_HAVE_CXX14
|
||||
#endif
|
||||
|
||||
/* GCC-specific definitions *************************************************/
|
||||
|
||||
#ifdef __GNUC__
|
||||
@ -77,14 +107,6 @@
|
||||
# define CONFIG_HAVE_BUILTIN_POPCOUNT 1
|
||||
# endif
|
||||
|
||||
/* C++ support */
|
||||
|
||||
#if defined(__cplusplus) && __cplusplus >= 201402L
|
||||
# define CONFIG_HAVE_CXX14 1
|
||||
#else
|
||||
# undef CONFIG_HAVE_CXX14
|
||||
#endif
|
||||
|
||||
/* Attributes
|
||||
*
|
||||
* GCC supports weak symbols which can be used to reduce code size because
|
||||
@ -351,28 +373,6 @@
|
||||
|
||||
# endif
|
||||
|
||||
/* ISO C11 supports anonymous (unnamed) structures and unions, added in
|
||||
* GCC 4.6 (but might be suppressed with -std= option). ISO C++11 also
|
||||
* adds un-named unions, but NOT unnamed structures (although compilers
|
||||
* may support them).
|
||||
*
|
||||
* CAREFUL: This can cause issues for shared data structures shared between
|
||||
* C and C++ if the two versions do not support the same features.
|
||||
* Structures and unions can lose binary compatibility!
|
||||
*
|
||||
* NOTE: The NuttX coding standard forbids the use of unnamed structures and
|
||||
* unions within the OS.
|
||||
*/
|
||||
|
||||
# undef CONFIG_HAVE_ANONYMOUS_STRUCT
|
||||
# undef CONFIG_HAVE_ANONYMOUS_UNION
|
||||
|
||||
# if (defined(__cplusplus) && __cplusplus >= 201103L) || \
|
||||
(defined(__STDC_VERSION__) && __STDC_VERSION__ >= 201112L)
|
||||
# define CONFIG_HAVE_ANONYMOUS_STRUCT 1
|
||||
# define CONFIG_HAVE_ANONYMOUS_UNION 1
|
||||
# endif
|
||||
|
||||
/* Indicate that a local variable is not used */
|
||||
|
||||
# define UNUSED(a) ((void)(1 || (a)))
|
||||
@ -412,10 +412,6 @@
|
||||
|
||||
# pragma disable_warning 85
|
||||
|
||||
/* C++ support */
|
||||
|
||||
# undef CONFIG_HAVE_CXX14
|
||||
|
||||
/* Attributes
|
||||
*
|
||||
* SDCC does not support weak symbols
|
||||
@ -477,11 +473,6 @@
|
||||
|
||||
# define reentrant_function __reentrant
|
||||
|
||||
/* ISO C11 supports anonymous (unnamed) structures and unions. Does SDCC? */
|
||||
|
||||
# undef CONFIG_HAVE_ANONYMOUS_STRUCT
|
||||
# undef CONFIG_HAVE_ANONYMOUS_UNION
|
||||
|
||||
/* Indicate that a local variable is not used */
|
||||
|
||||
# define UNUSED(a) ((void)(1 || (a)))
|
||||
@ -564,10 +555,6 @@
|
||||
# define IOBJ
|
||||
# define IPTR
|
||||
|
||||
/* C++ support */
|
||||
|
||||
# undef CONFIG_HAVE_CXX14
|
||||
|
||||
/* Attributes
|
||||
*
|
||||
* The Zilog compiler does not support weak symbols
|
||||
@ -655,13 +642,6 @@
|
||||
# endif
|
||||
# endif
|
||||
|
||||
/* ISO C11 supports anonymous (unnamed) structures and unions. Zilog does
|
||||
* not support C11
|
||||
*/
|
||||
|
||||
# undef CONFIG_HAVE_ANONYMOUS_STRUCT
|
||||
# undef CONFIG_HAVE_ANONYMOUS_UNION
|
||||
|
||||
/* Indicate that a local variable is not used */
|
||||
|
||||
# define UNUSED(a) ((void)(1 || (a)))
|
||||
@ -729,17 +709,6 @@
|
||||
# pragma section = ".data_init"
|
||||
# pragma section = ".text"
|
||||
|
||||
/* C++ support */
|
||||
|
||||
# undef CONFIG_HAVE_CXX14
|
||||
|
||||
/* ISO C11 supports anonymous (unnamed) structures and unions. Does
|
||||
* ICCARM?
|
||||
*/
|
||||
|
||||
# undef CONFIG_HAVE_ANONYMOUS_STRUCT
|
||||
# undef CONFIG_HAVE_ANONYMOUS_UNION
|
||||
|
||||
/* Indicate that a local variable is not used */
|
||||
|
||||
# define UNUSED(a) ((void)(1 || (a)))
|
||||
@ -761,7 +730,6 @@
|
||||
# undef CONFIG_HAVE_FUNCTIONNAME
|
||||
# undef CONFIG_HAVE_FILENAME
|
||||
# undef CONFIG_HAVE_WEAKFUNCTIONS
|
||||
# undef CONFIG_HAVE_CXX14
|
||||
# define weak_alias(name, aliasname)
|
||||
# define weak_data
|
||||
# define weak_function
|
||||
@ -802,8 +770,6 @@
|
||||
# define CONFIG_HAVE_FLOAT 1
|
||||
# undef CONFIG_HAVE_DOUBLE
|
||||
# undef CONFIG_HAVE_LONG_DOUBLE
|
||||
# undef CONFIG_HAVE_ANONYMOUS_STRUCT
|
||||
# undef CONFIG_HAVE_ANONYMOUS_UNION
|
||||
|
||||
# define UNUSED(a) ((void)(1 || (a)))
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user