NEW309138
Remove SVGUnknownElement.h / SVGUnknownElement.cpp
https://bugs.webkit.org/show_bug.cgi?id=309138
Summary Remove SVGUnknownElement.h / SVGUnknownElement.cpp
Karl Dubost
Reported 2026-03-03 19:41:07 PST
Doing that will break the code, as there is a dependency in svgtags.in for AnimateColor on SVGUnknownElement. https://searchfox.org/wubkat/rev/0bebf49082ee03d028cd6c079ff4416ae25ddf89/Source/WebCore/svg/svgtags.in#11 ``` animateColor interfaceName=SVGUnknownElement, JSInterfaceName=SVGElement, noConstructor ``` for https://searchfox.org/wubkat/search?q=animateColor&path=GENERATED&case=false&regexp=false This dependency is necessary to please the HTML parser. So there are other issues associated with this. We could maybe use SVGElement instead of SVGUnknownElement. but that would require SVGElement::create() because of fallbackInterfaceName="SVGElement" Also should we skip generating #include "${interfaceName}.h" for any element with noConstructor in make_names.pl ??? This is currently. https://searchfox.org/wubkat/rev/0bebf49082ee03d028cd6c079ff4416ae25ddf89/Source/WebCore/dom/make_names.pl#1607-1612 ``` for my $elementKey (sort keys %allElements) { my $interfaceName = $allElements{$elementKey}{interfaceName}; next if $tagsSeen{$interfaceName}; if ($allElements{$elementKey}{conditional}) { # We skip feature-define-specific #includes here since we handle them separately. next; ``` --- a/Source/WebCore/dom/make_names.pl +++ b/Source/WebCore/dom/make_names.pl @@ -1607,6 +1607,7 @@ sub printElementIncludes for my $elementKey (sort keys %allElements) { my $interfaceName = $allElements{$elementKey}{interfaceName}; next if $tagsSeen{$interfaceName}; + next if $allElements{$elementKey}{noConstructor}; if ($allElements{$elementKey}{conditional}) { # We skip feature-define-specific #includes here since we handle them separately. next;
Attachments
Note You need to log in before you can comment on or make changes to this bug.