Skip to content

Commit

Permalink
Merge pull request #6809 from WalterBright/errors-identifier
Browse files Browse the repository at this point in the history
syntax highlighting for IdentifierExp
merged-on-behalf-of: Vladimir Panteleev <github@thecybershadow.net>
  • Loading branch information
dlang-bot committed May 19, 2017
2 parents a6cf1a6 + 023daf4 commit a91bc97
Show file tree
Hide file tree
Showing 79 changed files with 159 additions and 160 deletions.
15 changes: 7 additions & 8 deletions src/ddmd/expression.d
Expand Up @@ -208,7 +208,6 @@ extern (C++) FuncDeclaration hasThis(Scope* sc)

if (!fd.isThis())
{
//printf("test '%s'\n", fd.toChars());
goto Lno;
}

Expand Down Expand Up @@ -3861,7 +3860,7 @@ extern (C++) class IdentifierExp : Expression
Dsymbol s2;
if (scx.scopesym && scx.scopesym.symtab && (s2 = scx.scopesym.symtab.lookup(s.ident)) !is null && s != s2)
{
error("with symbol %s is shadowing local symbol %s", s.toPrettyChars(), s2.toPrettyChars());
error("with symbol `%s` is shadowing local symbol `%s`", s.toPrettyChars(), s2.toPrettyChars());
return new ErrorExp();
}
}
Expand Down Expand Up @@ -3924,7 +3923,7 @@ extern (C++) class IdentifierExp : Expression
{
if (sc.flags & SCOPEctfe)
{
error("variable __ctfe cannot be read at compile time");
error("variable `__ctfe` cannot be read at compile time");
return new ErrorExp();
}

Expand Down Expand Up @@ -3963,14 +3962,14 @@ extern (C++) class IdentifierExp : Expression

const(char)* n = importHint(ident.toChars());
if (n)
error("'%s' is not defined, perhaps you need to import %s; ?", ident.toChars(), n);
error("`%s` is not defined, perhaps `import %s;` is needed?", ident.toChars(), n);
else
{
s = sc.search_correct(ident);
if (s)
error("undefined identifier '%s', did you mean %s '%s'?", ident.toChars(), s.kind(), s.toChars());
error("undefined identifier `%s`, did you mean %s `%s`?", ident.toChars(), s.kind(), s.toChars());
else
error("undefined identifier '%s'", ident.toChars());
error("undefined identifier `%s`", ident.toChars());
}
return new ErrorExp();
}
Expand Down Expand Up @@ -8934,9 +8933,9 @@ extern (C++) final class DotIdExp : UnaExp
return null;
s = ie.sds.search_correct(ident);
if (s)
error("undefined identifier '%s' in %s '%s', did you mean %s '%s'?", ident.toChars(), ie.sds.kind(), ie.sds.toPrettyChars(), s.kind(), s.toChars());
error("undefined identifier `%s` in %s `%s`, did you mean %s `%s`?", ident.toChars(), ie.sds.kind(), ie.sds.toPrettyChars(), s.kind(), s.toChars());
else
error("undefined identifier '%s' in %s '%s'", ident.toChars(), ie.sds.kind(), ie.sds.toPrettyChars());
error("undefined identifier `%s` in %s `%s`", ident.toChars(), ie.sds.kind(), ie.sds.toPrettyChars());
return new ErrorExp();
}
else if (t1b.ty == Tpointer && e1.type.ty != Tenum && ident != Id._init && ident != Id.__sizeof && ident != Id.__xalignof && ident != Id.offsetof && ident != Id._mangleof && ident != Id.stringof)
Expand Down
4 changes: 2 additions & 2 deletions src/ddmd/mtype.d
Expand Up @@ -7744,9 +7744,9 @@ extern (C++) abstract class TypeQualified : Type
auto id = new Identifier(p);
s = sc.search_correct(id);
if (s)
error(loc, "undefined identifier '%s', did you mean %s '%s'?", p, s.kind(), s.toChars());
error(loc, "undefined identifier `%s`, did you mean %s `%s`?", p, s.kind(), s.toChars());
else
error(loc, "undefined identifier '%s'", p);
error(loc, "undefined identifier `%s`", p);
}
*pt = Type.terror;
}
Expand Down
2 changes: 1 addition & 1 deletion test/fail_compilation/diag10089.d
@@ -1,7 +1,7 @@
/*
TEST_OUTPUT:
---
fail_compilation/diag10089.d(15): Error: undefined identifier 'chunks' in package 'imports'
fail_compilation/diag10089.d(15): Error: undefined identifier `chunks` in package `imports`
fail_compilation/diag10089.d(17): Error: template Foo() does not have property 'chunks'
---
*/
Expand Down
2 changes: 1 addition & 1 deletion test/fail_compilation/diag10783.d
Expand Up @@ -2,7 +2,7 @@
TEST_OUTPUT:
---
fail_compilation/diag10783.d(14): Error: no property 'type' for type 'Event'
fail_compilation/diag10783.d(14): Error: undefined identifier 'En'
fail_compilation/diag10783.d(14): Error: undefined identifier `En`
---
*/

