From 93397e3fcf73aa2dd26c0c4769c16d3c689dbb47 Mon Sep 17 00:00:00 2001 From: StefanStojanovic Date: Fri, 16 May 2025 15:59:52 +0200 Subject: [PATCH 1/2] build,win: fix dll build Fixes: https://github.com/nodejs/node/issues/58208 --- src/node_builtins.cc | 4 ++++ src/node_builtins.h | 4 +--- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/node_builtins.cc b/src/node_builtins.cc index 253ecaad12dace..5c93c1e9e4e940 100644 --- a/src/node_builtins.cc +++ b/src/node_builtins.cc @@ -64,6 +64,10 @@ BuiltinLoader::BuiltinLoader() #endif // HAVE_AMARO } +auto BuiltinLoader::GetBuiltinIds() const -> decltype(auto) { + return std::views::keys(*source_.read()); +} + bool BuiltinLoader::Exists(const char* id) { auto source = source_.read(); return source->find(id) != source->end(); diff --git a/src/node_builtins.h b/src/node_builtins.h index 83ddad2127227d..f5be59363ce6fd 100644 --- a/src/node_builtins.h +++ b/src/node_builtins.h @@ -127,9 +127,7 @@ class NODE_EXTERN_PRIVATE BuiltinLoader { void CopySourceAndCodeCacheReferenceFrom(const BuiltinLoader* other); - [[nodiscard]] auto GetBuiltinIds() const { - return std::views::keys(*source_.read()); - } + [[nodiscard]] auto GetBuiltinIds() const -> decltype(auto); void SetEagerCompile() { should_eager_compile_ = true; } From d9a13d69e0e0fbea8d7266a2b7ab828d68724230 Mon Sep 17 00:00:00 2001 From: StefanStojanovic Date: Fri, 30 May 2025 14:04:02 +0200 Subject: [PATCH 2/2] fix: resolve PR review --- src/node_builtins.cc | 3 ++- src/node_builtins.h | 4 +++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/node_builtins.cc b/src/node_builtins.cc index 5c93c1e9e4e940..6c6c4dd3236b47 100644 --- a/src/node_builtins.cc +++ b/src/node_builtins.cc @@ -64,7 +64,8 @@ BuiltinLoader::BuiltinLoader() #endif // HAVE_AMARO } -auto BuiltinLoader::GetBuiltinIds() const -> decltype(auto) { +std::ranges::keys_view> +BuiltinLoader::GetBuiltinIds() const { return std::views::keys(*source_.read()); } diff --git a/src/node_builtins.h b/src/node_builtins.h index f5be59363ce6fd..7a7b84337feb67 100644 --- a/src/node_builtins.h +++ b/src/node_builtins.h @@ -127,7 +127,9 @@ class NODE_EXTERN_PRIVATE BuiltinLoader { void CopySourceAndCodeCacheReferenceFrom(const BuiltinLoader* other); - [[nodiscard]] auto GetBuiltinIds() const -> decltype(auto); + [[nodiscard]] std::ranges::keys_view< + std::ranges::ref_view> + GetBuiltinIds() const; void SetEagerCompile() { should_eager_compile_ = true; }