Thank you for reporting problems. Here is my comment.
>#define MAX(a, b) ((a) > (b) ? (a) : (b))
>
>void rooterror1(void){
>
> int i,j,k,l,m;
>
> i = 1;
> j = 2;
> k = 3;
> l = 4;
>
> m = MAX(l,MAX(k,MAX(j,i)));
> .
his is cint limitation. Cint limitations in preprocessor macro handling
when used without -p option. I recommend avoiding macro as much as possible.
Above case can be replaces by template.
//#define MAX(a, b) ((a) > (b) ? (a) : (b))
template<class T> T MAX(T a, T b) { return ((a) > (b) ? (a) : (b)); }
>#define number 10/2 /* feet per second */
I think this is a bug. I need fix this. Again, I recommend following
definition instead. But this one seems so commmon.
const int number = 10/2;
>void rooterror3(void){
> static Double_t **j,i=3.0;
>
> printf("i=%f\n",i);
>
> i=4.0;
> printf("i=%f\n",i);
>}
I can not reproduce the problem. I recently fixed a but of local 'static'
variable initialization. I tried above source with the latest version and
it works fine. Maybe the fix did good for this problem already.
Masaharu Goto