"test.c", line 3.5: 1506-009 (S) Bit-field test1 must be of type signe

댓글 0

▶ Tuxedo/오류집(Tuxedo)

2010. 8. 18.

현상 : "test.c", line 3.5: 1506-009 (S) Bit-field test1 must be of type signed int, unsigned int or int.
       "test.c", line 4.5: 1506-009 (S) Bit-field test2 must be of type signed int, unsigned int or int.
       "test.c", line 5.5: 1506-009 (S) Bit-field test3 must be of type signed int, unsigned int or int.
 

원인 : Solaris, HP/UX, Linux에서는 에러 메시지 없이 컴파일되는데 AIX에서 에러 메시지를 내보내며 xlc로 컴파일이 안 된다.
 

조치 : bit field를 char이 아닌 int로 바꾸면 컴파일이 된다.
       xlc 컴파일러로는 비트필드로 'unsigned char'를 사용할 수 없기 때문에 대신 'unsigned int'를 사용해야 한다. xlc는 ANSI가 아닌 extended mode 상태에서 'unsigned char'를 'unsigned int'로 자동으로 변환한다.

사업자 정보 표시
주식회사 누리아이티 | 이종일 | 서울시 강서구 공항대로 186 로뎀타워 617호 | 사업자 등록번호 : 258-87-00901 | TEL : 010-2771-4076 | Mail : mc529@nurit.co.kr | 사이버몰의 이용약관 바로가기