Expand Down
6 changes: 3 additions & 3 deletions test/fail_compilation/diag10862.d
Expand Up @@ -18,7 +18,7 @@ fail_compilation/diag10862.d(44): Error: assignment cannot be used as a conditio
fail_compilation/diag10862.d(45): Error: assignment cannot be used as a condition, perhaps `==` was meant?
fail_compilation/diag10862.d(46): Error: assignment cannot be used as a condition, perhaps `==` was meant?
fail_compilation/diag10862.d(47): Error: assignment cannot be used as a condition, perhaps `==` was meant?
fail_compilation/diag10862.d(49): Error: undefined identifier 'semanticError'
fail_compilation/diag10862.d(49): Error: undefined identifier `semanticError`
---
*/
void test1()
Expand Down Expand Up @@ -60,8 +60,8 @@ fail_compilation/diag10862.d-mixin-82(82): Error: assignment cannot be used as a
fail_compilation/diag10862.d-mixin-83(83): Deprecation: Using the result of a comma expression is deprecated
fail_compilation/diag10862.d-mixin-83(83): Error: assignment cannot be used as a condition, perhaps == was meant?
fail_compilation/diag10862.d-mixin-86(86): Error: a + b is not an lvalue
fail_compilation/diag10862.d-mixin-87(87): Error: undefined identifier 'c'
fail_compilation/diag10862.d(89): Error: undefined identifier 'semanticError'
fail_compilation/diag10862.d-mixin-87(87): Error: undefined identifier `c`
fail_compilation/diag10862.d(89): Error: undefined identifier `semanticError`
---
*/
void test2()
Expand Down
2 changes: 1 addition & 1 deletion test/fail_compilation/diag11423.d
@@ -1,7 +1,7 @@
/*
TEST_OUTPUT:
---
fail_compilation/diag11423.d(9): Error: undefined identifier 'Foo'
fail_compilation/diag11423.d(9): Error: undefined identifier `Foo`
---
*/
void main()
Expand Down
4 changes: 2 additions & 2 deletions test/fail_compilation/diag11840.d
@@ -1,8 +1,8 @@
/*
TEST_OUTPUT:
---
fail_compilation/diag11840.d(12): Error: undefined identifier 'i'
fail_compilation/diag11840.d(12): Error: undefined identifier 'j'
fail_compilation/diag11840.d(12): Error: undefined identifier `i`
fail_compilation/diag11840.d(12): Error: undefined identifier `j`
---
*/

Expand Down
2 changes: 1 addition & 1 deletion test/fail_compilation/diag12280.d
@@ -1,7 +1,7 @@
/*
TEST_OUTPUT:
---
fail_compilation/diag12280.d(15): Error: undefined identifier 'nonexistent'
fail_compilation/diag12280.d(15): Error: undefined identifier `nonexistent`
fail_compilation/diag12280.d(13): Error: template instance diag12280.f!10 error instantiating
fail_compilation/diag12280.d(18): 11 recursive instantiations from here: f!0
---
Expand Down
4 changes: 2 additions & 2 deletions test/fail_compilation/diag12640.d
@@ -1,8 +1,8 @@
/*
TEST_OUTPUT:
---
fail_compilation/diag12640.d(14): Error: undefined identifier 'asdf'
fail_compilation/diag12640.d(23): Error: undefined identifier 'asdf'
fail_compilation/diag12640.d(14): Error: undefined identifier `asdf`
fail_compilation/diag12640.d(23): Error: undefined identifier `asdf`
---
*/

Expand Down
2 changes: 1 addition & 1 deletion test/fail_compilation/diag15001.d
Expand Up @@ -2,7 +2,7 @@
/*
TEST_OUTPUT:
---
fail_compilation/diag15001.d(11): Error: undefined identifier 'X'
fail_compilation/diag15001.d(11): Error: undefined identifier `X`
---
*/

Expand Down
4 changes: 2 additions & 2 deletions test/fail_compilation/diag15340.d
@@ -1,8 +1,8 @@
/*
TEST_OUTPUT:
---
fail_compilation/diag15340.d(11): Error: undefined identifier 'undef1'
fail_compilation/diag15340.d(12): Error: undefined identifier 'undef2'
fail_compilation/diag15340.d(11): Error: undefined identifier `undef1`
fail_compilation/diag15340.d(12): Error: undefined identifier `undef2`
---
*/

