diff options
Diffstat (limited to 'deps/v8/src/torque/ast.h')
-rw-r--r-- | deps/v8/src/torque/ast.h | 21 |
1 files changed, 12 insertions, 9 deletions
diff --git a/deps/v8/src/torque/ast.h b/deps/v8/src/torque/ast.h index d80993e38f..52e3e300b6 100644 --- a/deps/v8/src/torque/ast.h +++ b/deps/v8/src/torque/ast.h @@ -595,11 +595,13 @@ struct AssumeTypeImpossibleExpression : Expression { struct NewExpression : Expression { DEFINE_AST_NODE_LEAF_BOILERPLATE(NewExpression) NewExpression(SourcePosition pos, TypeExpression* type, - std::vector<NameAndExpression> initializers, bool pretenured) + std::vector<NameAndExpression> initializers, bool pretenured, + bool clear_padding) : Expression(kKind, pos), type(type), initializers(std::move(initializers)), - pretenured(pretenured) {} + pretenured(pretenured), + clear_padding(clear_padding) {} void VisitAllSubExpressions(VisitCallback callback) override { for (auto& initializer : initializers) { @@ -611,6 +613,7 @@ struct NewExpression : Expression { TypeExpression* type; std::vector<NameAndExpression> initializers; bool pretenured; + bool clear_padding; }; enum class ImplicitKind { kNoImplicit, kJSImplicit, kImplicit }; @@ -724,13 +727,10 @@ struct ReturnStatement : Statement { struct DebugStatement : Statement { DEFINE_AST_NODE_LEAF_BOILERPLATE(DebugStatement) - DebugStatement(SourcePosition pos, const std::string& reason, - bool never_continues) - : Statement(kKind, pos), - reason(reason), - never_continues(never_continues) {} - std::string reason; - bool never_continues; + enum class Kind { kUnreachable, kDebug }; + DebugStatement(SourcePosition pos, Kind kind) + : Statement(kKind, pos), kind(kind) {} + Kind kind; }; struct AssertStatement : Statement { @@ -1083,10 +1083,13 @@ struct TorqueBuiltinDeclaration : BuiltinDeclaration { bool javascript_linkage, Identifier* name, ParameterList parameters, TypeExpression* return_type, + bool has_custom_interface_descriptor, base::Optional<Statement*> body) : BuiltinDeclaration(kKind, pos, javascript_linkage, transitioning, name, std::move(parameters), return_type), + has_custom_interface_descriptor(has_custom_interface_descriptor), body(body) {} + bool has_custom_interface_descriptor; base::Optional<Statement*> body; }; |