R Under development (unstable) (2025-01-06 r87534 ucrt) -- "Unsuffered Consequences"
Copyright (C) 2025 The R Foundation for Statistical Computing
Platform: x86_64-w64-mingw32/x64

R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.

R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.

Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.

> library("matrixStats")
> 
> allocArray_R <- function(nrow, ncol, value = NA) {
+   array(data = value, dim = dim)
+ }
> 
> values <- list(
+   -1L, 0L, +1L, NA_integer_, .Machine$integer.max,
+   -1, 0, +1, NA_real_, NaN, -Inf, +Inf,
+   .Machine$double.xmin, .Machine$double.xmax,
+   .Machine$double.eps, .Machine$double.neg.eps,
+   FALSE, TRUE, NA
+ )
> 
> dim <- c(2L, 4L, 3L)
> for (value in values) {
+   x0 <- allocArray_R(dim, value = value)
+   x <- allocArray(dim, value = value)
+   if (!identical(x, x0)) {
+     str(list(dim = dim, value = value, x = x, x0 = x0))
+     stopifnot(identical(x, x0))
+   }
+ }
> 
> proc.time()
   user  system elapsed 
   0.14    0.04    0.17