t_1_015.cpp 885 B

12345678910111213141516171819202122232425
  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. // Tests, if the recursive replacement of a macro is correctly handled
  9. #define f(x) (4-f(x))
  10. //R #line 16 "t_1_015.cpp"
  11. //R (4-f((4-f(1))))
  12. f(f(1))
  13. //H 10: t_1_015.cpp(12): #define
  14. //H 08: t_1_015.cpp(12): f(x)=(4-f(x))
  15. //H 00: t_1_015.cpp(16): f(f(1)), [t_1_015.cpp(12): f(x)=(4-f(x))]
  16. //H 00: t_1_015.cpp(16): f(1), [t_1_015.cpp(12): f(x)=(4-f(x))]
  17. //H 02: (4-f(1))
  18. //H 03: (4-f(1))
  19. //H 02: (4-f((4-f(1))))
  20. //H 03: (4-f((4-f(1))))