freebsd-nq/contrib/bmake/unit-tests/varname-dot-shell.exp
Simon J. Gerraty 2c3632d14f Update to bmake-20200902
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.
2020-09-05 19:29:42 +00:00

20 lines
873 B
Plaintext
Executable File

ParseReadLine (8): 'ORIG_SHELL:= ${.SHELL}'
Var_Parse: ${.SHELL} with VARE_WANTRES|VARE_ASSIGN
Global:delete .SHELL (not found)
Command:.SHELL = (details omitted)
ParseReadLine (10): '.SHELL= overwritten'
Global:.SHELL = overwritten
Var_Parse: ${.SHELL} != ${ORIG_SHELL} with VARE_UNDEFERR|VARE_WANTRES
ParseReadLine (18): '.undef .SHELL'
Global:delete .SHELL
ParseReadLine (19): '.SHELL= newly overwritten'
Global:.SHELL = newly overwritten
Var_Parse: ${.SHELL} != ${ORIG_SHELL} with VARE_UNDEFERR|VARE_WANTRES
ParseReadLine (24): 'all:'
ParseReadLine (25): ' @echo ${.SHELL:M*}'
Var_Parse: ${.SHELL:M*} with VARE_WANTRES
Applying ${.SHELL:M...} to "(details omitted)" (eflags = VARE_WANTRES, vflags = VAR_READONLY)
Pattern[.SHELL] for [(details omitted)] is [*]
Result of ${.SHELL:M*} is "(details omitted)" (eflags = VARE_WANTRES, vflags = VAR_READONLY)
exit status 0