bde
d60c039cdc
Reviewed by: ache and wollman (long ago)
Fix numerous ANSI conformance bugs and other nits. ctype.h: o There were no prototypes behind the macros (conformance bug). o isascii() didn't have enough parentheses (plain bug). o tolower() and toupper were always static inline (conformance bug? You could undef them and take their address, but this gave different addresses in different modules. You couldn't undef them and declare them (correctly) again). <stdio.h>'s treatment of putc() shows one way to handle this problem, but it only works because the putc() macro is allowed to reevaluate its args. I used a hack controlled by _EXTERNALIZE_CTYPE_INLINES_ to get <ctype.h> to generate the code (the previous hack involving _ANSI_LIBRARY_ goes away). This has the advantage that the core of the functions is only written down once and the disadvantage that another layer of functions is required. The extra layer goes away if inline functions are used, leaving only the problem of understanding why there are functions named toupper(), __toupper and ___toupper() as well as a macro named toupper. o Nothing seems to define _USE_CTYPE_LIBRARY_. Eliminate it o Let the user set _USE_CTYPE_INLINE_ and _DONT_USE_CTYPE_INLINE_ for full control over inlining. o The args for the inline functions didn't have enough underscores (conformance bug). o The formatting and ordering was inconsistent (style bug). o TODO: fix conformance bugs brought by including <runetype.h>.
----------------------------------------- FreeBSD 2.0 --- ALPHA Release , , ----------------------------------------- /( )` \ \___ / | Welcome to the ALPHA release of FreeBSD 2.0 - the /- _ `-/ ' first public snapshot of our new 4.4BSD Lite based (/\/ \ \ /\ operating system environment. This install proce- / / | ` \ dure is also at the ALPHA stage, and contains only O O ) / | the minimum functionality required by an `-^--'`< ' *EXPERIENCED* person to install the system. (_.) _ ) / It is our hope, of course, that the feedback `.___/` / provided from this snapshot will `-----' / greatly assist us in making the release <----. __ / __ \ of 2.0 much more user friendly. Your <----|====O)))==) \) /==== comments and criticisms are very <----' `--' `.__,' \ valuable to us, so please don't hesitate | | in contacting us! Full details on where and \ / /\ how to provide feedback are given below. ______( (_ / \______/ ,' ,-----' | This install procedure is ALPHA code, and `--{__________) may very possibly *DESTROY* the contents of your ENTIRE DISK! Please do not proceed with this installation unless you've adequately backed up your data first! If any errors occur during this installation, you can see them by toggling over to the alternate screen - type ALT-F2 to switch over, ALT-F1 to switch back to the install screen. The debugging output on the second screen may be very valuable to us in understanding your bug report, so please be sure to take note of it when reporting any failures in the installation! Thanks! Menus and scrolling output windows may be traversed with the arrow and Page Up/Page Down keys. To suspend the installation at any point, hit ESC twice. Hitting TAB will move the focus to different controls. If you've ever dealt with a DOS installation, you'll know how to deal with this. For a more complete description of what's new in this release, please see the release notes. For more documentation on this system, it is recommended that you purchase the 4.4BSD Document Set from O'Reilly Associates and the USENIX Association. ISBN 1-56592-082-1 We have no connection with O'Reilly, we're just satisfied customers! Have fun, and please let us know of any problems you encounter with this release! Comments should be sent to: hackers@FreeBSD.org Bug reports should be sent using the `send-pr' utility, if you were able to get the system installed, otherwise to: bugs@FreeBSD.org And general questions to: questions@FreeBSD.org Please have patience if your questions are not answered right away - this is an especially busy time for us, and our volunteer resources are often strained to the limit (if not somewhat past!). Thanks! The FreeBSD Project
Description
Languages
C
63.3%
C++
23.3%
Roff
5.1%
Shell
2.9%
Makefile
1.5%
Other
3.4%