Skip to content

Tags: ascherer/cweb

Tags

2025-07-27

Toggle 2025-07-27's commit message
CWEB - release 4.12.2, 2025-07-27.

* [CTANGLE] Purge trailing whitespace in preprocessor macros.
* [CWEAVE] Warn about @=verbatim@> material outside C part.
* [CWEB] Replace type 'boolean' with standard 'bool'.

cweb-4.12.2

Toggle cweb-4.12.2's commit message
CWEB - release 4.12.2, 2025-07-27.

* [CTANGLE] Purge trailing whitespace in preprocessor macros.
* [CWEAVE] Warn about @=verbatim@> material outside C part.
* [CWEB] Replace type 'boolean' with standard 'bool'.

2025-01-01

Toggle 2025-01-01's commit message
CWEB - release 4.12.1, 2025-01-01.

* Fix a few sorting errors in the 'Names of the sections'.

cweb-4.12.1

Toggle cweb-4.12.1's commit message
CWEB - release 4.12.1, 2025-01-01.

* Fix a few sorting errors in the 'Names of the sections'.

2024-08-12

Toggle 2024-08-12's commit message
CWEB - release 4.12, 2024-08-12.

Features:

* New option 'cweave -F' for alternate format of compound statements.
* 'do...while' loops are separated from surrounding code when used with
  'cweave -f'.
* Slightly improved '\pdfnote' macro (and helpers).
* New macro '\scan' from Martin Ruckert (@ruckertm) to improve the
  runtime when processing the index of large CWEB programs, e.g., MP.W.

cweb-4.12

Toggle cweb-4.12's commit message
CWEB - release 4.12, 2024-08-12.

Features:

* New option 'cweave -F' for alternate format of compound statements.
* 'do...while' loops are separated from surrounding code when used with
  'cweave -f'.
* Slightly improved '\pdfnote' macro (and helpers).
* New macro '\scan' from Martin Ruckert (@ruckertm) to improve the
  runtime when processing the index of large CWEB programs, e.g., MP.W.

cweb-4.12pre

Toggle cweb-4.12pre's commit message
Revert "Move explanatory section."

This reverts commit 2f6fe8d.

The comment refers to @<Cases for |stmt|@>.

2023-12-03

Toggle 2023-12-03's commit message
CWEB - release 4.11, 2023-12-03.

Features:

* Factor out 'cwebacromac.tex' with hypertext macros
* Support LuaTeX as backend engine

Fixes:

* Issue #45: Consistent formatting of terminal output
* Suppress reference to 'l. 0' in error messages

Finesses:

* Revert 'fputs' back to 'printf'
* Avoid shadow variables
* Updates in 'cwebman.tex'

cweb-4.11

Toggle cweb-4.11's commit message
CWEB - release 4.11, 2023-12-03.

Features:

* Factor out 'cwebacromac.tex' with hypertext macros
* Support LuaTeX as backend engine

Fixes:

* Issue #45: Consistent formatting of terminal output
* Suppress reference to 'l. 0' in error messages

Finesses:

* Revert 'fputs' back to 'printf'
* Avoid shadow variables
* Updates in 'cwebman.tex'

2023-08-19

Toggle 2023-08-19's commit message
CWEB - release 4.10, 2023-08-19.

Fixes:

* Fix issue #43: 'out_buf' overflow on malign user input
  - Handle border case from bug report
  - Discard rest of input lines exceeding 'buf_size' characters
  - Purge 'ungetc' from the TeX part as well
* Fix typo in 'examples/wordtest.w' (reported by DEK)
* 'Ilk' is of type 'eight_bits'
* Avoid over-/underflow of section depth with malicious user input

Internal changes:

* Unroll 'init_p' helper function in COMMON
  - it is used for CWEAVE only (and CTWILL downstream)
* Match 'common.w' and 'common.h'
  - Reshuffle declarations and some code sections
  - Add starred section titles
* Demote all starred sections in 'common.w' (single star)
* Code cleanup
  - Make 'pop_level' a simple macro in CWEAVE
  - Use structure assignment (as in CTANGLE)
  - More compact 'stack' handling
  - Make use of type 'mode'
  - Purge a few 'goto' statements (and add some others)
  - Replace some 'sprintf' with 'snprintf'
  - Syntactic sugar for functional macros
  - Straighten 'byte_start' arithmetic
  - Desolve former section 19 of CWEAVE with internal array sizes
  - Hide 'print_text' analytics function from C compiler with DEBUG
  - Streamline 'phase_two' of CTANGLE
  - Refurbish 'phase_three' of CWEAVE
* Insert blank line after '\ch' in TeX output (cf. CWEB 3.0)

Macro changes

* Cleanup some '\acro' macros in 'cwebmac.tex'