The NetBSD Project

CVS log for src/usr.bin/make/unit-tests/varparse-errors.exp

[BACK] Up to [cvs.NetBSD.org] / src / usr.bin / make / unit-tests

Request diff between arbitrary revisions


Keyword substitution: kv
Default branch: MAIN


Revision 1.16: download - view: text, markup, annotated - select for diffs
Thu Aug 29 20:20:37 2024 UTC (3 months, 1 week ago) by rillig
Branches: MAIN
CVS tags: HEAD
Diff to: previous 1.15: preferred, colored
Changes since revision 1.15: +42 -20 lines
make: reduce line length in error messages

The error messages for deeply nested parse errors were hard to decipher,
due to the large amount of text.  Split these messages into individual
lines, just as in the backtrace for .include files and .for loops.  This
unified backtrace makes the output more uniform.

Revision 1.15: download - view: text, markup, annotated - select for diffs
Sat Jul 20 08:54:19 2024 UTC (4 months, 2 weeks ago) by rillig
Branches: MAIN
Diff to: previous 1.14: preferred, colored
Changes since revision 1.14: +18 -20 lines
make: remove wrong error message about an undefined variable

Revision 1.14: download - view: text, markup, annotated - select for diffs
Fri Jul 5 19:47:22 2024 UTC (5 months ago) by rillig
Branches: MAIN
Diff to: previous 1.13: preferred, colored
Changes since revision 1.13: +20 -20 lines
make: in error messages for anonymous variables, log the value

Revision 1.13: download - view: text, markup, annotated - select for diffs
Fri Jul 5 18:59:33 2024 UTC (5 months ago) by rillig
Branches: MAIN
Diff to: previous 1.12: preferred, colored
Changes since revision 1.12: +14 -14 lines
make: error out on unclosed expressions during parse time

In exchange, this adds location information.

For unnamed expressions, the value is no longer printed.  This will be
added back in a follow-up commit.

Revision 1.12: download - view: text, markup, annotated - select for diffs
Thu Jul 4 18:53:37 2024 UTC (5 months ago) by rillig
Branches: MAIN
Diff to: previous 1.11: preferred, colored
Changes since revision 1.11: +6 -6 lines
make: error out on the "Bad modifier" error message

Previously, the "Bad modifier" error message did not affect make's exit
status.  As a side effect, this kind of error now gets more context
information.

Revision 1.11: download - view: text, markup, annotated - select for diffs
Sat Apr 20 10:18:56 2024 UTC (7 months, 2 weeks ago) by rillig
Branches: MAIN
CVS tags: perseant-exfatfs-base-20240630, perseant-exfatfs-base, perseant-exfatfs
Diff to: previous 1.10: preferred, colored
Changes since revision 1.10: +2 -2 lines
make: provide more context information for parse/evaluate errors

Revision 1.10: download - view: text, markup, annotated - select for diffs
Sun Nov 19 22:06:15 2023 UTC (12 months, 2 weeks ago) by rillig
Branches: MAIN
Diff to: previous 1.9: preferred, colored
Changes since revision 1.9: +14 -14 lines
make: replace 'variable expression' with 'expression' in diagnostics

Revision 1.9: download - view: text, markup, annotated - select for diffs
Thu Jun 1 20:56:35 2023 UTC (18 months, 1 week ago) by rillig
Branches: MAIN
Diff to: previous 1.8: preferred, colored
Changes since revision 1.8: +4 -4 lines
tests/make: force line-based diagnostics to be listed in the tests

This way, contradictions between the intended output and the actual
output are closer together and have a better chance of being spotted.

Revision 1.8: download - view: text, markup, annotated - select for diffs
Tue Feb 14 21:56:48 2023 UTC (21 months, 3 weeks ago) by rillig
Branches: MAIN
Diff to: previous 1.7: preferred, colored
Changes since revision 1.7: +4 -4 lines
make: remove redundant type VarParseResult

No functional change.

