I\'m creating a macro in C++ that declares a variable and assigns some value to it. Depending on how the macro is used, the second occurrence of the macro can override the v
use __COUNTER__ (works on gcc4.8, clang 3.5 and Intel icc v13, MSVC 2015)
__COUNTER__
#define CONCAT_(x,y) x##y #define CONCAT(x,y) CONCAT_(x,y) #define uniquename static bool CONCAT(sb_, __COUNTER__) = false