#define square(x) (x*x) // Becareful !!! int main( int argc, char* argv[] ) { double a, b, z; b = square(a); z = square( a+b ); // Problem !!! }