diff --git a/Libraries/LibWeb/DOM/AttributeNames.cpp b/Libraries/LibWeb/DOM/AttributeNames.cpp index 3a5b0de38a..7d0efad171 100644 --- a/Libraries/LibWeb/DOM/AttributeNames.cpp +++ b/Libraries/LibWeb/DOM/AttributeNames.cpp @@ -34,7 +34,7 @@ namespace AttributeNames { ENUMERATE_HTML_ATTRIBUTES #undef __ENUMERATE_HTML_ATTRIBUTE -void initialize() +[[gnu::constructor]] static void initialize() { static bool s_initialized = false; if (s_initialized) diff --git a/Libraries/LibWeb/DOM/AttributeNames.h b/Libraries/LibWeb/DOM/AttributeNames.h index 9ffa580416..f4914fd9ad 100644 --- a/Libraries/LibWeb/DOM/AttributeNames.h +++ b/Libraries/LibWeb/DOM/AttributeNames.h @@ -32,8 +32,6 @@ namespace Web { namespace HTML { namespace AttributeNames { -void initialize(); - #define ENUMERATE_HTML_ATTRIBUTES \ __ENUMERATE_HTML_ATTRIBUTE(abbr) \ __ENUMERATE_HTML_ATTRIBUTE(accept) \ diff --git a/Libraries/LibWeb/DOM/Document.cpp b/Libraries/LibWeb/DOM/Document.cpp index 0a762d6200..ffb5eecb97 100644 --- a/Libraries/LibWeb/DOM/Document.cpp +++ b/Libraries/LibWeb/DOM/Document.cpp @@ -68,10 +68,6 @@ Document::Document(const URL& url) , m_url(url) , m_window(Window::create_with_document(*this)) { - HTML::AttributeNames::initialize(); - HTML::TagNames::initialize(); - SVG::TagNames::initialize(); - m_style_update_timer = Core::Timer::create_single_shot(0, [this] { update_style(); }); diff --git a/Libraries/LibWeb/DOM/TagNames.cpp b/Libraries/LibWeb/DOM/TagNames.cpp index bcc8a724bb..7415a0fa33 100644 --- a/Libraries/LibWeb/DOM/TagNames.cpp +++ b/Libraries/LibWeb/DOM/TagNames.cpp @@ -34,7 +34,7 @@ namespace TagNames { ENUMERATE_HTML_TAGS #undef __ENUMERATE_HTML_TAG -void initialize() +[[gnu::constructor]] static void initialize() { static bool s_initialized = false; if (s_initialized) diff --git a/Libraries/LibWeb/DOM/TagNames.h b/Libraries/LibWeb/DOM/TagNames.h index 7db11b7107..2d58060e99 100644 --- a/Libraries/LibWeb/DOM/TagNames.h +++ b/Libraries/LibWeb/DOM/TagNames.h @@ -32,8 +32,6 @@ namespace Web { namespace HTML { namespace TagNames { -void initialize(); - #define ENUMERATE_HTML_TAGS \ __ENUMERATE_HTML_TAG(a) \ __ENUMERATE_HTML_TAG(abbr) \ diff --git a/Libraries/LibWeb/SVG/TagNames.cpp b/Libraries/LibWeb/SVG/TagNames.cpp index 0ebb623521..56935e35ea 100644 --- a/Libraries/LibWeb/SVG/TagNames.cpp +++ b/Libraries/LibWeb/SVG/TagNames.cpp @@ -32,7 +32,7 @@ namespace Web::SVG::TagNames { ENUMERATE_SVG_TAGS #undef __ENUMERATE_SVG_TAG -void initialize() +[[gnu::constructor]] static void initialize() { static bool s_initialized = false; if (s_initialized) diff --git a/Libraries/LibWeb/SVG/TagNames.h b/Libraries/LibWeb/SVG/TagNames.h index 85f74bfe3b..9ec972ccba 100644 --- a/Libraries/LibWeb/SVG/TagNames.h +++ b/Libraries/LibWeb/SVG/TagNames.h @@ -30,8 +30,6 @@ namespace Web::SVG::TagNames { -void initialize(); - #define ENUMERATE_SVG_GRAPHICS_TAGS \ __ENUMERATE_SVG_TAG(svg) \ __ENUMERATE_SVG_TAG(path) \