f6bbde28c4
include: * safe-ctype.h: New file. libiberty: * safe-ctype.c: New file. * Makefile.in (CFILES): Add safe-ctype.c. (REQUIRED_OFILES): Add safe-ctype.o. * argv.c: Define ISBLANK and use it, not isspace. * basename.c, cplus-dem.c, fnmatch.c, pexecute.c, strtod.c, strtol.c, strtoul.c: Include safe-ctype.h, not ctype.h. Use uppercase ctype macros. Don't test ISUPPER(c)/ISLOWER(c) before calling TOLOWER(c)/TOUPPER(c). gcc: * Makefile.in (HOST_RTL): Add safe-ctype.o. (safe-ctype.o): New rule. * system.h: Include safe-ctype.h, not ctype.h. No need to wrap ctype macros. * cpphash.h: Zap IStable and related macros. Define is_* in terms of safe-ctype.h macros. * cppinit.c: Delete the IStable and all related code. * tradcpp.c: Delete is_idchar, is_idstart, is_hor_space, and is_space arrays. Delete initialize_char_syntax. Change all references to the above arrays to use macros instead. * tradcpp.h: Define is_idchar, is_idstart, is_space, and is_nvspace in terms of safe_ctype.h's macros. * tradcif.y: is_idchar, is_idstart are macros not arrays. * config/i370/i370.c, config/winnt/dirent.c, config/winnt/fixinc-nt.c, config/winnt/ld.c: Use uppercase ctype macros. If we included ctype.h, include safe-ctype.h instead. * fixinc/fixfixes.c: Use uppercase ctype macros. Don't test ISLOWER(c) before calling TOUPPER(c). * fixinc/fixincl.c (extract_quoted_files): Simplify out some gunk. * fixinc/gnu-regex.c: Include safe-ctype.h, not ctype.h. No need to wrap ctype macros. Don't test ISUPPER(x) before calling TOLOWER(x). gcc/ch: * lex.c: Don't bother checking whether ISUPPER(c) before calling TOLOWER(c). Don't bother checking whether isascii(c) before testing ISSPACE(c); ISSPACE(c) includes '\n'. gcc/f: * Make-lang.in: Link f/fini with safe-ctype.o. * bad.c: Don't test ISUPPER(c) || ISLOWER(c) before calling TOUPPER(c). * com.c: Use TOUPPER, not ffesrc_toupper. * fini.c: Don't test ISALPHA(c) before calling TOUPPER(c)/TOLOWER(c). * intrin.c: Don't test IN_CTYPE_DOMAIN(c). * src.c: Delete ffesrc_toupper_ and ffesrc_tolower_ and their initializing code; use TOUPPER and TOLOWER instead of ffesrc_toupper and ffesrc_tolower. * src.h: Don't declare ffesrc_toupper_ or ffesrc_tolower_. Don't define ffesrc_toupper or ffesrc_tolower. gcc/java: * jvgenmain.c: Use ISPRINT not isascii. From-SVN: r38124 |
||
---|---|---|
.. | ||
actions.c | ||
actions.h | ||
ch-tree.def | ||
ch-tree.h | ||
ChangeLog | ||
chill.brochure | ||
chill.in | ||
chill.texi | ||
config-lang.in | ||
configure | ||
convert.c | ||
decl.c | ||
except.c | ||
expr.c | ||
gperf | ||
grant.c | ||
hash.h | ||
inout.c | ||
lang-options.h | ||
lang-specs.h | ||
lang.c | ||
lex.c | ||
lex.h | ||
loop.c | ||
Make-lang.in | ||
Makefile.in | ||
nloop.c | ||
parse.c | ||
parse.h | ||
README | ||
satisfy.c | ||
tasking.c | ||
tasking.h | ||
timing.c | ||
tree.c | ||
typeck.c | ||
xtypeck.c |
This directory contains the GNU front-end for the Chill language, contributed by Cygnus Solutions. Chill is the "CCITT High-Level Language", where CCITT is the old name for what is now ITU, the International Telecommunications Union. It is is language in the Modula2 family, and targets many of the same applications as Ada (especially large embedded systems). Chill was never used much in the United States, but is still being used in Europe, Brazil, Korea, and other places. Chill has been standardized by a series of reports/standards. The GNU implementation mostly follows the 1988 version of the language, with some backwards compatibility options for the 1984 version, and some other extensions. However, it does not implement all of the features of any standard. The most recent standard is Z.200 (11/93), available from http://www.itu.int/itudoc/itu-t/rec/z.html. The GNU Chill implementation is not being actively developed. Cygnus has one customer we are maintaining Chill for, but we are not planning on putting major work into Chill. This Net release is for educational purposes (as an example of a different Gcc front-end), and for those who find it useful. It is an unsupported hacker release. Bug reports without patches are likely to get ignored. Questions may get answered or ignored depending on our mood! If you want to try your luck, you can send a note to David Brolley <brolley@cygnus.com> or Per Bothner <bothner@cygnus.com>. One known problem is that we only support native builds of GNU Chill. If you need a cross-compiler, you will find various problems, including the directory structure, and the setjmp-based exception handling mechanism. The Chill run-time system is in the runtime sub-directory. Notice rts.c contains a poor main's implementation of Chill "processes" (threads). It is not added to libchill.a. We only use it for testing. (Our customer uses a different implementation for production work.) The GNU Chill implementation was primarily written by Per Bothner, along with Bill Cox, Wilfried Moser, Michael Tiemann, and David Brolley.