-
Notifications
You must be signed in to change notification settings - Fork 73
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Bulk array validation #401
Conversation
Current dependencies on/for this PR:
This comment was auto-generated by Graphite. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM modulo comments.
document/core/valid/matching.rst
Outdated
.. index:: storage type | ||
.. _match-storagetype: | ||
|
||
Storage Types |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Subtyping rules for storage types are already added by #382, so I'd suggest to omit them in this PR.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I've now also removed the macros that will be added back in by #382.
document/core/valid/instructions.rst
Outdated
.. _valid-array.fill: | ||
|
||
:math:`\ARRAYFILL~x` | ||
........................... |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Underline length
document/core/valid/instructions.rst
Outdated
|
||
.. math:: | ||
\frac{ | ||
\expand(C.\CTYPES[x]) = \TARRAY~(\MVAR~\X{st_1}) \qquad \expand(C.\CTYPES[y]) = \TARRAY~(\mut~\X{st_2}) \qquad C \vdashstoragetypematch \X{st_2} \matchesstoragetype \X{st_1} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
\expand(C.\CTYPES[x]) = \TARRAY~(\MVAR~\X{st_1}) \qquad \expand(C.\CTYPES[y]) = \TARRAY~(\mut~\X{st_2}) \qquad C \vdashstoragetypematch \X{st_2} \matchesstoragetype \X{st_1} | |
\expand(C.\CTYPES[x]) = \TARRAY~(\MVAR~\X{st_1}) | |
\qquad | |
\expand(C.\CTYPES[y]) = \TARRAY~(\mut~\X{st_2}) | |
\qquad | |
C \vdashstoragetypematch \X{st_2} \matchesstoragetype \X{st_1} |
document/core/valid/matching.rst
Outdated
@@ -147,9 +147,6 @@ A :ref:`value type <syntax-valtype>` :math:`\valtype_1` matches a :ref:`value ty | |||
} | |||
|
|||
|
|||
.. index:: result type, value type | |||
.. _match-resulttype: | |||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Did you want to delete those?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nope, thanks
document/core/valid/instructions.rst
Outdated
|
||
.. _valid-array.init_elem: | ||
|
||
:math:`\ARRAYINITELEM~x~y |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This seems to be missing a closing tick.
We'll wait on #382 to land this, since it no longer builds independently. |
Add validation rules (prose and formalism) for `array.fill`, `array.copy`, `array.init_data`, and `array.init_elem`. As part of the rules for `array.copy`, extend the `matches` relation to storage types.
e639ed8
to
c5861b9
Compare
Add validation rules (prose and formalism) for
array.fill
,array.copy
,array.init_data
, andarray.init_elem
. As part of the rules forarray.copy
,extend the
matches
relation to storage types.