File 0248-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
@@ -107,7 +107,7 @@ encode_opts(_, _) ->
-doc(#{since => <<"OTP 21.2">>}).
-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).
@@ -116,7 +116,7 @@ put(_Ref, _Ix, _Value) ->
-doc(#{since => <<"OTP 21.2">>}).
-spec get(Ref, Ix) -> integer() when
Ref :: atomics_ref(),
- Ix :: integer().
+ Ix :: pos_integer().
get(_Ref, _Ix) ->
erlang:nif_error(undef).
@@ -124,7 +124,7 @@ get(_Ref, _Ix) ->
-doc(#{since => <<"OTP 21.2">>}).
-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).
@@ -133,7 +133,7 @@ add(_Ref, _Ix, _Incr) ->
-doc(#{since => <<"OTP 21.2">>}).
-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).
@@ -142,7 +142,7 @@ add_get(_Ref, _Ix, _Incr) ->
-doc(#{since => <<"OTP 21.2">>}).
-spec sub(Ref, Ix, Decr) -> ok when
Ref :: atomics_ref(),
- Ix :: integer(),
+ Ix :: pos_integer(),
Decr :: integer().
sub(Ref, Ix, Decr) ->
try
@@ -156,7 +156,7 @@ sub(Ref, Ix, Decr) ->
-doc(#{since => <<"OTP 21.2">>}).
-spec sub_get(Ref, Ix, Decr) -> integer() when
Ref :: atomics_ref(),
- Ix :: integer(),
+ Ix :: pos_integer(),
Decr :: integer().
sub_get(Ref, Ix, Decr) ->
try
@@ -172,7 +172,7 @@ Atomically replace the value of the atomic with `Desired` and return the previou
-doc(#{since => <<"OTP 21.2">>}).
-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).
@@ -187,7 +187,7 @@ not equal to `Expected`.
-doc(#{since => <<"OTP 21.2">>}).
-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
@@ -121,7 +121,7 @@ new(Size, Options) ->
-doc(#{since => <<"OTP 21.2">>}).
-spec get(Ref, Ix) -> integer() when
Ref :: counters_ref(),
- Ix :: integer().
+ Ix :: pos_integer().
get(Ref, Ix) ->
try
case Ref of
@@ -142,7 +142,7 @@ get(Ref, Ix) ->
-doc(#{since => <<"OTP 21.2">>}).
-spec add(Ref, Ix, Incr) -> ok when
Ref :: counters_ref(),
- Ix :: integer(),
+ Ix :: pos_integer(),
Incr :: integer().
add(Ref, Ix, Incr) ->
try
@@ -164,7 +164,7 @@ add(Ref, Ix, Incr) ->
-doc(#{since => <<"OTP 21.2">>}).
-spec sub(Ref, Ix, Decr) -> ok when
Ref :: counters_ref(),
- Ix :: integer(),
+ Ix :: pos_integer(),
Decr :: integer().
sub(Ref, Ix, Decr) ->
try
@@ -197,7 +197,7 @@ Write `Value` to counter at index `Ix`.
-doc(#{since => <<"OTP 21.2">>}).
-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