Index: gcc/ChangeLog
commitbce471493dbd17218e3acbc35ee809986ba855c0
authorgeoffk <geoffk@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 15 Mar 2005 00:36:33 +0000 (15 00:36 +0000)
committergeoffk <geoffk@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 15 Mar 2005 00:36:33 +0000 (15 00:36 +0000)
treed3cd092701f32b8f84eec7a95a4e244aafcf795e
parenteddd9b2eb64bd2a51a3d297225a8a1cac5a8a055
Index: gcc/ChangeLog
2005-03-14  Geoffrey Keating  <geoffk@apple.com>

* doc/cppopts.texi (-fexec-charset): Add concept index entry.
(-fwide-exec-charset): Likewise.
(-finput-charset): Likewise.
* doc/invoke.texi (Warning Options): Document -Wnormalized=.
* c-opts.c (c_common_handle_option): Handle -Wnormalized=.
* c.opt (Wnormalized): New.

Index: libcpp/ChangeLog
2005-03-14  Geoffrey Keating  <geoffk@apple.com>

* init.c (cpp_create_reader): Default warn_normalize to normalized_C.
* charset.c: Update for new format of ucnid.h.
(ucn_valid_in_identifier): Update for new format of ucnid.h.
Add NST parameter, and update it; update callers.
(cpp_valid_ucn): Add NST parameter, update callers.  Replace abort
with cpp_error.
(convert_ucn): Pass normalize_state to cpp_valid_ucn.
* internal.h (struct normalize_state): New.
(INITIAL_NORMALIZE_STATE): New.
(NORMALIZE_STATE_RESULT): New.
(NORMALIZE_STATE_UPDATE_IDNUM): New.
(_cpp_valid_ucn): New.
* lex.c (warn_about_normalization): New.
(forms_identifier_p): Add normalize_state parameter, update callers.
(lex_identifier): Add normalize_state parameter, update callers.  Keep
the state current.
(lex_number): Likewise.
(_cpp_lex_direct): Pass normalize_state to subroutines.  Check
it with warn_about_normalization.
* makeucnid.c: New.
* ucnid.h: Replace.
* ucnid.pl: Remove.
* ucnid.tab: Make appropriate for input to makeucnid.c.  Remove
comments about obsolete version of C++.
* include/cpplib.h (enum cpp_normalize_level): New.
(struct cpp_options): Add warn_normalize field.

Index: gcc/testsuite/ChangeLog
2005-03-14  Geoffrey Keating  <geoffk@apple.com>

* gcc.dg/cpp/normalize-1.c: New.
* gcc.dg/cpp/normalize-2.c: New.
* gcc.dg/cpp/normalize-3.c: New.
* gcc.dg/cpp/normalize-4.c: New.
* gcc.dg/cpp/ucnid-4.c: New.
* gcc.dg/cpp/ucnid-5.c: New.
* g++.dg/cpp/normalize-1.C: New.
* g++.dg/cpp/ucnid-1.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96459 138bc75d-0d04-0410-961f-82ee72b054a4
24 files changed:
gcc/ChangeLog
gcc/c-opts.c
gcc/c.opt
gcc/doc/cppopts.texi
gcc/doc/invoke.texi
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/cpp/normalize-1.C [new file with mode: 0644]
gcc/testsuite/g++.dg/cpp/ucnid-1.C [new file with mode: 0644]
gcc/testsuite/gcc.dg/cpp/normalize-1.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/cpp/normalize-2.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/cpp/normalize-3.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/cpp/normalize-4.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/cpp/ucnid-4.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/cpp/ucnid-5.c [new file with mode: 0644]
libcpp/ChangeLog
libcpp/charset.c
libcpp/include/cpplib.h
libcpp/init.c
libcpp/internal.h
libcpp/lex.c
libcpp/makeucnid.c [new file with mode: 0644]
libcpp/ucnid.h
libcpp/ucnid.pl [deleted file]
libcpp/ucnid.tab