mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
Merge pull request #3565 from ethereum/doNotWarnAboutAnalysisOnlyExpFeatures
Do not warn about analysis-only experimental features.
This commit is contained in:
commit
8fc9535d43
@ -4,6 +4,7 @@ Features:
|
||||
* Code Generator: Assert that ``k != 0`` for ``molmod(a, b, k)`` and ``addmod(a, b, k)`` as experimental 0.5.0 feature.
|
||||
* Standard JSON: Reject badly formatted invalid JSON inputs.
|
||||
* Type Checker: Disallow uninitialized storage pointers as experimental 0.5.0 feature.
|
||||
* Syntax Analyser: Do not warn about experimental features if they do not concern code generation.
|
||||
|
||||
Bugfixes:
|
||||
* Assembly: Raise error on oversized number literals in assembly.
|
||||
|
@ -93,8 +93,10 @@ bool SyntaxChecker::visit(PragmaDirective const& _pragma)
|
||||
m_errorReporter.syntaxError(_pragma.location(), "Duplicate experimental feature name.");
|
||||
else
|
||||
{
|
||||
m_sourceUnit->annotation().experimentalFeatures.insert(ExperimentalFeatureNames.at(literal));
|
||||
m_errorReporter.warning(_pragma.location(), "Experimental features are turned on. Do not use experimental features on live deployments.");
|
||||
auto feature = ExperimentalFeatureNames.at(literal);
|
||||
m_sourceUnit->annotation().experimentalFeatures.insert(feature);
|
||||
if (!ExperimentalFeatureOnlyAnalysis.count(feature))
|
||||
m_errorReporter.warning(_pragma.location(), "Experimental features are turned on. Do not use experimental features on live deployments.");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -35,12 +35,6 @@ namespace test
|
||||
|
||||
class SMTCheckerFramework: public AnalysisFramework
|
||||
{
|
||||
public:
|
||||
SMTCheckerFramework()
|
||||
{
|
||||
m_warningsToFilter.push_back("Experimental features are turned on.");
|
||||
}
|
||||
|
||||
protected:
|
||||
virtual std::pair<SourceUnit const*, ErrorList>
|
||||
parseAnalyseAndReturnError(
|
||||
@ -103,6 +97,7 @@ BOOST_AUTO_TEST_CASE(warn_on_struct)
|
||||
}
|
||||
)";
|
||||
CHECK_WARNING_ALLOW_MULTI(text, (vector<string>{
|
||||
"Experimental feature",
|
||||
"Assertion checker does not yet implement this expression.",
|
||||
"Assertion checker does not yet support the type of this variable."
|
||||
}));
|
||||
|
Loading…
Reference in New Issue
Block a user