Skip to content

Commit a774d22

Browse files
committed
Addressed review comment on merged WebAssembly#229
Fixes the typing rule of CAUGHTadm as suggested in: WebAssembly#229 (comment)
1 parent bba7b29 commit a774d22

File tree

1 file changed

+10
-7
lines changed

1 file changed

+10
-7
lines changed

document/core/appendix/properties.rst

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -676,25 +676,28 @@ To that end, all previous typing judgements :math:`C \vdash \X{prop}` are genera
676676

677677
* The :ref:`values <syntax-val>` :math:`\val^\ast` must be of type :math:`[t_0^\ast]`.
678678

679-
* Let :math:`C'` be the same :ref:`context <context>` as :math:`C`, but with the label :math:`(\LCATCH~[t^\ast])` prepended to the |CLABELS| vector.
679+
* The label :math:`C.\CLABELS[0]` must be defined in the context.
680680

681-
* Under context :math:`C'`,
682-
the instruction sequence :math:`\instr^\ast` must be :ref:`valid <valid-instr-seq>` with type :math:`[] \to [t^\ast]`.
681+
* Let :math:`(\LCATCH^?~[t^\ast])` be the :ref:`label type <syntax-labeltype>` :math:`C.\CLABELS[0]`.
682+
683+
* Let :math:`C'` be the same :ref:`context <context>` as :math:`C`, but with the first label popped from the |CLABELS| vector.
683684

684-
* Let :math:`C''` be the same :ref:`context <context>` as :math:`C`, but with the label :math:`[t^\ast]` prepended to the |CLABELS| vector.
685+
* Let :math:`C''` be the same :ref:`context <context>` as :math:`C'`, but with the label :math:`(\LCATCH~[t^\ast])` prepended to the |CLABELS| vector.
685686

686-
* Then the compound instruction is valid under context :math:`C''` with type :math:`[] \to [t^\ast]`.
687+
* Under context :math:`C''`,
688+
the instruction sequence :math:`\instr^\ast` must be :ref:`valid <valid-instr-seq>` with type :math:`[] \to [t^\ast]`.
687689

690+
* Then the compound instruction is valid with type :math:`[] \to [t^\ast]`.
688691

689692
.. math::
690693
\frac{
691694
S \vdashexternval \EVTAG~\tagaddr : \ETTAG~[t_0^\ast]\to[]
692695
\qquad
693696
(val : t_0)^\ast
694697
\qquad
695-
S; C,\CLABELS\,(\LCATCH~[t^\ast]) \vdashinstrseq \instr^\ast : [] \to [t^\ast]
698+
S; C',\CLABELS\,(\LCATCH~[t^\ast]) \vdashinstrseq \instr^\ast : [] \to [t^\ast]
696699
}{
697-
S; C,\CLABELS\,[t^\ast] \vdashadmininstr \CAUGHTadm\{\tagaddr~\val^\ast\}~\instr^\ast~\END : [] \to [t^\ast]
700+
S; C',\CLABELS\,(\LCATCH^?~[t^\ast]) \vdashadmininstr \CAUGHTadm\{\tagaddr~\val^\ast\}~\instr^\ast~\END : [] \to [t^\ast]
698701
}
699702
700703

0 commit comments

Comments
 (0)