aboutsummaryrefslogtreecommitdiffstats
path: root/libsolidity/ast/ASTJsonConverter.cpp
diff options
context:
space:
mode:
authorchriseth <c@ethdev.com>2017-01-17 17:31:09 +0800
committerchriseth <c@ethdev.com>2017-01-17 17:45:45 +0800
commit99eaadd2cd4ece9c3ceba16fa5559c45c2e66b08 (patch)
treeb02e8efce3ff7e63b8a285bca0c93e24fdc548ff /libsolidity/ast/ASTJsonConverter.cpp
parent6ecb4aa36f8c30ca91f650d17f1214c2f2bc4319 (diff)
downloaddexon-solidity-99eaadd2cd4ece9c3ceba16fa5559c45c2e66b08.tar
dexon-solidity-99eaadd2cd4ece9c3ceba16fa5559c45c2e66b08.tar.gz
dexon-solidity-99eaadd2cd4ece9c3ceba16fa5559c45c2e66b08.tar.bz2
dexon-solidity-99eaadd2cd4ece9c3ceba16fa5559c45c2e66b08.tar.lz
dexon-solidity-99eaadd2cd4ece9c3ceba16fa5559c45c2e66b08.tar.xz
dexon-solidity-99eaadd2cd4ece9c3ceba16fa5559c45c2e66b08.tar.zst
dexon-solidity-99eaadd2cd4ece9c3ceba16fa5559c45c2e66b08.zip
Deterministic AST node identifiers.
Diffstat (limited to 'libsolidity/ast/ASTJsonConverter.cpp')
-rw-r--r--libsolidity/ast/ASTJsonConverter.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/libsolidity/ast/ASTJsonConverter.cpp b/libsolidity/ast/ASTJsonConverter.cpp
index abaad0fd..de8fde92 100644
--- a/libsolidity/ast/ASTJsonConverter.cpp
+++ b/libsolidity/ast/ASTJsonConverter.cpp
@@ -42,7 +42,7 @@ void ASTJsonConverter::addJsonNode(
{
Json::Value node;
- node["id"] = reinterpret_cast<Json::UInt64>(&_node);
+ node["id"] = _node.id();
node["src"] = sourceLocationToString(_node.location());
node["name"] = _nodeName;
if (_attributes.size() != 0)
@@ -124,7 +124,7 @@ bool ASTJsonConverter::visit(ContractDefinition const& _node)
{
Json::Value linearizedBaseContracts(Json::arrayValue);
for (auto const& baseContract: _node.annotation().linearizedBaseContracts)
- linearizedBaseContracts.append(reinterpret_cast<Json::UInt64>(baseContract));
+ linearizedBaseContracts.append(baseContract->id());
addJsonNode(_node, "ContractDefinition", {
make_pair("name", _node.name()),
make_pair("isLibrary", _node.isLibrary()),