| /*============================================================================= |
| Boost.Wave: A Standard compliant C++ preprocessor library |
| http://www.boost.org/ |
| |
| Copyright (c) 2001-2010 Hartmut Kaiser. Distributed under the Boost |
| Software License, Version 1.0. (See accompanying file |
| LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) |
| =============================================================================*/ |
| |
| // Test if macros at not used parameter positions are expanded correctly |
| |
| #define MACRO() /**/ |
| #define ID(x) // parameter not used at all |
| #define CAT(x) X ## x // expanded parameter not used |
| |
| ID( MACRO(*) ) |
| //R #line 19 "t_1_011.cpp" |
| //R XMACRO(*) |
| CAT( MACRO(*) ) |
| |
| //H 10: t_1_011.cpp(12): #define |
| //H 08: t_1_011.cpp(12): MACRO()= |
| //H 10: t_1_011.cpp(13): #define |
| //H 08: t_1_011.cpp(13): ID(x)= |
| //H 10: t_1_011.cpp(14): #define |
| //H 08: t_1_011.cpp(14): CAT(x)=X ## x |
| //H 00: t_1_011.cpp(16): ID( MACRO(*) ), [t_1_011.cpp(13): ID(x)=] |
| //H 02: |
| //H 03: _ |
| //H 00: t_1_011.cpp(19): CAT( MACRO(*) ), [t_1_011.cpp(14): CAT(x)=X ## x] |
| //H 02: XMACRO(*) |
| //H 03: XMACRO(*) |