From b642c563f3731119a62e7f539a4c7ba7aa47092c Mon Sep 17 00:00:00 2001 From: Ronak <215289495+RonakChakrawati@users.noreply.github.com> Date: Thu, 29 Oct 2026 16:27:46 +0530 Subject: [PATCH] refactor: use `constants/float64/nan` in `stats/base/dists/beta/mean` Replace inline NaN generation in the C implementation with the shared stdlib NaN constant. This removes a magic expression in favor of the canonical constant and keeps NaN generation consistent across packages. Add `@stdlib/constants/float64/nan` as a dependency to each manifest configuration which compiles `src/main.c`. Ref: #11743 --- type: pre_commit_static_analysis_report description: Results of running static analysis checks when committing changes. report: - task: lint_filenames status: passed - task: lint_editorconfig status: passed - task: lint_markdown_pkg_readmes status: na - task: lint_markdown_docs status: na - task: lint_markdown status: na - task: lint_package_json status: na - task: lint_repl_help status: na - task: lint_javascript_src status: na - task: lint_javascript_cli status: na - task: lint_javascript_examples status: na - task: lint_javascript_tests status: na - task: lint_javascript_benchmarks status: na - task: lint_python status: na - task: lint_r status: na - task: lint_c_src status: passed - task: lint_c_examples status: na - task: lint_c_benchmarks status: na - task: lint_c_tests_fixtures status: na - task: lint_shell status: na - task: lint_typescript_declarations status: passed - task: lint_typescript_tests status: na - task: lint_license_headers status: passed --- --- .../@stdlib/stats/base/dists/beta/mean/manifest.json | 9 ++++++--- .../@stdlib/stats/base/dists/beta/mean/src/main.c | 3 ++- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/lib/node_modules/@stdlib/stats/base/dists/beta/mean/manifest.json b/lib/node_modules/@stdlib/stats/base/dists/beta/mean/manifest.json index 87f6a84f7198..7991d55ba113 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/beta/mean/manifest.json +++ b/lib/node_modules/@stdlib/stats/base/dists/beta/mean/manifest.json @@ -38,7 +38,8 @@ "libraries": [], "libpath": [], "dependencies": [ - "@stdlib/math/base/napi/binary" + "@stdlib/math/base/napi/binary", + "@stdlib/constants/float64/nan" ] }, { @@ -53,7 +54,8 @@ "libraries": [], "libpath": [], "dependencies": [ - "@stdlib/constants/float64/eps" + "@stdlib/constants/float64/eps", + "@stdlib/constants/float64/nan" ] }, { @@ -68,7 +70,8 @@ "libraries": [], "libpath": [], "dependencies": [ - "@stdlib/constants/float64/eps" + "@stdlib/constants/float64/eps", + "@stdlib/constants/float64/nan" ] } ] diff --git a/lib/node_modules/@stdlib/stats/base/dists/beta/mean/src/main.c b/lib/node_modules/@stdlib/stats/base/dists/beta/mean/src/main.c index 66c9f5a60c1e..0f33ae9facd8 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/beta/mean/src/main.c +++ b/lib/node_modules/@stdlib/stats/base/dists/beta/mean/src/main.c @@ -17,6 +17,7 @@ */ #include "stdlib/stats/base/dists/beta/mean.h" +#include "stdlib/constants/float64/nan.h" /** * Returns the expected value of a beta distribution. @@ -31,7 +32,7 @@ */ double stdlib_base_dists_beta_mean( const double alpha, const double beta ) { if ( alpha <= 0.0 || beta <= 0.0 ) { - return 0.0/0.0; // NaN + return STDLIB_CONSTANT_FLOAT64_NAN; } return alpha / ( alpha + beta ); }