Update web pages for cpplib changes.
Sun Oct 29 04:19:00 GMT 2000
Committed under the obvious rule.
RCS file: /cvs/gcc/wwwdocs/htdocs/index.html,v
retrieving revision 1.224
diff -u -p -r1.224 index.html
--- index.html 2000/10/18 00:22:36 1.224
+++ index.html 2000/10/29 12:16:16
@@ -177,9 +177,8 @@ particularly when complex macros are use
Neil Booth has contributed a new lexer and macro-expander for the C
preprocessor. The lexer makes a single pass over the source files,
-whereas previously it made two. The macro expander works without
-re-scanning for nested macros to expand, and operates on lexical
-tokens instead of text strings.
+whereas previously it made two. The macro expander operates on
+lexical tokens instead of text strings.
<p>ISO C, C++, and Objective C use the new preprocessor. Traditional
(K+R) C, Fortran, and Chill use an older implementation (taken from
RCS file: /cvs/gcc/wwwdocs/htdocs/proj-cpplib.html,v
retrieving revision 1.12
diff -u -p -r1.12 proj-cpplib.html
--- proj-cpplib.html 2000/10/07 18:05:03 1.12
+++ proj-cpplib.html 2000/10/29 12:16:17
@@ -83,6 +83,12 @@ varargs macros in traditional mode is a
<li><code>-traditional</code> and <code>-save-temps</code> now work
with the integrated preprocessor.
+ <li>The macro expander has been rewritten and fixes all known bugs,
+ including one that exists in previous versions of GCC.
+ <li>When a macro is defined to itself, it bypasses the macro
+ expander entirely.
@@ -147,13 +153,9 @@ varargs macros in traditional mode is a
<h2>Internal work that needs doing</h2>
- <li>The macro expander has been rewritten, but the new
- implementation is excessively clever, leading to bugs. It's
- planned to rewrite it again using exactly the algorithm outlined
- in the standard.
+ <li>The lexical analyzer and macro expander need to be profiled and
- <li>The lexical analyzer needs to be profiled and tuned.
<li>We allocate lots of itty bitty items with malloc. Some work has
been done on aggregating these into big blocks, using obstacks,
but we could do even more. Again, this can be a performance issue.
@@ -218,9 +220,6 @@ This is mostly done.
file - should be optimized out on reinclusion. (Just tweak the
include-file table entry of the wrapper to point to the file it
- <li>When a macro is defined to itself, bypass the macro expander
- entirely. (Partially implemented.)
<h2><a name="charset">Character set issues</a></h2>
More information about the Gcc-patches