| 1 | | Noteworthy changes in release 1.4.21 (2026-02-06) [stable] |
| 2 | | |
| 3 | | * Fix the eval builtin to reject input like 0x that C does not |
| 4 | | accept as an integer literal, rather than silently treating it as zero |
| 5 | | (present since "the beginning"). |
| 6 | | |
| 7 | | * Fix the `define' and pushdef builtins to always warn when attempting |
| 8 | | to concatenate the result of using the `defn' macro on a builtin macro |
| 9 | | with anything else. This is a counterpart to the change in m4 1.4.11 |
| 10 | | that issues a warning when defn with multiple arguments attempts to |
| 11 | | perform concatenation. Attempting to use the output of defn anywhere |
| 12 | | other than a lone argument during macro definition has never been |
| 13 | | portable, but now the outcome is always the remaining text, rather |
| 14 | | than being dependent on whether defn was used before or after the |
| 15 | | other text (present since "the beginning"). |
| 16 | | |
| 17 | | * Port to glibc 2.43, which implements functions like strchr as macros |
| 18 | | when compiled with a C23 compiler. |
| | 1 | Comment entered in error. |