Skip to content

Commit a393b4b

Browse files
authored
[Sync EN] ReturnTypeWillChange: Add warning about future strict return type (#788)
1 parent a572acd commit a393b4b

1 file changed

Lines changed: 17 additions & 3 deletions

File tree

language/predefined/attributes/returntypewillchange.xml

Lines changed: 17 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?xml version="1.0" encoding="utf-8"?>
2-
<!-- EN-Revision: 77325b622f91355b118e8f3bc9ff940e8201f55d Maintainer: PhilDaiguille Status: ready -->
2+
<!-- EN-Revision: 0019a7e201442447fd746c2852d28ba839ed15ae Maintainer: PhilDaiguille Status: ready -->
33
<!-- Reviewed: yes Maintainer: Marqitos-->
44
<reference xml:id="class.returntypewillchange" role="class" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xi="http://www.w3.org/2001/XInclude">
55
<title>El atributo ReturnTypeWillChange</title>
@@ -9,12 +9,26 @@
99

1010
<section xml:id="returntypewillchange.intro">
1111
&reftitle.intro;
12-
<para>
12+
<simpara>
1313
La mayoría de los métodos internos no finales requieren ahora que los métodos sobrescritos declaren
1414
un tipo de retorno compatible, de lo contrario se emite un aviso de deprecación durante la validación de herencia.
15+
Esto introduce una fase de tipo de retorno tentativo: el motor emite un aviso de deprecación
16+
en lugar de un error fatal cuando los tipos de retorno son incompatibles, antes de que se vuelvan
17+
obligatorios en una versión futura.
1518
En caso de que el tipo de retorno no pueda declararse para un método sobrescrito debido a preocupaciones de compatibilidad entre versiones de PHP,
1619
se puede añadir un atributo <code>#[\ReturnTypeWillChange]</code> para silenciar el aviso de deprecación.
17-
</para>
20+
</simpara>
21+
22+
<warning>
23+
<simpara>
24+
El atributo <classname>ReturnTypeWillChange</classname> suprime los avisos de deprecación
25+
<emphasis>únicamente</emphasis> durante la fase de tipo de retorno tentativo.
26+
No tiene efecto al sobrescribir métodos definidos en clases definidas por el usuario.
27+
Una vez que los métodos internos adopten tipos estrictos, las discrepancias en las firmas de los
28+
métodos sobrescritos provocarán un error fatal y este atributo dejará de tener efecto.
29+
</simpara>
30+
</warning>
31+
1832
</section>
1933

2034
<section xml:id="returntypewillchange.synopsis">

0 commit comments

Comments
 (0)