Commit b75d595d authored by Poul-Henning Kamp's avatar Poul-Henning Kamp

Be more clear about redefining symbols of different expected type

Fixes #2021
parent d31792a3
......@@ -9,7 +9,7 @@ server s1 {
txresp -body "2222\n"
} -start
varnish v1 -errvcl {foo} {
varnish v1 -errvcl {Name acl1 must have type 'acl'.} {
sub vcl_recv {
if (client.ip ~ acl1) {
set req.url = "/";
......
......@@ -8,7 +8,7 @@ varnish v1 -errvcl {Instance 'first' redefined.} {
}
}
varnish v1 -errvcl {Name 'first' already used.} {
varnish v1 -errvcl {Name 'first' already defined.} {
import debug;
backend first { .host = "${bad_ip}"; .port = "9080"; }
......
varnishtest "symbol lookup order issue"
varnish v1 -errvcl {Name 'debug' already used.} {
varnish v1 -errvcl {Name 'debug' already defined.} {
vcl 4.0;
import debug;
......
......@@ -229,7 +229,7 @@ VCC_HandleSymbol(struct vcc *tl, const struct token *tk, vcc_type_t fmt,
vcc_ErrWhere(tl, sym->def_b);
return (sym);
} else if (sym != NULL && sym->def_b != NULL) {
VSB_printf(tl->sb, "Name '%.*s' already used.\n", PF(tk));
VSB_printf(tl->sb, "Name '%.*s' already defined.\n", PF(tk));
vcc_ErrWhere(tl, tk);
VSB_printf(tl->sb, "First definition:\n");
AN(sym->def_b);
......@@ -237,7 +237,8 @@ VCC_HandleSymbol(struct vcc *tl, const struct token *tk, vcc_type_t fmt,
return (sym);
} else if (sym != NULL && sym->kind != kind) {
VSB_printf(tl->sb,
"Name %.*s is a reserved name.\n", PF(tk));
"Name %.*s must have type '%s'.\n",
PF(tk), VCC_SymKind(tl, sym));
vcc_ErrWhere(tl, tk);
return (sym);
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment