Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: b0498801e751395d6776b6d459d2010737c217b1
https://github.com/WebKit/WebKit/commit/b0498801e751395d6776b6d459d2010737c217b1
Author: Johann Klähn <[email protected]>
Date: 2025-07-30 (Wed, 30 Jul 2025)
Changed paths:
M Source/JavaScriptCore/API/JSCallbackObject.h
M Source/JavaScriptCore/bytecode/UnlinkedCodeBlock.h
M Source/JavaScriptCore/interpreter/Interpreter.cpp
M Source/JavaScriptCore/runtime/AbstractModuleRecord.h
M Source/JavaScriptCore/runtime/EvalExecutable.h
M Source/JavaScriptCore/runtime/GenericArgumentsImpl.h
M Source/JavaScriptCore/runtime/IntlCollator.h
M Source/JavaScriptCore/runtime/IntlDateTimeFormat.h
M Source/JavaScriptCore/runtime/IntlDateTimeFormatPrototype.cpp
M Source/JavaScriptCore/runtime/IntlLocale.h
M Source/JavaScriptCore/runtime/IntlNumberFormat.h
M Source/JavaScriptCore/runtime/IntlPluralRules.h
M Source/JavaScriptCore/runtime/IntlRelativeTimeFormat.h
M Source/JavaScriptCore/runtime/JSArrayBufferView.h
M Source/JavaScriptCore/runtime/JSAsyncDisposableStack.h
M Source/JavaScriptCore/runtime/JSAsyncFromSyncIterator.h
M Source/JavaScriptCore/runtime/JSBoundFunction.h
M Source/JavaScriptCore/runtime/JSCallee.h
M Source/JavaScriptCore/runtime/JSDisposableStack.h
M Source/JavaScriptCore/runtime/JSFunction.h
M Source/JavaScriptCore/runtime/JSGenericTypedArrayView.h
M Source/JavaScriptCore/runtime/JSGlobalProxy.h
M Source/JavaScriptCore/runtime/JSInternalFieldObjectImpl.h
M Source/JavaScriptCore/runtime/JSLexicalEnvironment.h
M Source/JavaScriptCore/runtime/JSMapIterator.h
M Source/JavaScriptCore/runtime/JSModuleEnvironment.h
M Source/JavaScriptCore/runtime/JSModuleNamespaceObject.h
M Source/JavaScriptCore/runtime/JSModuleRecord.h
M Source/JavaScriptCore/runtime/JSNativeStdFunction.h
M Source/JavaScriptCore/runtime/JSRegExpStringIterator.h
M Source/JavaScriptCore/runtime/JSRemoteFunction.h
M Source/JavaScriptCore/runtime/JSSetIterator.h
M Source/JavaScriptCore/runtime/JSSymbolTableObject.h
M Source/JavaScriptCore/runtime/JSWrapForValidIterator.h
M Source/JavaScriptCore/runtime/JSWrapperObject.h
M Source/JavaScriptCore/runtime/ModuleProgramExecutable.h
M Source/JavaScriptCore/runtime/ProgramExecutable.h
M Source/JavaScriptCore/runtime/ProxyObject.h
M Source/JavaScriptCore/runtime/RegExpObject.h
M Source/JavaScriptCore/runtime/ShadowRealmObject.h
M Source/JavaScriptCore/runtime/SyntheticModuleRecord.h
M Source/JavaScriptCore/tools/JSDollarVM.cpp
M Source/JavaScriptCore/tools/JSDollarVM.h
M Source/JavaScriptCore/wasm/js/JSWebAssemblyGlobal.h
M Source/JavaScriptCore/wasm/js/JSWebAssemblyInstance.h
M Source/JavaScriptCore/wasm/js/JSWebAssemblyMemory.h
M Source/JavaScriptCore/wasm/js/JSWebAssemblyModule.h
M Source/JavaScriptCore/wasm/js/JSWebAssemblyTable.h
M Source/JavaScriptCore/wasm/js/WebAssemblyFunction.h
M Source/JavaScriptCore/wasm/js/WebAssemblyFunctionBase.h
M Source/JavaScriptCore/wasm/js/WebAssemblyGCObjectBase.h
M Source/JavaScriptCore/wasm/js/WebAssemblyModuleRecord.h
M Source/JavaScriptCore/wasm/js/WebAssemblyWrapperFunction.h
M Source/WebCore/bindings/js/JSDOMBuiltinConstructorBase.h
M Source/WebCore/bindings/js/JSShadowRealmGlobalScopeBase.h
M Source/WebCore/bindings/js/JSWorkerGlobalScopeBase.h
M Source/WebCore/bindings/js/JSWorkletGlobalScopeBase.h
Log Message:
-----------
[JSC] Fix wrong member access due to DECLARE_VISIT_CHILDREN macro
https://bugs.webkit.org/show_bug.cgi?id=296688
Reviewed by Yusuke Suzuki.
Using the DECLARE_VISIT_CHILDREN macro in private/protected sections can leak
subsequent members, as the macro ends with a public access specifier.
This change moves all uses of the macro into the public section of their
respective classes and selectively makes members used in existing
code public.
* Source/JavaScriptCore/runtime/JSBoundFunction.h:
Move DECLARE_VISIT_CHILDREN macro to the public section.
(JSC::JSBoundFunction::isTainted): New public getter for m_isTainted.
* Source/JavaScriptCore/interpreter/Interpreter.cpp:
(JSC::Interpreter::executeCall): Use new isTainted() getter.
* Source/JavaScriptCore/runtime/IntlDateTimeFormat.h:
Move DECLARE_VISIT_CHILDREN macro to the public section.
* Source/JavaScriptCore/runtime/IntlDateTimeFormatPrototype.cpp:
(JSC::handleDateTimeValue): Made TU-local as it is only used by host
functions within this file.
(JSC::IntlDateTimeFormat::handleDateTimeValue): Deleted.
* Source/JavaScriptCore/runtime/IntlNumberFormat.h:
Move DECLARE_VISIT_CHILDREN macro to the public section.
Add missing friend declarations.
(JSC::IntlNumberFormat::trailingZeroDisplayString): Made public for
use in IntlPluralRules::resolvedOptions.
* Source/JavaScriptCore/runtime/IntlPluralRules.h:
Move DECLARE_VISIT_CHILDREN macro to the public section.
Add missing friend declaration.
* Source/JavaScriptCore/runtime/RegExpObject.h:
Move DECLARE_VISIT_CHILDREN macro to the public section.
(JSC::RegExpObject::lastIndexIsWritable): Make public for
use in regExpProtoFuncSearch.
* Source/JavaScriptCore/tools/JSDollarVM.cpp:
(JSC::JSDollarVM::WasmStreamingCompiler): Add missing private
access specifier.
* Source/JavaScriptCore/API/JSCallbackObject.h:
* Source/JavaScriptCore/bytecode/UnlinkedCodeBlock.h:
* Source/JavaScriptCore/runtime/AbstractModuleRecord.h:
* Source/JavaScriptCore/runtime/EvalExecutable.h:
* Source/JavaScriptCore/runtime/GenericArgumentsImpl.h:
* Source/JavaScriptCore/runtime/IntlCollator.h:
* Source/JavaScriptCore/runtime/IntlLocale.h:
* Source/JavaScriptCore/runtime/IntlRelativeTimeFormat.h:
* Source/JavaScriptCore/runtime/JSArrayBufferView.h:
* Source/JavaScriptCore/runtime/JSAsyncDisposableStack.h:
* Source/JavaScriptCore/runtime/JSAsyncFromSyncIterator.h:
* Source/JavaScriptCore/runtime/JSCallee.h:
* Source/JavaScriptCore/runtime/JSDisposableStack.h:
* Source/JavaScriptCore/runtime/JSFunction.h:
* Source/JavaScriptCore/runtime/JSGenericTypedArrayView.h:
* Source/JavaScriptCore/runtime/JSGlobalProxy.h:
* Source/JavaScriptCore/runtime/JSInternalFieldObjectImpl.h:
* Source/JavaScriptCore/runtime/JSLexicalEnvironment.h:
* Source/JavaScriptCore/runtime/JSMapIterator.h:
* Source/JavaScriptCore/runtime/JSModuleEnvironment.h:
* Source/JavaScriptCore/runtime/JSModuleNamespaceObject.h:
* Source/JavaScriptCore/runtime/JSModuleRecord.h:
* Source/JavaScriptCore/runtime/JSNativeStdFunction.h:
* Source/JavaScriptCore/runtime/JSRegExpStringIterator.h:
* Source/JavaScriptCore/runtime/JSRemoteFunction.h:
* Source/JavaScriptCore/runtime/JSSetIterator.h:
* Source/JavaScriptCore/runtime/JSSymbolTableObject.h:
* Source/JavaScriptCore/runtime/JSWrapForValidIterator.h:
* Source/JavaScriptCore/runtime/JSWrapperObject.h:
* Source/JavaScriptCore/runtime/ModuleProgramExecutable.h:
* Source/JavaScriptCore/runtime/ProgramExecutable.h:
* Source/JavaScriptCore/runtime/ProxyObject.h:
* Source/JavaScriptCore/runtime/ShadowRealmObject.h:
* Source/JavaScriptCore/runtime/SyntheticModuleRecord.h:
* Source/JavaScriptCore/tools/JSDollarVM.h:
* Source/JavaScriptCore/wasm/js/JSWebAssemblyGlobal.h:
* Source/JavaScriptCore/wasm/js/JSWebAssemblyInstance.h:
* Source/JavaScriptCore/wasm/js/JSWebAssemblyMemory.h:
* Source/JavaScriptCore/wasm/js/JSWebAssemblyModule.h:
* Source/JavaScriptCore/wasm/js/JSWebAssemblyTable.h:
* Source/JavaScriptCore/wasm/js/WebAssemblyFunction.h:
* Source/JavaScriptCore/wasm/js/WebAssemblyFunctionBase.h:
* Source/JavaScriptCore/wasm/js/WebAssemblyGCObjectBase.h:
* Source/JavaScriptCore/wasm/js/WebAssemblyModuleRecord.h:
* Source/JavaScriptCore/wasm/js/WebAssemblyWrapperFunction.h:
* Source/WebCore/bindings/js/JSDOMBuiltinConstructorBase.h:
* Source/WebCore/bindings/js/JSShadowRealmGlobalScopeBase.h:
* Source/WebCore/bindings/js/JSWorkerGlobalScopeBase.h:
* Source/WebCore/bindings/js/JSWorkletGlobalScopeBase.h:
Move DECLARE_VISIT_CHILDREN macro to the public section.
Canonical link: https://commits.webkit.org/298066@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes