File 2382-edoc-Fix-unused-type-warning.patch of Package erlang

From 8cbc1128015cb4cf60b2843d9ed3d239c0ac1b68 Mon Sep 17 00:00:00 2001
From: Lukas Larsson <lukas@erlang.org>
Date: Mon, 9 Aug 2021 14:22:22 +0200
Subject: [PATCH 2/2] edoc: Fix unused type warning

This warning was added when we started to check for unused
recursive types in 59cc16df4cb0b171e09e38e7924b7d719af1f834.

Closed #5094
---
 lib/edoc/src/edoc_types.erl | 24 +++++++++++++-----------
 1 file changed, 13 insertions(+), 11 deletions(-)

diff --git a/lib/edoc/src/edoc_types.erl b/lib/edoc/src/edoc_types.erl
index b7d045cbe7..05e321bcee 100644
--- a/lib/edoc/src/edoc_types.erl
+++ b/lib/edoc/src/edoc_types.erl
@@ -39,9 +39,9 @@
 -include("edoc_types.hrl").
 -include_lib("xmerl/include/xmerl.hrl").
 
-%-type t_spec() :: #t_spec{name :: t_name(),
-%                          type :: t_type(),
-%                          defs :: [t_def()]}.
+-type t_spec() :: #t_spec{name :: t_name(),
+                          type :: t_fun(),
+                          defs :: [t_def()]}.
 %% Function specification.
 
 -type type() :: t_atom() | t_binary() | t_float() | t_fun() | t_integer()
@@ -49,18 +49,18 @@
 	      | t_record() | t_tuple() | t_type() | t_union() | t_var()
 	      | t_paren().
 
-%-type t_typedef() :: #t_typedef{name :: t_name(),
-%                                args :: [type()],
-%                                type :: type() | undefined,
-%                                defs :: [t_def()]}.
+-type t_typedef() :: #t_typedef{name :: t_name(),
+                               args :: [type()],
+                               type :: type() | undefined,
+                               defs :: [t_def()]}.
 %% Type declaration/definition.
 
-%-type t_throws() :: #t_throws{type :: type(),
-%                              defs :: [t_def()]}.
+-type t_throws() :: #t_throws{type :: type(),
+                             defs :: [t_def()]}.
 %% Exception declaration.
 
-%-type t_def() :: #t_def{name :: t_type() | t_var(),
-%            type :: type()}.
+-type t_def() :: #t_def{name :: t_type() | t_var(),
+           type :: type()}.
 %% Local definition `name = type'.
 
 -type t_name() :: #t_name{app :: [] | atom(),
@@ -139,6 +139,7 @@ is_predefined(F, A) -> erl_internal:is_type(F, A).
 
 is_new_predefined(_, _) -> false.
 
+-spec to_ref(t_typedef() | t_def() | t_type() | t_name()) -> edoc_refs:t().
 to_ref(#t_typedef{name = N}) ->
     to_ref(N);
 to_ref(#t_def{name = N}) ->
@@ -169,6 +170,8 @@ infer_module_app(#t_name{app = [], module = M} = TName) when is_atom(M) ->
 infer_module_app(Other) ->
     Other.
 
+-spec to_xml(type() | t_spec() | t_typedef() | t_def() | t_throws(),
+             term(), Opts :: proplists:proplist()) -> term().
 to_xml(#t_var{name = N}, _Env, _Opts) ->
     {typevar, [{name, atom_to_list(N)}], []};
 to_xml(#t_name{module = [], name = N}, _Env, _Opts) ->
-- 
2.31.1

openSUSE Build Service is sponsored by