Age | Commit message (Collapse) | Author |
|
git-svn-id: svn://tug.org/texlive/trunk@63508 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@63492 c570f23f-e606-0410-a88d-b1316a301751
|
|
This new release provides the following features:
* @<Code sections@> can be used freely in any #if -- #elif -- #else --
#endif preprocessor branches without bashing the debugger
* The GCC compiler can be invoked with option -Wimplicit-fallthrough=2
on all CWEB code modules and will acknowledge /* fall through */
comments in the tangled C code
* Simple C casts like '(double)x' are formatted with non-breaking small
spaces as '(double)\,x' in the woven TeX output
* The HINT boolean macros are now in lowercase (as in ifhint.tex)
* Comma-separated lists of variable declarations are formatted in
accordance with function parameter lists and enumerations, i.e.,
comma is handled in math-mode with associated small spacing
and it fixes these bugs:
* Section @<Preprocessor definitions@> isn't overprinted (in PDF)
* Trivial CWEB code is formatted correctly (issue #36)
* Nested type definitions are recognized (issue #34)
Major remaining bug (as of CWEB 4.3.1):
* Issue #38 as described earlier
git-svn-id: svn://tug.org/texlive/trunk@63490 c570f23f-e606-0410-a88d-b1316a301751
|
|
Related to the 'bug, known' in CWEAVE section 200, there's a second
known bug with the treatment of '@t TeX material @>' in a peculiar
application scenario, i.e., when you try to place a function declaration
(aka prototype) next to the function definition and separate them with a
'force' line break instead of the default 'big_force' (from production
rule 76).
For example, several codes of MMIX (mmixal.w, mmix-arith.w,
mmix-config.w, mmix-io.w, mmix-mem.w, mmix-sim.w, mmmix.w) use the
convention
void flush_listing_line @,@,@[ARGS((char*))@];@+@t}\6{@>
void flush_listing_line(s)
char *s;
{ ... }
Most likely because of the modified production rule 1, the '@t}\6{@>'
ends up _after_ the '\1\1' introduced by 'dindent' around the function
header and causes the function definition to be indented together with
the list of arguments. To avoid this bug in this particular case, you
should use '@t}\6\4\4{@>' instead. (Other non-conflicting cases of
'@t}\6{@>' work as before.)
Note that MMIX uses different conventions, too: mmotype.w does _not_
mingle with the line separation at all, leaving the CWEB default of
'big_force' intact. And mmix-pipe.w cleanly separates @<Prototypes@>
from @<Subroutines@> (both internal and external). I have not found
any other codes outside MMIX that are affected by this bug in CWEB 4.
git-svn-id: svn://tug.org/texlive/trunk@63488 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@63483 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@63462 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@63454 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@63453 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@63452 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@63435 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@63431 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@63421 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@63420 c570f23f-e606-0410-a88d-b1316a301751
|
|
Rule 33: Comma-separated lists of variables like 'int x,y,z;' had a
full blank space (see, e.g., the SGB book), in stark contrast to the
resuts of rules 4 and 14.
Rule 118: Multiple type definitions were separated by _two_ spaces,
because the type after the comma brings its own space from rule 117.
This might look better with 'app(opt); app('9');' after the comma.
Rule 153: Long lines with multiple typename declarations now have the
chance to be broken after the comma.
git-svn-id: svn://tug.org/texlive/trunk@63419 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@63418 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@63415 c570f23f-e606-0410-a88d-b1316a301751
|
|
Try to match CWEAVE section 111 (prod.w) with the implementation
of the production rules.
git-svn-id: svn://tug.org/texlive/trunk@63411 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@63410 c570f23f-e606-0410-a88d-b1316a301751
|
|
Rule 121 is a trivial concretization.
Rule 83 is changed to correctly format 'trivial' CWEB code like
@c
#include <stdio.h>
@#
main() {}
that got clobbered as in 'queen.w' from The Stanford GraphBase.
As always, thanks to Github contributor @texdraft!
git-svn-id: svn://tug.org/texlive/trunk@63408 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@63404 c570f23f-e606-0410-a88d-b1316a301751
|
|
r881, r882)
git-svn-id: svn://tug.org/texlive/trunk@63385 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@63383 c570f23f-e606-0410-a88d-b1316a301751
|
|
Now 'gb_words.w' is formatted correctly again.
git-svn-id: svn://tug.org/texlive/trunk@63376 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@63365 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@63364 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@63363 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@63362 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@63361 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@63360 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@63353 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@63318 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@63317 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@63314 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@63305 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@63275 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@63274 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@63265 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@63257 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@63246 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@63245 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@63239 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@63238 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@63237 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@63233 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@63216 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@63210 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@63206 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@63198 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@63197 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@63196 c570f23f-e606-0410-a88d-b1316a301751
|