aboutsummaryrefslogtreecommitdiffstats
path: root/libsolidity/analysis/ReferencesResolver.cpp
diff options
context:
space:
mode:
authorBalajiganapathi S <balajiganapathi.s@gmail.com>2017-10-29 16:08:40 +0800
committerAlex Beregszaszi <alex@rtfs.hu>2018-02-13 22:54:36 +0800
commit2859834e58e37e7b15a15f7df60feef3e1527c97 (patch)
tree65ec5738fb2e1cd029eece2364b63f3fd46d7da1 /libsolidity/analysis/ReferencesResolver.cpp
parent8f8ad3840eecd7b22565e0c36eb55ceca5d5b57a (diff)
downloaddexon-solidity-2859834e58e37e7b15a15f7df60feef3e1527c97.tar
dexon-solidity-2859834e58e37e7b15a15f7df60feef3e1527c97.tar.gz
dexon-solidity-2859834e58e37e7b15a15f7df60feef3e1527c97.tar.bz2
dexon-solidity-2859834e58e37e7b15a15f7df60feef3e1527c97.tar.lz
dexon-solidity-2859834e58e37e7b15a15f7df60feef3e1527c97.tar.xz
dexon-solidity-2859834e58e37e7b15a15f7df60feef3e1527c97.tar.zst
dexon-solidity-2859834e58e37e7b15a15f7df60feef3e1527c97.zip
Suggest alternatives when identifier not found.
Diffstat (limited to 'libsolidity/analysis/ReferencesResolver.cpp')
-rw-r--r--libsolidity/analysis/ReferencesResolver.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/libsolidity/analysis/ReferencesResolver.cpp b/libsolidity/analysis/ReferencesResolver.cpp
index 451d6c93..1b0e8179 100644
--- a/libsolidity/analysis/ReferencesResolver.cpp
+++ b/libsolidity/analysis/ReferencesResolver.cpp
@@ -47,7 +47,11 @@ bool ReferencesResolver::visit(Identifier const& _identifier)
{
auto declarations = m_resolver.nameFromCurrentScope(_identifier.name());
if (declarations.empty())
- declarationError(_identifier.location(), "Undeclared identifier.");
+ {
+ string const& suggestions = m_resolver.similarNameSuggestions(_identifier.name());
+ string errorMessage = "Undeclared identifier." + (suggestions.empty()? "": " Did you mean " + suggestions + "?");
+ declarationError(_identifier.location(), errorMessage);
+ }
else if (declarations.size() == 1)
_identifier.annotation().referencedDeclaration = declarations.front();
else