Expand Down
2 changes: 1 addition & 1 deletion test/fail_compilation/diag16977.d
@@ -1,7 +1,7 @@
/*
TEST_OUTPUT:
---
fail_compilation/diag16977.d(22): Error: undefined identifier 'undefined', did you mean function 'undefinedId'?
fail_compilation/diag16977.d(22): Error: undefined identifier `undefined`, did you mean function `undefinedId`?
fail_compilation/diag16977.d(23): Error: cannot implicitly convert expression ("\x01string") of type string to int
fail_compilation/diag16977.d(24): Error: template diag16977.templ cannot deduce function from argument types !()(int), candidates are:
fail_compilation/diag16977.d(17): diag16977.templ(S)(S s) if (false)
Expand Down
6 changes: 3 additions & 3 deletions test/fail_compilation/diag6699.d
Expand Up @@ -10,9 +10,9 @@ alias b6699.x b6699a;
/*
TEST_OUTPUT:
---
fail_compilation/diag6699.d(18): Error: undefined identifier 'junk1'
fail_compilation/diag6699.d(18): Error: undefined identifier 'junk2'
fail_compilation/diag6699.d(19): Error: undefined identifier 'junk3'
fail_compilation/diag6699.d(18): Error: undefined identifier `junk1`
fail_compilation/diag6699.d(18): Error: undefined identifier `junk2`
fail_compilation/diag6699.d(19): Error: undefined identifier `junk3`
---
*/
class X : junk1, junk2 {}
Expand Down
6 changes: 3 additions & 3 deletions test/fail_compilation/diag8648.d
@@ -1,13 +1,13 @@
/*
TEST_OUTPUT:
---
fail_compilation/diag8648.d(18): Error: undefined identifier 'X'
fail_compilation/diag8648.d(18): Error: undefined identifier `X`
fail_compilation/diag8648.d(29): Error: template diag8648.foo cannot deduce function from argument types !()(Foo!(int, 1)), candidates are:
fail_compilation/diag8648.d(18): diag8648.foo(T, n)(X!(T, n))
fail_compilation/diag8648.d(20): Error: undefined identifier 'a'
fail_compilation/diag8648.d(20): Error: undefined identifier `a`
fail_compilation/diag8648.d(31): Error: template diag8648.bar cannot deduce function from argument types !()(Foo!(int, 1)), candidates are:
fail_compilation/diag8648.d(20): diag8648.bar(T)(Foo!(T, a))
fail_compilation/diag8648.d(20): Error: undefined identifier 'a'
fail_compilation/diag8648.d(20): Error: undefined identifier `a`
fail_compilation/diag8648.d(32): Error: template diag8648.bar cannot deduce function from argument types !()(Foo!(int, f)), candidates are:
fail_compilation/diag8648.d(20): diag8648.bar(T)(Foo!(T, a))
---
Expand Down
2 changes: 1 addition & 1 deletion test/fail_compilation/diag8825.d
@@ -1,7 +1,7 @@
/*
TEST_OUTPUT:
---
fail_compilation/diag8825.d(13): Error: undefined identifier 'foo'
fail_compilation/diag8825.d(13): Error: undefined identifier `foo`
---
*/

Expand Down
2 changes: 1 addition & 1 deletion test/fail_compilation/diag9210a.d
Expand Up @@ -4,7 +4,7 @@
/*
TEST_OUTPUT:
---
fail_compilation/imports/diag9210b.d(6): Error: undefined identifier 'A'
fail_compilation/imports/diag9210b.d(6): Error: undefined identifier `A`
---
*/

Expand Down
2 changes: 1 addition & 1 deletion test/fail_compilation/diag9479.d
@@ -1,7 +1,7 @@
/*
TEST_OUTPUT:
---
fail_compilation/diag9479.d(10): Error: undefined identifier 'something_undefined'
fail_compilation/diag9479.d(10): Error: undefined identifier `something_undefined`
---
*/

