• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 // Tests empty __VA_ARGS__ expansion
11 
12 //O --variadics
13 
14 #define MACRO1(x, ...)  x -> __VA_ARGS__
15 #define MACRO2(...)     __VA_ARGS__
16 #define STR(...)        #__VA_ARGS__
17 
18 //R #line 19 "t_1_034.cpp"
19 MACRO1(1,)    //R 1 ->
20 MACRO2(1, 2)  //R 1, 2
21 STR()         //R ""
22 
23 //H 10: t_1_034.cpp(14): #define
24 //H 08: t_1_034.cpp(14): MACRO1(x, ...)=x -> __VA_ARGS__
25 //H 10: t_1_034.cpp(15): #define
26 //H 08: t_1_034.cpp(15): MACRO2(...)=__VA_ARGS__
27 //H 10: t_1_034.cpp(16): #define
28 //H 08: t_1_034.cpp(16): STR(...)=#__VA_ARGS__
29 //H 00: t_1_034.cpp(19): MACRO1(1,�), [t_1_034.cpp(14): MACRO1(x, ...)=x -> __VA_ARGS__]
30 //H 02: 1 ->
31 //H 03: 1 ->
32 //H 00: t_1_034.cpp(20): MACRO2(1, 2), [t_1_034.cpp(15): MACRO2(...)=__VA_ARGS__]
33 //H 02: 1, 2
34 //H 03: 1, 2
35 //H 00: t_1_034.cpp(21): STR(�), [t_1_034.cpp(16): STR(...)=#__VA_ARGS__]
36 //H 02: ""
37 //H 03: ""
38 
39 // boostinspect:noascii    this file needs to contain non-ASCII characters
40