0148名無しさん@お腹いっぱい。
NGNGとりあえず、問題はここまで絞り込んだんだけど、
ここからがぜんぜんわかりません。
Sun.docs.comにこういう話ってでてないよね?
Solaris9(64bit)で以下のコードのプログラムを動かしたとき、
必ずsegmentation faultがおこる。
struct {
inta;
shortb;
}A;
typedef A *PA;
int main(){
PApa;
intnum=3;
pa = (PA)malloc(sizeof(PA)*num);
pa[0].a = 1;//ここでsegmentation fault
return 0;
}
このとき、ILP32ではうまくいくが、LP64(xarch=v9)ではうまくいかない。
mallocが問題だと思うんだけど、どう問題なのかがよくわからない。
Solaris9の64bitプログラムに詳しい方、ぜひぜひ教えてください。
よろしくお願いします。