mirror of
https://github.com/RGBCube/serenity
synced 2026-01-18 14:31:00 +00:00
When wrapping dictionary members, generate_wrap_statement was called
with the pattern "auto {} = ...", where "..." was determined based on
the variable's type. However, in generate_wrap_statement, if a type is
nullable it generates an if statement, so this would end up generating
something along the lines of
if (!retval.member.has_value()) {
auto wrapped_member0_value = JS::js_null();
} else {
auto wrapped_member0_value = JS::Value(...);
}
...which makes the declaration inaccessible. It now generates the same
code, but the "auto" declaration (now an explicit JS::Value declaration)
is outside of the if-statement.
|
||
|---|---|---|
| .. | ||
| BindingsGenerator | ||
| CMakeLists.txt | ||
| GenerateAriaRoles.cpp | ||
| GenerateCSSEasingFunctions.cpp | ||
| GenerateCSSEnums.cpp | ||
| GenerateCSSMathFunctions.cpp | ||
| GenerateCSSMediaFeatureID.cpp | ||
| GenerateCSSPropertyID.cpp | ||
| GenerateCSSPseudoClass.cpp | ||
| GenerateCSSTransformFunctions.cpp | ||
| GenerateCSSValueID.cpp | ||
| GenerateWindowOrWorkerInterfaces.cpp | ||
| GeneratorUtil.h | ||