From 30b325fdc148d5014f04fd238362e3a1df10310f Mon Sep 17 00:00:00 2001 From: chriseth Date: Tue, 17 Nov 2015 00:06:57 +0100 Subject: Allow "new expressions" also for general type names. Breaking change: If you want to send value with a contract creation, you have to use parentheses now: `(new ContractName).value(2 ether)(arg1, arg2)` --- libsolidity/ast/ASTAnnotations.h | 3 +++ 1 file changed, 3 insertions(+) (limited to 'libsolidity/ast/ASTAnnotations.h') diff --git a/libsolidity/ast/ASTAnnotations.h b/libsolidity/ast/ASTAnnotations.h index bb59ceae..b9667302 100644 --- a/libsolidity/ast/ASTAnnotations.h +++ b/libsolidity/ast/ASTAnnotations.h @@ -111,6 +111,9 @@ struct UserDefinedTypeNameAnnotation: TypeNameAnnotation { /// Referenced declaration, set during reference resolution stage. Declaration const* referencedDeclaration = nullptr; + /// Stores a reference to the current contract. + /// This is needed because types of base contracts change depending on the context. + ContractDefinition const* contractScope = nullptr; }; struct VariableDeclarationStatementAnnotation: StatementAnnotation -- cgit v1.2.3