aboutsummaryrefslogtreecommitdiffstats
path: root/libsolidity
diff options
context:
space:
mode:
authorchriseth <chris@ethereum.org>2018-08-16 23:28:49 +0800
committerchriseth <chris@ethereum.org>2018-09-04 00:35:57 +0800
commit431c2fbcf370926d6c3e7e93667d8472f2f6b73b (patch)
treece2e41de6ad496729b62a493057e72a2413ad215 /libsolidity
parent75a92b0ffd0946c17a27a58e6e02abe96cd3fa00 (diff)
downloaddexon-solidity-431c2fbcf370926d6c3e7e93667d8472f2f6b73b.tar.gz
dexon-solidity-431c2fbcf370926d6c3e7e93667d8472f2f6b73b.tar.zst
dexon-solidity-431c2fbcf370926d6c3e7e93667d8472f2f6b73b.zip
Turn warning into error.
Diffstat (limited to 'libsolidity')
-rw-r--r--libsolidity/analysis/ViewPureChecker.cpp12
1 files changed, 7 insertions, 5 deletions
diff --git a/libsolidity/analysis/ViewPureChecker.cpp b/libsolidity/analysis/ViewPureChecker.cpp
index 291b4681..be6b7ef7 100644
--- a/libsolidity/analysis/ViewPureChecker.cpp
+++ b/libsolidity/analysis/ViewPureChecker.cpp
@@ -262,16 +262,18 @@ void ViewPureChecker::reportMutability(
if (m_currentFunction->isPublic() && m_currentFunction->inContractKind() != ContractDefinition::ContractKind::Library)
{
if (_nestedLocation)
- m_errorReporter.warning(
+ m_errorReporter.typeError(
_location,
- "This modifier uses \"msg.value\" and thus the function should be payable.",
- SecondarySourceLocation().append("\"msg.value\" appears here inside the modifier.", *_nestedLocation)
+ SecondarySourceLocation().append("\"msg.value\" appears here inside the modifier.", *_nestedLocation),
+ "This modifier uses \"msg.value\" and thus the function has to be payable or internal."
);
else
- m_errorReporter.warning(
+ m_errorReporter.typeError(
_location,
- "\"msg.value\" used in non-payable function. Do you want to add the \"payable\" modifier to this function?"
+ "\"msg.value\" can only be used in payable public functions. Make the function "
+ "\"payable\" or use an internal function to avoid this error."
);
+ m_errors = true;
}
}
else