2c3632d14f
Lots of code refactoring, simplification and cleanup. Lots of new unit-tests providing much higher code coverage. All courtesy of rillig at netbsd. Other significant changes: o new read-only variable .SHELL which provides the path of the shell used to run scripts (as defined by the .SHELL target). o variable parsing detects more errors. o new debug option -dl: LINT mode, does the equivalent of := for all variable assignments so that file and line number are reported for variable parse errors.
27 lines
540 B
Plaintext
27 lines
540 B
Plaintext
mod-assign: first=1.
|
|
mod-assign: last=3.
|
|
mod-assign: appended=1 2 3.
|
|
1
|
|
2
|
|
3
|
|
mod-assign: ran:3.
|
|
mod-assign: global: 1, 3, 1 2 3, 3.
|
|
mod-assign-nested: then1t1
|
|
mod-assign-nested: else2e2
|
|
mod-assign-nested: then3t3
|
|
mod-assign-nested: else4e4
|
|
make: Bad modifier `:' for
|
|
value}
|
|
make: Bad modifier `:' for
|
|
mod-assign-empty: overwritten}
|
|
mod-assign-empty: VAR=overwritten
|
|
make: Unknown modifier ':'
|
|
|
|
sysv:y
|
|
make: Unfinished modifier for ASSIGN ('}' missing)
|
|
|
|
ok=word
|
|
make: " echo word; false " returned non-zero status
|
|
err=previous
|
|
exit status 0
|