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