/*=============================================================================
A Standard compliant C++ preprocessor
Copyright (c) 2001-2004 Hartmut Kaiser
http://spirit.sourceforge.net/
Use, modification and distribution is subject to 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)
See Copyright.txt for full acknowledgements.
=============================================================================*/
#define CAT(a, b) a ## b
#define ARGS (1, 2)
CAT ARGS
//E #line 19 "test_files/test8.cpp"
//E CAT (1, 2)
// not 12
#define INVOKE(macro) macro ARGS
INVOKE(CAT)
//E CAT (1, 2)
// not 12
#define EXPAND(x) x
EXPAND(CAT ARGS)
//E 12
// because of rescanning
//R 0