Revision 1.7: download - view: text, markup, annotated - select for diffs
Wed Aug 24 22:09:41 2022 UTC (2 years, 3 months ago) by rillig
Branches: MAIN
CVS tags: netbsd-10-base, netbsd-10-0-RELEASE, netbsd-10-0-RC6, netbsd-10-0-RC5, netbsd-10-0-RC4, netbsd-10-0-RC3, netbsd-10-0-RC2, netbsd-10-0-RC1, netbsd-10
Diff to: previous 1.6: preferred, colored
Changes since revision 1.6: +10 -33 lines
make: prevent future out-of-bounds errors when parsing expressions

A modifier in an expression ends not only at the next ':' or at the
closing '}' or ')', but also at the end of the string.

Previously, testing for the end of the string had been done separately,
which was error-prone since 2006-05-11, when indirect modifiers were
introduced.  Since then, it was possible that the string terminator '\0'
was accidentally skipped in cases where the loop condition only tested
for the ending character.  When parsing indirect modifiers, the ending
character is indeed '\0', but when parsing direct modifiers, it is '}'
or ')'.

A welcome side effect is that in the case of unclosed expressions such
as '${VAR:Modifier', the amount of error messages is reduced from 2 or 3
to only 1.  The removed error messages were wrong and thus confusing
anyway.

Revision 1.6: download - view: text, markup, annotated - select for diffs
Wed Aug 24 21:38:06 2022 UTC (2 years, 3 months ago) by rillig
Branches: MAIN
Diff to: previous 1.5: preferred, colored
Changes since revision 1.5: +37 -0 lines
tests/make: test misleading error messages on unclosed expressions

The error messages say 'Unknown modifier' or 'Bad modifier', which is
not entirely correct.  The modifier in itself is valid, it's just that
make doesn't expect the end of the string after the modifier.

Revision 1.5: download - view: text, markup, annotated - select for diffs
Mon Jan 24 22:59:49 2022 UTC (2 years, 10 months ago) by rillig
Branches: MAIN
Diff to: previous 1.4: preferred, colored
Changes since revision 1.4: +6 -0 lines
tests/make: demonstrate that the 'static' in Var_Parse has an effect

Revision 1.4: download - view: text, markup, annotated - select for diffs
Tue Feb 23 15:19:41 2021 UTC (3 years, 9 months ago) by rillig
Branches: MAIN
CVS tags: cjep_sun2x-base1, cjep_sun2x-base, cjep_sun2x, cjep_staticlib_x-base1, cjep_staticlib_x-base, cjep_staticlib_x
Diff to: previous 1.3: preferred, colored
Changes since revision 1.3: +2 -2 lines
make: improve error message for unknown modifier

Back in 1995, the modifiers were all single-character, and it made sense
to print only the first character.  Nowadays, with ':S', ':@var@...@',
'::=' and several others, a little more context is useful to see where
the exact error is.  The actual modifier is still guessed, and the guess
may be wrong as soon as backslashes get involved, but it is still better
than before.

Revision 1.3: download - view: text, markup, annotated - select for diffs
Sun Dec 20 19:47:34 2020 UTC (3 years, 11 months ago) by rillig
Branches: MAIN
Diff to: previous 1.2: preferred, colored
Changes since revision 1.2: +5 -3 lines
make(1): error out on unknown variable modifiers at parse time

Before, make printed an "error message" that did not include the word
error and thus was not easily identified as such.  This "error message"
also did not influence the exit status in the default mode but only in
-dL mode.  The error message also didn't include any line number
information and was thus rude.

Revision 1.2: download - view: text, markup, annotated - select for diffs
Tue Dec 1 20:15:23 2020 UTC (4 years ago) by rillig
Branches: MAIN
Diff to: previous 1.1: preferred, colored
Changes since revision 1.1: +2 -0 lines
make(1): add test for parse errors in variable name in Var_SetWithFlags

Revision 1.1: download - view: text, markup, annotated - select for diffs
Sun Nov 8 16:44:47 2020 UTC (4 years, 1 month ago) by rillig
Branches: MAIN
make(1): add test for expanding variable expressions

Diff request

This form allows you to request diffs between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.

Log view options

CVSweb <webmaster@jp.NetBSD.org>