tail head cat sleep
QR code linking to this page

Man page  — COMPILE_ET

명칭

compile_et – 에러 테이블 컴파일러

내용

서식


compile_et file

해설

compile_et (은)는, 에러 코드명과 거기에 대응하는 메세지를 리스트업 한 테이블을, com_err(3) 프로그램 라이브러리와 함께 이용하는데 적합한 C 의 원시 파일로 변환합니다.

원시 파일명은 말미가 ``.et''로 끝나지 않으면 안됩니다. 이 파일은 이하의 것으로부터 완성됩니다. 우선, 에러 코드 테이블명의 선언(4 캐릭터까지):

error_table name

계속되어 이하의 형식의 엔트리(256 엔트리까지):

error_code name, " string "

그리고 마지막에 테이블의 마지막을 나타내는 다음의 행입니다:

end

위의 테이블명은 써브루틴명 initialize_XXXX_error_table (을)를 구축하는데 이용됩니다. 이 써브루틴은 com_err(3) 프로그램 라이브러리가 에러 테이블을 인식하기 위해서 불려 갈 필요가 있습니다.

여기서 정의된 여러가지 에러 코드에는, 연속한 승순의 번호(최초의 수는, 테이블명의 해쉬 함수로서 요구된, 어느 큰 수입니다)가 할당할 수 있습니다. 따라서, 호환성을 유지하기 위해서(때문에), 새로운 코드는 기존의 테이블의 말미에게만 추가해, 또 기존의 코드는 테이블에서 삭제하지 않게 해야 합니다.

이 테이블로 정의된 이름은 C 의 헤더 파일에 놓여져 프리프로세서 지시문에 의해 최대 32 비트의 크기의 정정수로서 정의됩니다.

동시에 C 의 원시 파일이 생성됩니다. 이 파일은 컴파일 되어 이러한 에러 코드를 참조하는 오브젝트 파일과 링크 됩니다. 이 C 원시 파일에는, 메세지 텍스트와 초기화 routine가 포함됩니다. 어느 C 의 파일도, 오리지날 원시 파일 말미의 ``.et''를 ``. c'' 및 ``. h''로 옮겨놓은 이름이 됩니다.

원시 파일중의 ``#''는 코멘트 캐릭터로서 다루어져 거기로부터 줄 끝까지의 텍스트는 무시됩니다.

버그

compile_etyacc(1) 에 근거하는 지극히 단순한 파서를 이용하고 있기 (위해)때문에, 에러 회복 처리에는 개량해야 할 점이 많이 남아 있습니다.

관련 항목

yacc(1), comm_err(3)

Ken Raeburn, A Common Error Description Library for UNIX,


COMPILE_ET (1) Ta November 22, 1988

tail head cat sleep
QR code linking to this page


Ben Bullock이 유닉스 매뉴얼 페이지에서 서비스에 대한 의견을 주시기 바랍니다. Privacy policy.

The last good thing written in C was Franz Schubert's Symphony #9.
— Erwin Dietrich