From 881e947ebd7a09e9620d1c3ccbc123eec43871dc Mon Sep 17 00:00:00 2001 From: Jonathan Wakely Date: Thu, 6 Dec 2018 19:21:32 +0000 Subject: [PATCH] Fix PR libstdc++/64883 Darwin headers use always_inline so don't test that Because darwin system headers use always_inline rather than __always_inline__ the libstdc++ test will fail, even if our headers only use the reserved form of the attribute. Don't test it on Darwin, and assume that testing on other targets will catch any accidental misuses in libstdc++ headers. 2018-12-06 Jonathan Wakely Iain Sandoe PR libstdc++/64883 * testsuite/17_intro/headers/c++1998/all_attributes.cc: Don't test always_inline on Darwin. * testsuite/17_intro/headers/c++2011/all_attributes.cc: Likewise. * testsuite/17_intro/headers/c++2014/all_attributes.cc: Likewise. * testsuite/17_intro/headers/c++2017/all_attributes.cc: Likewise. * testsuite/17_intro/headers/c++2020/all_attributes.cc: Likewise. Co-Authored-By: Iain Sandoe From-SVN: r266863 --- libstdc++-v3/ChangeLog | 11 +++++++++++ .../17_intro/headers/c++1998/all_attributes.cc | 2 +- .../17_intro/headers/c++2011/all_attributes.cc | 4 ++-- .../17_intro/headers/c++2014/all_attributes.cc | 2 +- .../17_intro/headers/c++2017/all_attributes.cc | 4 ++-- .../17_intro/headers/c++2020/all_attributes.cc | 4 ++-- 6 files changed, 19 insertions(+), 8 deletions(-) diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index bfc1ae7fe59..72feab11d9d 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,14 @@ +2018-12-06 Jonathan Wakely + Iain Sandoe + + PR libstdc++/64883 + * testsuite/17_intro/headers/c++1998/all_attributes.cc: Don't test + always_inline on Darwin. + * testsuite/17_intro/headers/c++2011/all_attributes.cc: Likewise. + * testsuite/17_intro/headers/c++2014/all_attributes.cc: Likewise. + * testsuite/17_intro/headers/c++2017/all_attributes.cc: Likewise. + * testsuite/17_intro/headers/c++2020/all_attributes.cc: Likewise. + 2018-12-03 Edward Smith-Rowland <3dw4rd@verizon.net> PR libstdc++/88341 - Complex norm doesn't compile with C++11 diff --git a/libstdc++-v3/testsuite/17_intro/headers/c++1998/all_attributes.cc b/libstdc++-v3/testsuite/17_intro/headers/c++1998/all_attributes.cc index b6ff8c47d43..0e7dcf736f2 100644 --- a/libstdc++-v3/testsuite/17_intro/headers/c++1998/all_attributes.cc +++ b/libstdc++-v3/testsuite/17_intro/headers/c++1998/all_attributes.cc @@ -21,9 +21,9 @@ // Ensure the library only uses the __name__ form for attributes. // Don't test 'const' because it is reserved anyway. #define abi_tag 1 -#define always_inline 1 #ifndef __APPLE__ // darwin headers use these, see PR 64883 +# define always_inline 1 # define deprecated 1 # define noreturn 1 # define visibility 1 diff --git a/libstdc++-v3/testsuite/17_intro/headers/c++2011/all_attributes.cc b/libstdc++-v3/testsuite/17_intro/headers/c++2011/all_attributes.cc index 33b759f7399..82f372d8294 100644 --- a/libstdc++-v3/testsuite/17_intro/headers/c++2011/all_attributes.cc +++ b/libstdc++-v3/testsuite/17_intro/headers/c++2011/all_attributes.cc @@ -21,11 +21,11 @@ // Ensure the library only uses the __name__ form for attributes. // Don't test 'const' and 'noreturn' because they are reserved anyway. #define abi_tag 1 -#define always_inline 1 #ifndef __APPLE__ // darwin headers use these, see PR 64883 -# define visibility 1 +# define always_inline 1 # define deprecated 1 +# define visibility 1 #endif #define packed 1 #define pure 1 diff --git a/libstdc++-v3/testsuite/17_intro/headers/c++2014/all_attributes.cc b/libstdc++-v3/testsuite/17_intro/headers/c++2014/all_attributes.cc index dbea4feec55..d6cc2c9f9db 100644 --- a/libstdc++-v3/testsuite/17_intro/headers/c++2014/all_attributes.cc +++ b/libstdc++-v3/testsuite/17_intro/headers/c++2014/all_attributes.cc @@ -21,9 +21,9 @@ // Ensure the library only uses the __name__ form for attributes. // Don't test 'const' and 'noreturn' because they are reserved anyway. #define abi_tag 1 -#define always_inline 1 #ifndef __APPLE__ // darwin headers use these, see PR 64883 +# define always_inline 1 # define deprecated 1 # define visibility 1 #endif diff --git a/libstdc++-v3/testsuite/17_intro/headers/c++2017/all_attributes.cc b/libstdc++-v3/testsuite/17_intro/headers/c++2017/all_attributes.cc index 0a92ae683a4..a6eff0cc04c 100644 --- a/libstdc++-v3/testsuite/17_intro/headers/c++2017/all_attributes.cc +++ b/libstdc++-v3/testsuite/17_intro/headers/c++2017/all_attributes.cc @@ -21,9 +21,9 @@ // Ensure the library only uses the __name__ form for attributes. // Don't test 'const' and 'noreturn' because they are reserved anyway. #define abi_tag 1 -#define always_inline 1 #ifndef __APPLE__ -// darwin headers use this, see PR 64883 +// darwin headers use these, see PR 64883 +# define always_inline 1 # define visibility 1 #endif #define packed 1 diff --git a/libstdc++-v3/testsuite/17_intro/headers/c++2020/all_attributes.cc b/libstdc++-v3/testsuite/17_intro/headers/c++2020/all_attributes.cc index 766c7b68617..2eb46ea36f8 100644 --- a/libstdc++-v3/testsuite/17_intro/headers/c++2020/all_attributes.cc +++ b/libstdc++-v3/testsuite/17_intro/headers/c++2020/all_attributes.cc @@ -21,9 +21,9 @@ // Ensure the library only uses the __name__ form for attributes. // Don't test 'const' and 'noreturn' because they are reserved anyway. #define abi_tag 1 -#define always_inline 1 #ifndef __APPLE__ -// darwin headers use this, see PR 64883 +// darwin headers use these, see PR 64883 +# define always_inline 1 # define visibility 1 #endif #define packed 1