File 1246-erts-Fix-index-type-in-atomics-and-counters-modules.patch of Package erlang

From 21b7bdc78271329cfa191f61ccac7ff56eb39ce4 Mon Sep 17 00:00:00 2001
From: williamthome <williamthome@hotmail.com>
Date: Wed, 5 Mar 2025 08:02:25 -0300
Subject: [PATCH] erts: Fix index type in `atomics` and `counters` modules

Both `atomics` and `counters` modules describes `index from 1 to N`.
---
 erts/preloaded/src/atomics.erl  | 16 ++++++++--------
 erts/preloaded/src/counters.erl |  8 ++++----
 2 files changed, 12 insertions(+), 12 deletions(-)

diff --git a/erts/preloaded/src/atomics.erl b/erts/preloaded/src/atomics.erl
index 60075bf918..99a23edf7a 100644
--- a/erts/preloaded/src/atomics.erl
+++ b/erts/preloaded/src/atomics.erl
@@ -70,34 +70,34 @@ encode_opts(_, _) ->
 
 -spec put(Ref, Ix, Value) -> ok when
       Ref  :: atomics_ref(),
-      Ix :: integer(),
+      Ix :: pos_integer(),
       Value :: integer().
 put(_Ref, _Ix, _Value) ->
     erlang:nif_error(undef).
 
 -spec get(Ref, Ix) -> integer() when
       Ref  :: atomics_ref(),
-      Ix :: integer().
+      Ix :: pos_integer().
 get(_Ref, _Ix) ->
     erlang:nif_error(undef).
 
 -spec add(Ref, Ix, Incr) -> ok when
       Ref  :: atomics_ref(),
-      Ix :: integer(),
+      Ix :: pos_integer(),
       Incr :: integer().
 add(_Ref, _Ix, _Incr) ->
     erlang:nif_error(undef).
 
 -spec add_get(Ref, Ix, Incr) -> integer() when
       Ref  :: atomics_ref(),
-      Ix :: integer(),
+      Ix :: pos_integer(),
       Incr :: integer().
 add_get(_Ref, _Ix, _Incr) ->
     erlang:nif_error(undef).
 
 -spec sub(Ref, Ix, Decr) -> ok when
       Ref  :: atomics_ref(),
-      Ix :: integer(),
+      Ix :: pos_integer(),
       Decr :: integer().
 sub(Ref, Ix, Decr) ->
     try
@@ -109,7 +109,7 @@ sub(Ref, Ix, Decr) ->
 
 -spec sub_get(Ref, Ix, Decr) -> integer() when
       Ref  :: atomics_ref(),
-      Ix :: integer(),
+      Ix :: pos_integer(),
       Decr :: integer().
 sub_get(Ref, Ix, Decr) ->
     try
@@ -121,14 +121,14 @@ sub_get(Ref, Ix, Decr) ->
 
 -spec exchange(Ref, Ix, Desired) -> integer() when
       Ref  :: atomics_ref(),
-      Ix :: integer(),
+      Ix :: pos_integer(),
       Desired :: integer().
 exchange(_Ref, _Ix, _Desired) ->
     erlang:nif_error(undef).
 
 -spec compare_exchange(Ref, Ix, Expected, Desired) -> ok | integer() when
       Ref  :: atomics_ref(),
-      Ix :: integer(),
+      Ix :: pos_integer(),
       Expected :: integer(),
       Desired :: integer().
 compare_exchange(_Ref, _Ix, _Expected, _Desired) ->
diff --git a/erts/preloaded/src/counters.erl b/erts/preloaded/src/counters.erl
index 9c249a0b73..ba26ef90e9 100644
--- a/erts/preloaded/src/counters.erl
+++ b/erts/preloaded/src/counters.erl
@@ -65,7 +65,7 @@ new(Size, Options) ->
 
 -spec get(Ref, Ix) -> integer() when
       Ref  :: counters_ref(),
-      Ix :: integer().
+      Ix :: pos_integer().
 get(Ref, Ix) ->
     try
         case Ref of
@@ -84,7 +84,7 @@ get(Ref, Ix) ->
 
 -spec add(Ref, Ix, Incr) -> ok when
       Ref  :: counters_ref(),
-      Ix :: integer(),
+      Ix :: pos_integer(),
       Incr :: integer().
 add(Ref, Ix, Incr) ->
     try
@@ -104,7 +104,7 @@ add(Ref, Ix, Incr) ->
 
 -spec sub(Ref, Ix, Decr) -> ok when
       Ref  :: counters_ref(),
-      Ix :: integer(),
+      Ix :: pos_integer(),
       Decr :: integer().
 sub(Ref, Ix, Decr) ->
     try
@@ -125,7 +125,7 @@ sub(Ref, Ix, Decr) ->
 
 -spec put(Ref, Ix, Value) -> ok when
       Ref  :: counters_ref(),
-      Ix :: integer(),
+      Ix :: pos_integer(),
       Value :: integer().
 put(Ref, Ix, Value) ->
     try
-- 
2.43.0

openSUSE Build Service is sponsored by