blob: 2ac9ca865fe1e422e681e4fb13a1b6e893b826ab [file] [log] [blame]
/*=============================================================================
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)
=============================================================================*/
// Tests concatination of more than two parameters
#define CAT3_1(a, b, c) a##b##c
#define CAT3_2(a, b, c) a ## b ## c
#define CAT4_1(a, b, c, d) a##b##c##d
#define CAT4_2(a, b, c, d) a ## b ## c ## d
//R #line 19 "t_1_029.cpp"
CAT3_1(1, 0, 0) //R 100
CAT3_2(1, 0, 0) //R 100
//R
CAT4_1(1, 0, 0, 2) //R 1002
CAT4_2(1, 0, 0, 2) //R 1002
//H 10: t_1_029.cpp(12): #define
//H 08: t_1_029.cpp(12): CAT3_1(a, b, c)=a##b##c
//H 10: t_1_029.cpp(13): #define
//H 08: t_1_029.cpp(13): CAT3_2(a, b, c)=a ## b ## c
//H 10: t_1_029.cpp(15): #define
//H 08: t_1_029.cpp(15): CAT4_1(a, b, c, d)=a##b##c##d
//H 10: t_1_029.cpp(16): #define
//H 08: t_1_029.cpp(16): CAT4_2(a, b, c, d)=a ## b ## c ## d
//H 00: t_1_029.cpp(19): CAT3_1(1, 0, 0), [t_1_029.cpp(12): CAT3_1(a, b, c)=a##b##c]
//H 02: 100
//H 03: 100
//H 00: t_1_029.cpp(20): CAT3_2(1, 0, 0), [t_1_029.cpp(13): CAT3_2(a, b, c)=a ## b ## c]
//H 02: 100
//H 03: 100
//H 00: t_1_029.cpp(22): CAT4_1(1, 0, 0, 2), [t_1_029.cpp(15): CAT4_1(a, b, c, d)=a##b##c##d]
//H 02: 1002
//H 03: 1002
//H 00: t_1_029.cpp(23): CAT4_2(1, 0, 0, 2), [t_1_029.cpp(16): CAT4_2(a, b, c, d)=a ## b ## c ## d]
//H 02: 1002
//H 03: 1002