1 /*============================================================================= 2 Boost.Wave: A Standard compliant C++ preprocessor library 3 http://www.boost.org/ 4 5 Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost 6 Software License, Version 1.0. (See accompanying file 7 LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 8 =============================================================================*/ 9 10 //O --c99 11 12 // Tests correctness of macro expansion inside #pragma directives 13 // Note: in C99 mode the STDC prefix in pragma's suppresses macro expansion 14 15 #define PRAGMA_BODY preprocessed pragma body 16 17 //R #line 19 "t_2_007.cpp" 18 //R #pragma some pragma body 19 #pragma some pragma body 20 //R #line 22 "t_2_007.cpp" 21 //R #pragma preprocessed pragma body 22 #pragma PRAGMA_BODY 23 //R #line 25 "t_2_007.cpp" 24 //R #pragma STDC some C99 standard pragma body 25 #pragma STDC some C99 standard pragma body 26 //R #line 28 "t_2_007.cpp" 27 //R #pragma STDC PRAGMA_BODY 28 #pragma STDC PRAGMA_BODY 29 30 //H 10: t_2_007.cpp(15): #define 31 //H 08: t_2_007.cpp(15): PRAGMA_BODY=preprocessed pragma body 32 //H 10: t_2_007.cpp(19): #pragma 33 //H 10: t_2_007.cpp(22): #pragma 34 //H 01: t_2_007.cpp(15): PRAGMA_BODY 35 //H 02: preprocessed pragma body 36 //H 03: preprocessed pragma body 37 //H 10: t_2_007.cpp(25): #pragma 38 //H 10: t_2_007.cpp(28): #pragma 39