1*d5e0a182SSimon J. Gerraty# $NetBSD: lint.mk,v 1.5 2023/11/19 21:47:52 rillig Exp $ 22c3632d1SSimon J. Gerraty# 3dba7b0efSSimon J. Gerraty# Demonstrates stricter checks that are only enabled in lint mode, using the 4dba7b0efSSimon J. Gerraty# option -dL. 52c3632d1SSimon J. Gerraty 6dba7b0efSSimon J. Gerraty# Before main.c 1.421 from 2020-11-01, make exited successfully even though 7dba7b0efSSimon J. Gerraty# the error message had been issued as PARSE_FATAL. This was because back 8dba7b0efSSimon J. Gerraty# then, make checked for parse errors only after parsing each top-level 9*d5e0a182SSimon J. Gerraty# makefile, in Parse_File. After that, when expanding expressions 10dba7b0efSSimon J. Gerraty# in shell commands, the parse errors were not checked again. 112c3632d1SSimon J. Gerraty 122c3632d1SSimon J. Gerraty# Ouch: as of 2020-08-03, the variable is malformed and parsing stops 132c3632d1SSimon J. Gerraty# for a moment, but is continued after the wrongly-guessed end of the 142c3632d1SSimon J. Gerraty# variable, which echoes "y@:Q}". 152c3632d1SSimon J. Gerraty 16956e45f6SSimon J. Gerraty.MAKEFLAGS: -dL 17956e45f6SSimon J. Gerraty 182c3632d1SSimon J. Gerratyall: mod-loop-varname 192c3632d1SSimon J. Gerraty 202c3632d1SSimon J. Gerratymod-loop-varname: 212c3632d1SSimon J. Gerraty @echo ${VAR:Uvalue:@${:Ubar:S,b,v,}@x${var}y@:Q} 222c3632d1SSimon J. Gerraty @echo ${VAR:Uvalue:@!@x$!y@:Q} # surprisingly allowed 23