The NetBSD Project

CVS log for src/usr.bin/make/unit-tests/cond-cmp-numeric.exp

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

Request diff between arbitrary revisions

Default branch: MAIN

Revision 1.9 / (download) - annotate - [select for diffs], Sat Mar 4 08:07:29 2023 UTC (11 months, 3 weeks ago) by rillig
Branch: MAIN
Changes since 1.8: +4 -4 lines
Diff to previous 1.8 (colored)

tests/make: test very small and very large numbers in conditions

Revision 1.8 / (download) - annotate - [select for diffs], Sun Sep 4 22:55:00 2022 UTC (17 months, 2 weeks ago) by rillig
Branch: MAIN
CVS Tags: netbsd-10-base, netbsd-10-0-RC4, netbsd-10-0-RC3, netbsd-10-0-RC2, netbsd-10-0-RC1, netbsd-10
Changes since 1.7: +3 -3 lines
Diff to previous 1.7 (colored)

make: add more details to error message for numeric comparison

String comparison operator must be either == or !=

Comparison with '>=' requires both operands 'no' and '10' to be numeric

Noticed by martin@ in pkgsrc/textproc/py-pygments.

Revision 1.7 / (download) - annotate - [select for diffs], Thu Mar 3 19:36:35 2022 UTC (23 months, 3 weeks ago) by rillig
Branch: MAIN
Changes since 1.6: +2 -2 lines
Diff to previous 1.6 (colored)

make: make debug logging for comparisons less technical

Revision 1.6 / (download) - annotate - [select for diffs], Thu Jul 29 06:31:18 2021 UTC (2 years, 6 months ago) by rillig
Branch: MAIN
Changes since 1.5: +4 -0 lines
Diff to previous 1.5 (colored)

tests/make: test spaces around numbers in comparisons

Just to see whether it is possible to write a conditional in the form
${ ${A} < ${B} :? ${A} : ${B} }, that is, with leading and trailing
whitespace, to make it easier for humans to read the code.

It's not possible, the result of this computation cannot be used in
further numeric comparisons, at least not in .if directives.  Leading
space would work, but trailing space wouldn't.

On the other hand, they would work in expressions of the form
${ ${A} < ${B} :? ... : ... } since in these, the condition is first
expanded and then parsed.  But that is an implementation detail that is
not documented and it is also difficult to understand.

Revision 1.5 / (download) - annotate - [select for diffs], Thu Jan 21 23:32:28 2021 UTC (3 years, 1 month ago) by rillig
Branch: MAIN
CVS Tags: cjep_sun2x-base1, cjep_sun2x-base, cjep_sun2x, cjep_staticlib_x-base1, cjep_staticlib_x-base, cjep_staticlib_x
Changes since 1.4: +2 -4 lines
Diff to previous 1.4 (colored)

make(1): replace warning + error with just an error in conditionals

Before, there was a "warning" for comparing strings using '<', which was
wrong.  That warning was then followed by an error, after parsing the
whole conditional.  This was only because it was easier to implement.

Replace the warning with an actual error.  This only affects
conditionals in .if lines, the conditionals in the :? modifier such as
${"A" < "B":?smaller:greater} still print 2 errors.

Revision 1.4 / (download) - annotate - [select for diffs], Thu Jan 21 23:25:08 2021 UTC (3 years, 1 month ago) by rillig
Branch: MAIN
Changes since 1.3: +0 -2 lines
Diff to previous 1.3 (colored)

make(1): fix debug output for comparison operators in conditionals

This produces fewer warnings than before, but these were edge cases that
probably didn't matter in practice.  The "Malformaed conditional" is
still generated, the set of accepted conditionals is still the same.

Revision 1.3 / (download) - annotate - [select for diffs], Sun Nov 8 22:56:16 2020 UTC (3 years, 3 months ago) by rillig
Branch: MAIN
Changes since 1.2: +4 -0 lines
Diff to previous 1.2 (colored)

make(1): add test for wrong comparison operator in conditional

Revision 1.2 / (download) - annotate - [select for diffs], Sat Sep 12 18:01:51 2020 UTC (3 years, 5 months ago) by rillig
Branch: MAIN
Changes since 1.1: +11 -1 lines
Diff to previous 1.1 (colored)

make(1): add test for Infinity and NaN

Neither is recognized by the make parser, which is good since the main
task of make is dependency resolution and text processing, not

Revision 1.1 / (download) - annotate - [select for diffs], Sun Aug 16 12:07:51 2020 UTC (3 years, 6 months ago) by rillig
Branch: MAIN

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.

This form allows you to request diff's 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.

CVSweb <>