File 5792-dialzyzer-Add-failing-test-that-demostrate-that-no_m.patch of Package erlang

From 2694c5f307406a7ec456baef6eeab84d3fb7e241 Mon Sep 17 00:00:00 2001
From: Gonzalo Bella <gonzalobfmp@gmail.com>
Date: Thu, 9 Jun 2022 11:03:57 +0100
Subject: [PATCH 2/3] dialzyzer: Add failing test that demostrate that
 no_missing_return and no_extra_return are missing

---
 .../test/extra_return_SUITE_data/src/extra_return.erl | 11 ++++++++++-
 .../missing_return_SUITE_data/src/missing_return.erl  | 11 ++++++++++-
 2 files changed, 20 insertions(+), 2 deletions(-)

diff --git a/lib/dialyzer/test/extra_return_SUITE_data/src/extra_return.erl b/lib/dialyzer/test/extra_return_SUITE_data/src/extra_return.erl
index 7c51512145..4cebbab02e 100644
--- a/lib/dialyzer/test/extra_return_SUITE_data/src/extra_return.erl
+++ b/lib/dialyzer/test/extra_return_SUITE_data/src/extra_return.erl
@@ -1,6 +1,6 @@
 -module(extra_return).
 
--export([t1/0]).
+-export([t1/0, t2/0]).
 
 
 % Should warn about having `undefined` as return value when it is not returned by the function
@@ -10,3 +10,12 @@ t1() ->
         1 -> true;
         2 -> false
     end.
+
+% Should not warn about extra return
+-dialyzer({no_extra_return, t2/0}).
+-spec t2() -> true | false | 'other'.
+t2() ->
+    case rand:uniform(2) of
+        1 -> true;
+        2 -> false
+    end.
diff --git a/lib/dialyzer/test/missing_return_SUITE_data/src/missing_return.erl b/lib/dialyzer/test/missing_return_SUITE_data/src/missing_return.erl
index 1f0dfe6176..64e7766c83 100644
--- a/lib/dialyzer/test/missing_return_SUITE_data/src/missing_return.erl
+++ b/lib/dialyzer/test/missing_return_SUITE_data/src/missing_return.erl
@@ -1,6 +1,6 @@
 -module(missing_return).
 
--export([t1/0]).
+-export([t1/0, t2/0]).
 
 
 % Should warn about only having true when also false is returned
@@ -10,3 +10,12 @@ t1() ->
         1 -> true;
         2 -> false
     end.
+
+% Should not warn about missing return
+-dialyzer({no_missing_return, t2/0}).
+-spec t2() -> true.
+t2() ->
+    case rand:uniform(2) of
+        1 -> true;
+        2 -> false
+    end.
-- 
2.35.3

openSUSE Build Service is sponsored by