t_1_009.cpp 1.0 KB

1234567891011121314151617181920212223242526272829
  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 wrongly placed '##' operators are detected
  9. #define TEST1() A ## B
  10. #define TEST2() ## A
  11. //R #line 17 "t_1_009.cpp"
  12. //R AB
  13. TEST1()
  14. //E t_1_009.cpp(19): error: ill formed preprocessing operator: concat ('##')
  15. TEST2() // error
  16. //H 10: t_1_009.cpp(12): #define
  17. //H 08: t_1_009.cpp(12): TEST1()=A ## B
  18. //H 10: t_1_009.cpp(13): #define
  19. //H 08: t_1_009.cpp(13): TEST2()=## A
  20. //H 00: t_1_009.cpp(17): TEST1(), [t_1_009.cpp(12): TEST1()=A ## B]
  21. //H 02: AB
  22. //H 03: AB
  23. //H 00: t_1_009.cpp(19): TEST2(), [t_1_009.cpp(13): TEST2()=## A]
  24. //H 18: boost::wave::preprocess_exception