Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 5dd73a1f99dc3d03ff52ee52ca8f24801f6b1988
      
https://github.com/WebKit/WebKit/commit/5dd73a1f99dc3d03ff52ee52ca8f24801f6b1988
  Author: Sosuke Suzuki <[email protected]>
  Date:   2026-05-06 (Wed, 06 May 2026)

  Changed paths:
    M Source/bmalloc/libpas/src/libpas/pas_all_heaps.c

  Log Message:
  -----------
  [libpas] Fix `pas_all_heaps` standalone build
https://bugs.webkit.org/show_bug.cgi?id=314265

Reviewed by Yusuke Suzuki.

312743@main ([Build Speed] Reduce unnecessary includes in libpas code)
removed seven includes from pas_all_heaps.c. The declarations they
brought in are still referenced by the file inside #if PAS_ENABLE_THINGY
/ #if PAS_ENABLE_ISO / etc. blocks. When libpas is built with
PAS_BMALLOC defined (the bmalloc.framework configuration used by
build-jsc and the WebKit framework build), all of those flags are 0 and
the references preprocess away, so the build is unaffected and CI stays
green.

The libpas standalone Xcode project (Source/bmalloc/libpas/libpas.xcodeproj),
used by Source/bmalloc/libpas/build.sh, defines neither PAS_BMALLOC nor
PAS_LIBMALLOC. pas_config.h sets every PAS_ENABLE_* to 1 in that case
and compiling the pas target (libpas.dylib) fails:

    pas_all_heaps.c:58: error: use of undeclared identifier 
'thingy_primitive_heap'
    pas_all_heaps.c:60: error: use of undeclared identifier 
'thingy_utility_heap'
    pas_all_heaps.c:65: error: use of undeclared identifier 
'iso_common_primitive_heap'
    pas_all_heaps.c:70: error: use of undeclared identifier 
'iso_test_common_primitive_heap'
    pas_all_heaps.c:75: error: use of undeclared identifier 
'minalign32_common_primitive_heap'
    pas_all_heaps.c:80: error: use of undeclared identifier 
'pagesize64k_common_primitive_heap'
    pas_all_heaps.c:90: error: use of undeclared identifier 
'hotbit_common_primitive_heap'

Restore the six headers that declare those symbols, gated on the same
PAS_ENABLE_* flags as the corresponding usage so the build-time win
from 312743@main is preserved when the flags are 0. The seventh removed
include (pas_scavenger.h) is genuinely unused by this file and stays
out.

Verified with:

    Source/bmalloc/libpas/build.sh -c Debug -s macosx -v all

* Source/bmalloc/libpas/src/libpas/pas_all_heaps.c:

Canonical link: https://commits.webkit.org/312762@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications

Reply via email to