Re: CINT on IRIX64

Masaharu Goto (gotom@hpyiddq.jpn.hp.com)
Thu, 26 Mar 1998 8:56:12 JST


Dear Victor,

I need more information. So far, I've never experienced this kind of
problem in other platforms.

As a hint, will you give me struct bit alignment information of SGI
with -32 and -n32 option. With following struct G__value, I'd like
to know offset of each data member.

struct G__p2p {
long i;
int reftype;
};

typedef struct {
union {
double d;
long i;
struct G__p2p reftype;
} obj;
int type;
int tagnum;
int typenum;
long ref;
} G__value;

Masaharu Goto

> Dear Masa,
>
> I have installed ROOT/CINT on IRIX64. I did it with mode -32
> which compatible with SGI IRIX 5.3 machine :
> short = 2 bytes
> int = 4 bytes
> long = 4 bytes
> float = 4 bytes
> double = 8 bytes
> pointer = 4 bytes
>
> But default mode there is -n32 and CERNLIB compiled with this mode.
> These modes (-32 and -n32) are incompatible one with other. As a result
> you can not link CERNLIB with ROOT.
>
> I tryed to install ROOT/CINT with -n32 mode.
> Compilation and link OK. But when I run CINT
>
>
> cint> printf("ASDF")
> Error: printf param[0]=0 must not be 0 FILE:/var/tmp/aaaa004vV LINE:1
> *** Interpreter error recovered ***
> cint>
>
> This happens not only with printf but with any function.
> So for CINT is something different on IRIX64. What it coud be?
> Sizes of all types are the same for -32 and -n32.
>
> Thank you in advance.
>
> Cheers Victor