Expand Down
8 changes: 4 additions & 4 deletions test/fail_compilation/diag_err1.d
@@ -1,12 +1,12 @@
/*
TEST_OUTPUT:
---
fail_compilation/diag_err1.d(21): Error: undefined identifier 'x'
fail_compilation/diag_err1.d(21): Error: undefined identifier `x`
fail_compilation/diag_err1.d(21): while evaluating pragma(msg, [1, 2, x].length)
fail_compilation/diag_err1.d(22): Error: undefined identifier 'x'
fail_compilation/diag_err1.d(22): Error: undefined identifier 'y'
fail_compilation/diag_err1.d(22): Error: undefined identifier `x`
fail_compilation/diag_err1.d(22): Error: undefined identifier `y`
fail_compilation/diag_err1.d(22): while evaluating pragma(msg, (x + y).sizeof)
fail_compilation/diag_err1.d(23): Error: undefined identifier 'x'
fail_compilation/diag_err1.d(23): Error: undefined identifier `x`
fail_compilation/diag_err1.d(23): while evaluating pragma(msg, (n += x).sizeof)
fail_compilation/diag_err1.d(24): Error: incompatible types for ((s) ~ (n)): 'string' and 'int'
fail_compilation/diag_err1.d(24): while evaluating pragma(msg, (s ~ n).sizeof)
Expand Down
2 changes: 1 addition & 1 deletion test/fail_compilation/fail10346.d
@@ -1,7 +1,7 @@
/*
TEST_OUTPUT:
---
fail_compilation/fail10346.d(9): Error: undefined identifier 'T'
fail_compilation/fail10346.d(9): Error: undefined identifier `T`
---
*/

Expand Down
2 changes: 1 addition & 1 deletion test/fail_compilation/fail10481.d
@@ -1,7 +1,7 @@
/*
TEST_OUTPUT:
---
fail_compilation/fail10481.d(11): Error: undefined identifier 'T1', did you mean alias 'T0'?
fail_compilation/fail10481.d(11): Error: undefined identifier `T1`, did you mean alias `T0`?
fail_compilation/fail10481.d(15): Error: cannot infer type from template instance get!(A)
---
*/
Expand Down
4 changes: 2 additions & 2 deletions test/fail_compilation/fail11042.d
@@ -1,8 +1,8 @@
/*
TEST_OUTPUT:
---
fail_compilation/fail11042.d(8): Error: undefined identifier 'error', did you mean class 'Error'?
fail_compilation/fail11042.d(9): Error: undefined identifier 'error', did you mean class 'Error'?
fail_compilation/fail11042.d(8): Error: undefined identifier `error`, did you mean class `Error`?
fail_compilation/fail11042.d(9): Error: undefined identifier `error`, did you mean class `Error`?
---
*/
static if ({ return true || error; }()) {} // NG
Expand Down
14 changes: 7 additions & 7 deletions test/fail_compilation/fail12047.d
Expand Up @@ -2,13 +2,13 @@
/*
TEST_OUTPUT:
---
fail_compilation/fail12047.d(15): Error: undefined identifier 'asdf'
fail_compilation/fail12047.d(16): Error: undefined identifier 'asdf'
fail_compilation/fail12047.d(17): Error: undefined identifier 'asdf'
fail_compilation/fail12047.d(18): Error: undefined identifier 'asdf'
fail_compilation/fail12047.d(19): Error: undefined identifier 'asdf'
fail_compilation/fail12047.d(20): Error: undefined identifier 'asdf'
fail_compilation/fail12047.d(21): Error: undefined identifier 'asdf'
fail_compilation/fail12047.d(15): Error: undefined identifier `asdf`
fail_compilation/fail12047.d(16): Error: undefined identifier `asdf`
fail_compilation/fail12047.d(17): Error: undefined identifier `asdf`
fail_compilation/fail12047.d(18): Error: undefined identifier `asdf`
fail_compilation/fail12047.d(19): Error: undefined identifier `asdf`
fail_compilation/fail12047.d(20): Error: undefined identifier `asdf`
fail_compilation/fail12047.d(21): Error: undefined identifier `asdf`
---
*/

Expand Down
2 changes: 1 addition & 1 deletion test/fail_compilation/fail122.d
@@ -1,7 +1,7 @@
/*
TEST_OUTPUT:
---
fail_compilation/fail122.d(12): Error: undefined identifier 'y'
fail_compilation/fail122.d(12): Error: undefined identifier `y`
---
*/

