mirror of
https://github.com/fergalmoran/ladybird.git
synced 2025-12-26 11:20:03 +00:00
LibJS: Throw TypeError when calling class constructor without 'new'
This commit is contained in:
committed by
Andreas Kling
parent
b07c7f589f
commit
1b0c862f3a
@@ -50,6 +50,8 @@ public:
|
||||
virtual const FlyString& name() const override { return m_name; };
|
||||
void set_name(const FlyString& name) { m_name = name; };
|
||||
|
||||
void set_is_class_constructor() { m_is_class_constructor = true; };
|
||||
|
||||
protected:
|
||||
virtual bool is_strict_mode() const final { return m_is_strict; }
|
||||
|
||||
@@ -58,6 +60,8 @@ private:
|
||||
virtual LexicalEnvironment* create_environment() override;
|
||||
virtual void visit_children(Visitor&) override;
|
||||
|
||||
Value execute_function_body();
|
||||
|
||||
JS_DECLARE_NATIVE_GETTER(length_getter);
|
||||
JS_DECLARE_NATIVE_GETTER(name_getter);
|
||||
|
||||
@@ -68,6 +72,7 @@ private:
|
||||
i32 m_function_length { 0 };
|
||||
bool m_is_strict { false };
|
||||
bool m_is_arrow_function { false };
|
||||
bool m_is_class_constructor { false };
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user