Skip to content

Commit 63dac5c

Browse files
fixup! remove tracking of layout specifier of ancestors
1 parent 33eec07 commit 63dac5c

File tree

2 files changed

+0
-21
lines changed

2 files changed

+0
-21
lines changed

libsolidity/analysis/TypeChecker.cpp

Lines changed: 0 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -261,24 +261,6 @@ void TypeChecker::endVisit(ContractDefinition const& _contract)
261261
),
262262
"Storage layout can only be specified in the most derived contract."
263263
);
264-
265-
if (
266-
auto derivedContract = ancestorContract->annotation().derivedContractSpecifyingStorageLayout;
267-
derivedContract && _contract.storageLayoutSpecifier()
268-
)
269-
m_errorReporter.typeError(
270-
2031_error,
271-
_contract.location(),
272-
SecondarySourceLocation().append(
273-
"Storage layout was also specified by another derived contract here.",
274-
derivedContract->location()
275-
),
276-
"Conflicting storage layout specifications:"
277-
"Storage layout for base contract \'" + ancestorContract->name() + "\' was also specified by another contract which derives from it."
278-
);
279-
280-
if (_contract.storageLayoutSpecifier() && !m_errorReporter.hasErrors())
281-
ancestorContract->annotation().derivedContractSpecifyingStorageLayout = &_contract;
282264
}
283265
}
284266

libsolidity/ast/ASTAnnotations.h

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -172,9 +172,6 @@ struct ContractDefinitionAnnotation: TypeDeclarationAnnotation, StructurallyDocu
172172

173173
// Per-contract map from function AST IDs to internal dispatch function IDs.
174174
std::map<FunctionDefinition const*, uint64_t> internalFunctionIDs;
175-
176-
// Pointer to the most derived contract which specifies a custom storage layout
177-
ContractDefinition const* derivedContractSpecifyingStorageLayout;
178175
};
179176

180177
struct StorageLayoutSpecifierAnnotation: ASTAnnotation

0 commit comments

Comments
 (0)