aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlex Beregszaszi <alex@rtfs.hu>2016-11-15 18:12:03 +0800
committerAlex Beregszaszi <alex@rtfs.hu>2016-11-15 18:30:33 +0800
commitae8403ed08cf3b2b5bec1d3f8da0c6c7425a4d5a (patch)
treea531dc8c33440f920c2dd1e2972969c4e96c49d4
parent702ab4cb4f9344ce6d8fb1311db7c9fc94431386 (diff)
downloaddexon-solidity-ae8403ed08cf3b2b5bec1d3f8da0c6c7425a4d5a.tar
dexon-solidity-ae8403ed08cf3b2b5bec1d3f8da0c6c7425a4d5a.tar.gz
dexon-solidity-ae8403ed08cf3b2b5bec1d3f8da0c6c7425a4d5a.tar.bz2
dexon-solidity-ae8403ed08cf3b2b5bec1d3f8da0c6c7425a4d5a.tar.lz
dexon-solidity-ae8403ed08cf3b2b5bec1d3f8da0c6c7425a4d5a.tar.xz
dexon-solidity-ae8403ed08cf3b2b5bec1d3f8da0c6c7425a4d5a.tar.zst
dexon-solidity-ae8403ed08cf3b2b5bec1d3f8da0c6c7425a4d5a.zip
Rename ErrorTag to invalidJumpLabel in inline assembly
-rw-r--r--Changelog.md2
-rw-r--r--docs/control-structures.rst2
-rw-r--r--libsolidity/inlineasm/AsmCodeGen.cpp2
-rw-r--r--test/libsolidity/InlineAssembly.cpp2
-rw-r--r--test/libsolidity/SolidityEndToEndTest.cpp4
5 files changed, 6 insertions, 6 deletions
diff --git a/Changelog.md b/Changelog.md
index d5f8cea9..a392ec01 100644
--- a/Changelog.md
+++ b/Changelog.md
@@ -2,7 +2,7 @@
Features:
* Do-while loops: support for a C-style do{<block>}while(<expr>); control structure
- * Inline assembly: support ``ErrorTag`` as a jump label.
+ * Inline assembly: support ``invalidJumpLabel`` as a jump label.
* Type checker: now more eagerly searches for a common type of an inline array with mixed types
* Code generator: generates a runtime error when an out-of-range value is converted into an enum type.
diff --git a/docs/control-structures.rst b/docs/control-structures.rst
index 351e4c91..7e1c690d 100644
--- a/docs/control-structures.rst
+++ b/docs/control-structures.rst
@@ -718,7 +718,7 @@ will have a wrong impression about the stack height at label ``two``:
.. note::
- ``ErrorTag`` is a pre-defined label. Jumping to this location will always
+ ``invalidJumpLabel`` is a pre-defined label. Jumping to this location will always
result in an invalid jump, effectively aborting execution of the code.
Declaring Assembly-Local Variables
diff --git a/libsolidity/inlineasm/AsmCodeGen.cpp b/libsolidity/inlineasm/AsmCodeGen.cpp
index 1b789c5f..771f1042 100644
--- a/libsolidity/inlineasm/AsmCodeGen.cpp
+++ b/libsolidity/inlineasm/AsmCodeGen.cpp
@@ -84,7 +84,7 @@ public:
LabelOrganizer(GeneratorState& _state): m_state(_state)
{
// Make the Solidity ErrorTag available to inline assembly
- m_state.labels.insert(make_pair("ErrorTag", m_state.assembly.errorTag()));
+ m_state.labels.insert(make_pair("invalidJumpLabel", m_state.assembly.errorTag()));
}
template <class T>
diff --git a/test/libsolidity/InlineAssembly.cpp b/test/libsolidity/InlineAssembly.cpp
index a26e9470..185a6215 100644
--- a/test/libsolidity/InlineAssembly.cpp
+++ b/test/libsolidity/InlineAssembly.cpp
@@ -179,7 +179,7 @@ BOOST_AUTO_TEST_CASE(imbalanced_stack)
BOOST_AUTO_TEST_CASE(error_tag)
{
- BOOST_CHECK(successAssemble("{ ErrorTag }"));
+ BOOST_CHECK(successAssemble("{ invalidJumpLabel }"));
}
BOOST_AUTO_TEST_SUITE_END()
diff --git a/test/libsolidity/SolidityEndToEndTest.cpp b/test/libsolidity/SolidityEndToEndTest.cpp
index e50c2a85..d8924250 100644
--- a/test/libsolidity/SolidityEndToEndTest.cpp
+++ b/test/libsolidity/SolidityEndToEndTest.cpp
@@ -7692,13 +7692,13 @@ BOOST_AUTO_TEST_CASE(packed_storage_overflow)
BOOST_CHECK(callContractFunction("f()") == encodeArgs(u256(0x1234), u256(0), u256(0), u256(0xfffe)));
}
-BOOST_AUTO_TEST_CASE(inline_assembly_errortag)
+BOOST_AUTO_TEST_CASE(inline_assembly_invalidjumplabel)
{
char const* sourceCode = R"(
contract C {
function f() {
assembly {
- jump(ErrorTag)
+ jump(invalidJumpLabel)
}
}
}