From 09e85879d76cbb5c2a440a5781aa0955a06a32b6 Mon Sep 17 00:00:00 2001 From: Anton Bukov Date: Sat, 6 May 2023 22:53:52 +0300 Subject: [PATCH] Some fixes --- libsolidity/ast/Types.cpp | 3 +-- libsolidity/codegen/ir/IRGeneratorForStatements.cpp | 2 +- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/libsolidity/ast/Types.cpp b/libsolidity/ast/Types.cpp index facbb35d3..764d98816 100644 --- a/libsolidity/ast/Types.cpp +++ b/libsolidity/ast/Types.cpp @@ -4215,9 +4215,8 @@ MemberList::MemberMap MagicType::nativeMembers(ASTNode const*) const } else if (m_typeArgument->category() == Type::Category::Struct) { - StructType const* structTypePointer = dynamic_cast(m_typeArgument); return MemberList::MemberMap({ - {"typehash", structTypePointer}, + {"typehash", TypeProvider::fixedBytes(32)}, }); } else if (m_typeArgument->category() == Type::Category::Integer) diff --git a/libsolidity/codegen/ir/IRGeneratorForStatements.cpp b/libsolidity/codegen/ir/IRGeneratorForStatements.cpp index 277b81fec..4a2019f4c 100644 --- a/libsolidity/codegen/ir/IRGeneratorForStatements.cpp +++ b/libsolidity/codegen/ir/IRGeneratorForStatements.cpp @@ -1948,7 +1948,7 @@ void IRGeneratorForStatements::endVisit(MemberAccess const& _memberAccess) StructType const* structType = dynamic_cast(arg); solAssert(structType != nullptr); StructDefinition const& struct_ = structType->structDefinition(); - define(_memberAccess) << formatNumber(struct_.typehash()) << "\n"; + define(_memberAccess) << "0x" << toHex(struct_.typehash()) << "\n"; } else if (member == "min" || member == "max") {