diff options
author | Alex Beregszaszi <alex@rtfs.hu> | 2018-06-12 01:10:24 +0800 |
---|---|---|
committer | chriseth <chris@ethereum.org> | 2018-06-27 02:00:54 +0800 |
commit | 80b7d361873f239fef30d10a10c73e724eecff3e (patch) | |
tree | f4094da695b54614c9288173dffec7f97eba31c1 | |
parent | 503eb8caa53c1f6ef00cec1fee099b2457c304f4 (diff) | |
download | dexon-solidity-80b7d361873f239fef30d10a10c73e724eecff3e.tar.gz dexon-solidity-80b7d361873f239fef30d10a10c73e724eecff3e.tar.zst dexon-solidity-80b7d361873f239fef30d10a10c73e724eecff3e.zip |
Remove non-0.5.0 warning for emit keyword (make it mandatory)
7 files changed, 7 insertions, 25 deletions
diff --git a/libsolidity/analysis/TypeChecker.cpp b/libsolidity/analysis/TypeChecker.cpp index b46d4849..e833b8fe 100644 --- a/libsolidity/analysis/TypeChecker.cpp +++ b/libsolidity/analysis/TypeChecker.cpp @@ -1712,12 +1712,7 @@ bool TypeChecker::visit(FunctionCall const& _functionCall) m_errorReporter.typeError(_functionCall.location(), "\"suicide\" has been deprecated in favour of \"selfdestruct\""); } if (!m_insideEmitStatement && functionType->kind() == FunctionType::Kind::Event) - { - if (m_scope->sourceUnit().annotation().experimentalFeatures.count(ExperimentalFeature::V050)) - m_errorReporter.typeError(_functionCall.location(), "Event invocations have to be prefixed by \"emit\"."); - else - m_errorReporter.warning(_functionCall.location(), "Invoking events without \"emit\" prefix is deprecated."); - } + m_errorReporter.typeError(_functionCall.location(), "Event invocations have to be prefixed by \"emit\"."); TypePointers parameterTypes = functionType->parameterTypes(); diff --git a/test/libsolidity/syntaxTests/nameAndTypeResolution/080_event.sol b/test/libsolidity/syntaxTests/nameAndTypeResolution/080_event.sol index 780d26a6..c5f9e4d0 100644 --- a/test/libsolidity/syntaxTests/nameAndTypeResolution/080_event.sol +++ b/test/libsolidity/syntaxTests/nameAndTypeResolution/080_event.sol @@ -1,6 +1,5 @@ contract c { event e(uint indexed a, bytes3 indexed s, bool indexed b); - function f() public { e(2, "abc", true); } + function f() public { emit e(2, "abc", true); } } // ---- -// Warning: (102-119): Invoking events without "emit" prefix is deprecated. diff --git a/test/libsolidity/syntaxTests/nameAndTypeResolution/090_event_call.sol b/test/libsolidity/syntaxTests/nameAndTypeResolution/090_event_call.sol index abf46f94..8cf50597 100644 --- a/test/libsolidity/syntaxTests/nameAndTypeResolution/090_event_call.sol +++ b/test/libsolidity/syntaxTests/nameAndTypeResolution/090_event_call.sol @@ -1,6 +1,5 @@ contract c { event e(uint a, bytes3 indexed s, bool indexed b); - function f() public { e(2, "abc", true); } + function f() public { emit e(2, "abc", true); } } // ---- -// Warning: (94-111): Invoking events without "emit" prefix is deprecated. diff --git a/test/libsolidity/syntaxTests/nameAndTypeResolution/094_event_inheritance.sol b/test/libsolidity/syntaxTests/nameAndTypeResolution/094_event_inheritance.sol index d177209b..b13d5755 100644 --- a/test/libsolidity/syntaxTests/nameAndTypeResolution/094_event_inheritance.sol +++ b/test/libsolidity/syntaxTests/nameAndTypeResolution/094_event_inheritance.sol @@ -2,7 +2,6 @@ contract base { event e(uint a, bytes3 indexed s, bool indexed b); } contract c is base { - function f() public { e(2, "abc", true); } + function f() public { emit e(2, "abc", true); } } // ---- -// Warning: (120-137): Invoking events without "emit" prefix is deprecated. diff --git a/test/libsolidity/syntaxTests/nameAndTypeResolution/563_event_without_emit_deprecated.sol b/test/libsolidity/syntaxTests/nameAndTypeResolution/563_event_without_emit_deprecated.sol index d6068ff6..e9a56671 100644 --- a/test/libsolidity/syntaxTests/nameAndTypeResolution/563_event_without_emit_deprecated.sol +++ b/test/libsolidity/syntaxTests/nameAndTypeResolution/563_event_without_emit_deprecated.sol @@ -5,4 +5,4 @@ contract C { } } // ---- -// Warning: (62-65): Invoking events without "emit" prefix is deprecated. +// TypeError: (62-65): Event invocations have to be prefixed by "emit". diff --git a/test/libsolidity/syntaxTests/types/empty_tuple_event.sol b/test/libsolidity/syntaxTests/types/empty_tuple_event.sol index 3e40b155..0e9c84cb 100644 --- a/test/libsolidity/syntaxTests/types/empty_tuple_event.sol +++ b/test/libsolidity/syntaxTests/types/empty_tuple_event.sol @@ -2,9 +2,9 @@ pragma solidity ^0.4.3; contract C { event SomeEvent(); function a() public { - (SomeEvent(), 7); + (emit SomeEvent(), 7); } } // ---- -// Warning: (95-106): Invoking events without "emit" prefix is deprecated. +// TypeError: (95-106): Event invocations have to be prefixed by "emit". // Warning: (95-106): Tuple component cannot be empty. diff --git a/test/libsolidity/syntaxTests/types/empty_tuple_event_050.sol b/test/libsolidity/syntaxTests/types/empty_tuple_event_050.sol deleted file mode 100644 index aec5ff2a..00000000 --- a/test/libsolidity/syntaxTests/types/empty_tuple_event_050.sol +++ /dev/null @@ -1,10 +0,0 @@ -pragma experimental "v0.5.0"; -contract C { - event SomeEvent(); - function a() public { - (SomeEvent(), 7); - } -} -// ---- -// TypeError: (101-112): Event invocations have to be prefixed by "emit". -// TypeError: (101-112): Tuple component cannot be empty. |