diff options
author | Eric Christopher <echristo@gcc.gnu.org> | 2004-01-16 22:37:49 +0000 |
---|---|---|
committer | Eric Christopher <echristo@gcc.gnu.org> | 2004-01-16 22:37:49 +0000 |
commit | cf551fbaca9987dccd728aa2cbaff67de7393fe3 (patch) | |
tree | 95190a526a0984976fac3a95910e9a5e961bea4e /gcc/cpphash.h | |
parent | 2f9c39f8fc04b38b6aac1ad71c83b22cede8b9e9 (diff) | |
download | gcc-cf551fbaca9987dccd728aa2cbaff67de7393fe3.zip gcc-cf551fbaca9987dccd728aa2cbaff67de7393fe3.tar.gz gcc-cf551fbaca9987dccd728aa2cbaff67de7393fe3.tar.bz2 |
cppcharset.c (one_iso88591_to_utf8): New function.
2004-01-16 Eric Christopher <echristo@redhat.com>
Chandrakala Chavva <cchavva@redhat.com>
* cppcharset.c (one_iso88591_to_utf8): New function.
(convert_iso88591_utf8): Ditto. Use.
(conversion_tab): Use.
(_cpp_input_to_utf8): New function.
(_cpp_init_iconv_buffer): Ditto.
(_cpp_close_iconv_buffer): Ditto.
* cpphash.h: Prototype new functions.
(cpp_buffer): Add input_cset_desc.
* cppinit.c: Add input_charset default.
* cpplib.c (cpp_push_buffer): Support init and
close of iconv.
* cpplib.h (cpp_options): Add input_charset.
From-SVN: r76000
Diffstat (limited to 'gcc/cpphash.h')
-rw-r--r-- | gcc/cpphash.h | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/gcc/cpphash.h b/gcc/cpphash.h index 80cb04c..6c13ea1 100644 --- a/gcc/cpphash.h +++ b/gcc/cpphash.h @@ -270,7 +270,7 @@ struct cpp_buffer const uchar *cur; /* Current location. */ const uchar *line_base; /* Start of current physical line. */ const uchar *next_line; /* Start of to-be-cleaned logical line. */ - + const uchar *buf; /* Entire character buffer. */ const uchar *rlimit; /* Writable byte at end of file. */ @@ -313,6 +313,10 @@ struct cpp_buffer /* Used for buffer overlays by cpptrad.c. */ const uchar *saved_cur, *saved_rlimit; + + /* Descriptor for converting from the input character set to the + source character set. */ + struct cset_converter input_cset_desc; }; /* A cpp_reader encapsulates the "state" of a pre-processor run. @@ -557,6 +561,9 @@ extern void _cpp_init_internal_pragmas (cpp_reader *); extern void _cpp_do_file_change (cpp_reader *, enum lc_reason, const char *, unsigned int, unsigned int); extern void _cpp_pop_buffer (cpp_reader *); +extern uchar *_cpp_input_to_utf8 (cpp_reader *, const unsigned char *, cppchar_t); +extern void _cpp_init_iconv_buffer (cpp_reader *, const char *); +extern void _cpp_close_iconv_buffer (cpp_reader *); /* In cpptrad.c. */ extern bool _cpp_scan_out_logical_line (cpp_reader *, cpp_macro *); |