Opened 3 months ago

#388 new defect

Multics C documentation does not match implementation for error.h and missing declarations in stdio.h

Reported by: johnsonjh.dev@… Owned by: Eric Swenson
Priority: minor Milestone: MR12.9
Component: Administration Version: MR12.8
Keywords: Cc: Eric Swenson, eric@…

Description

Two related issues with Multics C:

1) The Multics C documentation says that an error.h file is provided that mappings of names to errno numbers, but no error.h file is provided. In fact, these definitions are provided in errno.h (as is customary).

2) The Multics C documentation indicates the C implementation should be compatible with SysVr2 C. In SysVr2 (and old BSD from where it inherited the behavior), the for facility for mapping error numbers to names (as opposed to names to numbers as described in issue 1 above) comes from the stdio package in the standard C library. The Multics C implementation of the standard C library does include these functions in stdio, however there are no definitions making them easily available to users.

To resolve issue 1:
add_name >sl3p>C_COMPILER>include>errno.h error.h to add a new name of error.h for errno.h. This corrects the implementation to match the documentation and would not break any existing source code.

To resolve issue 2:
The following additional declarations would need to be added to >sl3p>C_COMPILER>include>stdio.h:

extern char *sys_errlist[];
extern int sys_nerr;

This would also be compatible with existing source code and would better align Multics C with the SysVr2 standard it claims to implement.

These issues are present in all versions of Multics C as distributed with Multics through MR12.8.

Change History (0)

Note: See TracTickets for help on using tickets.