aboutsummaryrefslogtreecommitdiffstats
path: root/liblll/CodeFragment.cpp
diff options
context:
space:
mode:
authorAlex Beregszaszi <alex@rtfs.hu>2016-10-27 20:45:33 +0800
committerAlex Beregszaszi <alex@rtfs.hu>2016-10-27 20:45:33 +0800
commit274c76fc5ee92118271d59bdfd80bf144d03c103 (patch)
tree92516f590aaf22dbf210eaa0e9e6f50435e6ccf5 /liblll/CodeFragment.cpp
parentf9946ec029cf14d973d78b31c265c8735ab9eb05 (diff)
downloaddexon-solidity-274c76fc5ee92118271d59bdfd80bf144d03c103.tar.gz
dexon-solidity-274c76fc5ee92118271d59bdfd80bf144d03c103.tar.zst
dexon-solidity-274c76fc5ee92118271d59bdfd80bf144d03c103.zip
LLL: introduce panic keyword
Diffstat (limited to 'liblll/CodeFragment.cpp')
-rw-r--r--liblll/CodeFragment.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/liblll/CodeFragment.cpp b/liblll/CodeFragment.cpp
index eadb0140..d4b89b70 100644
--- a/liblll/CodeFragment.cpp
+++ b/liblll/CodeFragment.cpp
@@ -579,6 +579,10 @@ void CodeFragment::constructOperation(sp::utree const& _t, CompilerState& _s)
m_asm.append(i.m_asm);
m_asm.popTo(1);
}
+ else if (us == "PANIC")
+ {
+ m_asm.appendJump(m_asm.errorTag());
+ }
else if (us.find_first_of("1234567890") != 0 && us.find_first_not_of("QWERTYUIOPASDFGHJKLZXCVBNM1234567890_") == string::npos)
m_asm.append((u256)varAddress(s));
else