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