1 Global: param = twice 2 Global: VARNAME = VAR.$${param} 3 Var_Parse: ${VARNAME} (eval) 4 Global: VAR.${param} = initial-value 5 Var_Parse: ${${VARNAME}::=assigned-value} (eval-defined-loud) 6 Var_Parse: ${VARNAME}::=assigned-value} (eval) 7 Evaluating modifier ${VAR.${param}::...} on value "initial-value" 8 Modifier part: "assigned-value" 9 Global: VAR.${param} = assigned-value 10 Result of ${VAR.${param}::=assigned-value} is "" 11 Var_Parse: ${${VARNAME}} != "assigned-value" (eval-defined-loud) 12 Var_Parse: ${VARNAME}} != "assigned-value" (eval) 13 Global: .MAKEFLAGS = -r -k -d v -d 14 Global: .MAKEFLAGS = -r -k -d v -d 0 15 Var_Parse: ${CMD_CMD_VAR::=new-value} || ${CMD_GLOBAL_VAR::=new-value} || ${CMD_ENV_VAR::=new-value} || "${CMD_NEW_VAR::=new-value}" (eval-defined-loud) 16 Evaluating modifier ${CMD_CMD_VAR::...} on value "cmd-value" 17 Modifier part: "new-value" 18 Command: CMD_CMD_VAR = new-value 19 Global: .MAKEOVERRIDES = FIRST LAST LAST LAST APPENDED RAN RAN RAN IT1 THEN1 IE2 ELSE2 CMD_CMD_VAR CMD_CMD_VAR 20 Result of ${CMD_CMD_VAR::=new-value} is "" 21 Var_Parse: ${CMD_GLOBAL_VAR::=new-value} || ${CMD_ENV_VAR::=new-value} || "${CMD_NEW_VAR::=new-value}" (eval-defined-loud) 22 Evaluating modifier ${CMD_GLOBAL_VAR::...} on value "global-value" 23 Modifier part: "new-value" 24 Global: CMD_GLOBAL_VAR = new-value 25 Result of ${CMD_GLOBAL_VAR::=new-value} is "" 26 Var_Parse: ${CMD_ENV_VAR::=new-value} || "${CMD_NEW_VAR::=new-value}" (eval-defined-loud) 27 Evaluating modifier ${CMD_ENV_VAR::...} on value "env-value" 28 Modifier part: "new-value" 29 Global: CMD_ENV_VAR = new-value 30 Result of ${CMD_ENV_VAR::=new-value} is "" 31 Var_Parse: ${CMD_NEW_VAR::=new-value}" (eval) 32 Evaluating modifier ${CMD_NEW_VAR::...} on value "" (eval, undefined) 33 Modifier part: "new-value" 34 Global: ignoring delete 'CMD_NEW_VAR' as it is not found 35 Command: CMD_NEW_VAR = new-value 36 Global: .MAKEOVERRIDES = FIRST LAST LAST LAST APPENDED RAN RAN RAN IT1 THEN1 IE2 ELSE2 CMD_CMD_VAR CMD_CMD_VAR CMD_NEW_VAR 37 Result of ${CMD_NEW_VAR::=new-value} is "" (eval, undefined) 38 Global: .MAKEFLAGS = -r -k -d v -d 0 -d v -d 39 Global: .MAKEFLAGS = -r -k -d v -d 0 -d v -d 0 40 make: Invalid attempt to assign "value" to variable "" via modifier "::=" 41 while evaluating "${::=value}" with value "" 42 in command "@echo $@: ${::=value}" 43 in target "mod-assign-empty-1" 44 make: Invalid attempt to assign "overwritten" to variable "" via modifier "::=" 45 while evaluating "${:Uvalue::=overwritten}" with value "value" 46 in command "@echo $@: ${:Uvalue::=overwritten}" 47 in target "mod-assign-empty-2" 48 make: Invalid attempt to assign "appended" to variable "" via modifier "::+=" 49 while evaluating "${:Uvalue::+=appended}" with value "value" 50 in command "@echo $@: ${:Uvalue::+=appended}" 51 in target "mod-assign-empty-3" 52 mod-assign-empty-4: VAR=overwritten 53 make: Unknown modifier "::x" 54 while evaluating variable "ASSIGN" with value "" 55 in command "@echo ${ASSIGN::x}" 56 in target "mod-assign-parse-1" 57 sysv:y 58 make: Unfinished modifier after "value # missing closing brace", expecting "}" 59 while evaluating variable "ASSIGN" with value "" 60 in command "@echo ${ASSIGN::=value # missing closing brace" 61 in target "mod-assign-parse-3" 62 ok=word 63 make: warning: Command " echo word; (exit 13) " exited with status 13 64 while evaluating variable "SH_ERR" with value "previous" 65 in command "@${SH_ERR::!= echo word; (exit 13) } echo err=${SH_ERR}" 66 in target "mod-assign-shell-error" 67 err=previous 68 Command: TARGET_CMD_VAR = cmd-value 69 Global: TARGET_GLOBAL_VAR = global-value 70 target: TARGET_TARGET_VAR = target-value 71 target: TARGET_TARGET_VAR = new-value 72 Global: TARGET_GLOBAL_VAR = new-value 73 Global: TARGET_ENV_VAR = new-value 74 target: TARGET_NEW_VAR = new-value 75 exit status 2 76