added inlining for #define expressions
fixed type inference for constants