t_9_011.cpp 1.1 KB

123456789101112131415161718192021222324252627282930
  1. /*=============================================================================
  2. Boost.Wave: A Standard compliant C++ preprocessor library
  3. http://www.boost.org/
  4. Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
  5. Software License, Version 1.0. (See accompanying file
  6. LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
  7. =============================================================================*/
  8. // Test, if additional whitespace is inserted at appropriate places.
  9. //O --variadics
  10. #define PRIMITIVE_CAT(a, b) a ## b
  11. #define PRIMITIVE_CAT3(a, b, c) a ## b ## c
  12. //R #line 18 "t_9_011.cpp"
  13. PRIMITIVE_CAT(1, ABC) //R 1 ABC
  14. PRIMITIVE_CAT3(ABC, 1, ABC) //R ABC1ABC
  15. //H 10: t_9_011.cpp(14): #define
  16. //H 08: t_9_011.cpp(14): PRIMITIVE_CAT(a, b)=a ## b
  17. //H 10: t_9_011.cpp(15): #define
  18. //H 08: t_9_011.cpp(15): PRIMITIVE_CAT3(a, b, c)=a ## b ## c
  19. //H 00: t_9_011.cpp(18): PRIMITIVE_CAT(1, ABC), [t_9_011.cpp(14): PRIMITIVE_CAT(a, b)=a ## b]
  20. //H 02: 1ABC
  21. //H 03: 1ABC
  22. //H 00: t_9_011.cpp(19): PRIMITIVE_CAT3(ABC, 1, ABC), [t_9_011.cpp(15): PRIMITIVE_CAT3(a, b, c)=a ## b ## c]
  23. //H 02: ABC1ABC
  24. //H 03: ABC1ABC