varparse-errors.mk revision 1.1
1# $NetBSD: varparse-errors.mk,v 1.1 2020/11/08 16:44:47 rillig Exp $
2
3# Tests for parsing and evaluating all kinds of variable expressions.
4#
5# This is the basis for redesigning the error handling in Var_Parse and
6# Var_Subst, collecting typical and not so typical use cases.
7#
8# See also:
9#	VarParseResult
10#	Var_Parse
11#	Var_Subst
12
13PLAIN=		plain value
14
15LITERAL_DOLLAR=	To get a dollar, double $$ it.
16
17INDIRECT=	An ${:Uindirect} value.
18
19REF_UNDEF=	A reference to an ${UNDEF}undefined variable.
20
21ERR_UNCLOSED=	An ${UNCLOSED variable expression.
22
23ERR_BAD_MOD=	An ${:Uindirect:Z} expression with an unknown modifier.
24
25ERR_EVAL=	An evaluation error ${:Uvalue:C,.,\3,}.
26
27# In a conditional, a variable expression that is not enclosed in quotes is
28# expanded using the flags VARE_UNDEFERR and VARE_WANTRES.
29# The variable itself must be defined.
30# It may refer to undefined variables though.
31.if ${REF_UNDEF} != "A reference to an undefined variable."
32.  error
33.endif
34
35all:
36