Suggest correct version for pragma and complain about pre-release version.

This commit is contained in:
chriseth
2016-10-25 13:45:50 +02:00
parent 2f7c847ce4
commit 762f7ac250
2 changed files with 28 additions and 7 deletions
+13 -4
View File
@@ -52,13 +52,22 @@ void SyntaxChecker::endVisit(SourceUnit const& _sourceUnit)
{
if (!m_versionPragmaFound)
{
string errorString("Source file does not specify required compiler version!");
SemVerVersion recommendedVersion{string(VersionString)};
if (!recommendedVersion.isPrerelease())
errorString +=
"Consider adding \"pragma solidity ^" +
to_string(recommendedVersion.major()) +
string(".") +
to_string(recommendedVersion.minor()) +
string(".") +
to_string(recommendedVersion.patch());
string(";\"");
auto err = make_shared<Error>(Error::Type::Warning);
*err <<
errinfo_sourceLocation(_sourceUnit.location()) <<
errinfo_comment(
string("Source file does not specify required compiler version! ") +
string("Consider adding \"pragma solidity ^") + VersionNumber + string(";\".")
);
errinfo_comment(errorString);
m_errors.push_back(err);
}
}