Expand Down
2 changes: 1 addition & 1 deletion test/fail_compilation/fail123.d
@@ -1,7 +1,7 @@
/*
TEST_OUTPUT:
---
fail_compilation/fail123.d(11): Error: undefined identifier 'type'
fail_compilation/fail123.d(11): Error: undefined identifier `type`
fail_compilation/fail123.d(17): Error: enum fail123.foo2 base type must not be void
---
*/
Expand Down
12 changes: 6 additions & 6 deletions test/fail_compilation/fail12378.d
@@ -1,8 +1,8 @@
/*
TEST_OUTPUT:
---
fail_compilation/fail12378.d(18): Error: undefined identifier 'ANYTHING'
fail_compilation/fail12378.d(18): Error: undefined identifier 'GOES'
fail_compilation/fail12378.d(18): Error: undefined identifier `ANYTHING`
fail_compilation/fail12378.d(18): Error: undefined identifier `GOES`
fail_compilation/fail12378.d(91): instantiated from here: MapResultS!((x0) => ANYTHING - GOES, Result)
fail_compilation/fail12378.d(17): instantiated from here: mapS!(Result)
fail_compilation/fail12378.d(100): instantiated from here: __lambda1!int
Expand All @@ -23,8 +23,8 @@ void testS()
/*
TEST_OUTPUT:
---
fail_compilation/fail12378.d(40): Error: undefined identifier 'ANYTHING'
fail_compilation/fail12378.d(40): Error: undefined identifier 'GOES'
fail_compilation/fail12378.d(40): Error: undefined identifier `ANYTHING`
fail_compilation/fail12378.d(40): Error: undefined identifier `GOES`
fail_compilation/fail12378.d(112): instantiated from here: MapResultC!((x0) => ANYTHING - GOES, Result)
fail_compilation/fail12378.d(39): instantiated from here: mapC!(Result)
fail_compilation/fail12378.d(123): instantiated from here: __lambda1!int
Expand All @@ -45,8 +45,8 @@ void testC()
/*
TEST_OUTPUT:
---
fail_compilation/fail12378.d(64): Error: undefined identifier 'ANYTHING'
fail_compilation/fail12378.d(64): Error: undefined identifier 'GOES'
fail_compilation/fail12378.d(64): Error: undefined identifier `ANYTHING`
fail_compilation/fail12378.d(64): Error: undefined identifier `GOES`
fail_compilation/fail12378.d(135): instantiated from here: MapResultI!((x0) => ANYTHING - GOES, Result)
fail_compilation/fail12378.d(63): instantiated from here: mapI!(Result)
fail_compilation/fail12378.d(143): instantiated from here: __lambda1!int
Expand Down
6 changes: 3 additions & 3 deletions test/fail_compilation/fail13601.d
@@ -1,9 +1,9 @@
/*
TEST_OUTPUT:
---
fail_compilation/fail13601.d(13): Error: variable __ctfe cannot be read at compile time
fail_compilation/fail13601.d(14): Error: variable __ctfe cannot be read at compile time
fail_compilation/fail13601.d(15): Error: variable __ctfe cannot be read at compile time
fail_compilation/fail13601.d(13): Error: variable `__ctfe` cannot be read at compile time
fail_compilation/fail13601.d(14): Error: variable `__ctfe` cannot be read at compile time
fail_compilation/fail13601.d(15): Error: variable `__ctfe` cannot be read at compile time
fail_compilation/fail13601.d(16): Error: variable __ctfe cannot be read at compile time
---
*/
Expand Down
2 changes: 1 addition & 1 deletion test/fail_compilation/fail189.d
@@ -1,7 +1,7 @@
/*
TEST_OUTPUT:
---
fail_compilation/fail189.d(10): Error: undefined identifier 'foo'
fail_compilation/fail189.d(10): Error: undefined identifier `foo`
---
*/

Expand Down
2 changes: 1 addition & 1 deletion test/fail_compilation/fail228.d
@@ -1,7 +1,7 @@
/*
TEST_OUTPUT:
---
fail_compilation/fail228.d(22): Error: undefined identifier 'localVariable'
fail_compilation/fail228.d(22): Error: undefined identifier `localVariable`
---
*/

Expand Down
2 changes: 1 addition & 1 deletion test/fail_compilation/fail236.d
@@ -1,7 +1,7 @@
/*
TEST_OUTPUT:
---
fail_compilation/fail236.d(14): Error: undefined identifier 'x'
fail_compilation/fail236.d(14): Error: undefined identifier `x`
fail_compilation/fail236.d(22): Error: template fail236.Templ2 cannot deduce function from argument types !()(int), candidates are:
fail_compilation/fail236.d(12): fail236.Templ2(alias a)(x)
---
Expand Down
2 changes: 1 addition & 1 deletion test/fail_compilation/fail237.d
@@ -1,7 +1,7 @@
/*
TEST_OUTPUT:
---
fail_compilation/fail237.d(11): Error: undefined identifier 'a' in module 'fail237'
fail_compilation/fail237.d(11): Error: undefined identifier `a` in module `fail237`
fail_compilation/fail237.d(11): while evaluating: `static assert(module fail237.a!().b)`
---
*/
Expand Down

0 comments on commit a91bc97

Please sign in to comment.