Volatile constants?

Christian Häggström 97nv46@skola.kiruna.se
Wed Mar 29 04:57:00 GMT 2000


The GCC manual says "An Inline Function is As Fast As a Macro",
but when I compile this, I got error "initializer element is not constant" on
's' initialization.

inline int abs1(int x) {
   return x<0 ? -x : x;
}
#define abs2(x) (x<0 ? -x : x)

int r = abs1(-7);
int s = abs2(-7);

Is there any option I have to pass?
g++ produces a constructor function for 's' but not for 'r'. Why?



More information about the Gcc mailing list