| History log of /src/usr.bin/make/unit-tests/varmod-order.mk |
| Revision | | Date | Author | Comments |
| 1.20 |
| 28-Jun-2025 |
rillig | make: consistently use double quotes in error messages
Previously, some error messages used single quotes, very few used backticks or parentheses, most already used double quotes.
While here, reword a few error messages to be clearer or more consistent with related error messages.
|
| 1.19 |
| 29-Mar-2025 |
rillig | make: let unknown ":O" modifiers fall back to the ":from=to" modifier
Inspired by https://bugs.freebsd.org/285726, which concerns the ":t" modifier instead.
This means that future extensions to the ":O" modifier must not contain a "=" anywhere, otherwise they may break existing code.
|
| 1.18 |
| 11-Jan-2025 |
rillig | make: omit redundant follow-up message "Malformed conditional"
If there is a parse error or an evaluation error during the conditional, the conditional is already mentioned in the "while evaluating condition" line, so there's no reason to repeat it once again.
Same for the "Bad condition" message from the '?:' modifier.
|
| 1.17 |
| 29-Aug-2024 |
rillig | 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.
|
| 1.16 |
| 06-Aug-2024 |
rillig | make: in error message about conditionals, use single quotes
Single quotes are used less often in the conditionals themselves, which leads to fewer confusions.
|
| 1.15 |
| 20-Jul-2024 |
rillig | make: remove wrong error message about an undefined variable
|
| 1.14 |
| 05-Jul-2024 |
rillig | 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.
|
| 1.13 |
| 05-Jul-2024 |
rillig | tests/make: add expected messages for "Unclosed expression"
|
| 1.12 |
| 04-Jul-2024 |
rillig | 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.
|
| 1.11 |
| 01-Jun-2023 |
rillig | 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.
|
| 1.10 |
| 27-Feb-2023 |
rillig | tests/make: describe the absent fallback for ':O' modifiers more clearly
|
| 1.9 |
| 26-Feb-2023 |
rillig | tests/make: extend tests for expression modifiers, especially ':N'
|
| 1.8 |
| 15-Jan-2022 |
rillig | tests/make: ensure that the 'expect' comments in tests are correct
Based on tests/usr.bin/xlint/check-expect.lua.
For now, this extra check needs to be run manually.
|
| 1.7 |
| 03-Aug-2021 |
rillig | tests/make: fix test for the variable modifier ':On'
The variable modifier ':On' sorts words numerically. If these words are not numeric at all, they get assigned the numeric value 0. Internally, ':On' uses qsort for sorting the words. Since qsort is not specified to use a stable sorting algorithm, the test data must only use words that either are written in the same way or that are numerically different.
The test varmod-order failed this requirement by trying to numerically sort a list of non-numeric words. This led to different results on BSD and Ubuntu, as could be expected.
To fix the tests, distinguish between words and numbers in the tests. While here, clean up the tests for all variants of the variable modifier ':O'.
Found by sjg on Ubuntu.
|
| 1.6 |
| 31-Jul-2021 |
rillig | tests/make: split tests for the variable modifier ':O'
The tests for parse errors are now in varmod-order, which lets the other tests focus on the desired behavior of the modifiers.
|
| 1.5 |
| 24-Oct-2020 |
rillig | make(1): indent directives like .info, .if, .for consistently
Done by "pkglint -F *.mk", no manual corrections.
|
| 1.4 |
| 16-Aug-2020 |
rillig | make(1): move tests for the :Ox modifier into separate file
The test has been extended by ensuring that the shuffled words are still the same. Comparing two shuffled lists is probabilistic, but comparing their sorted results is not, therefore that's completely sensible to do.
When writing this test, by coincidence I discovered how to generate the "Undefined variable" error message. Unfortunately, the error message is wrong since the variable NUMBERS is defined at that point. In summary, that error message is shown when it shouldn't, and when it should it is not shown. Still, I'm glad that I finally found it.
|
| 1.3 |
| 16-Aug-2020 |
rillig | make(1): move tests for the :O and :Or modifiers into separate files
|
| 1.2 |
| 16-Aug-2020 |
rillig | make(1): describe the purpose of each newly added unit test dummy
|
| 1.1 |
| 16-Aug-2020 |
rillig | make(1): add dummies for fine-grained tests, one per single feature
The test names have been derived from the current manual page.
All these tests are dummies right now, and the code from the existing tests will be moved into the new tests step by step.
This is done to prevent modmisc, escape, varmod-edge and varmisc from growing without any bounds, and to reduce the side-effects of one test to the others.
|