Fix types of call macro constraint

This commit is contained in:
Fedor Isakov 2023-10-13 18:10:24 +02:00
parent fc8451e63d
commit d63228678c
1 changed files with 166 additions and 205 deletions

View File

@ -2429,6 +2429,57 @@
</node>
</node>
</node>
<node concept="3cpWs8" id="3Hl5hfc34ZX" role="3cqZAp">
<node concept="3cpWsn" id="3Hl5hfc34ZY" role="3cpWs9">
<property role="TrG5h" value="reqParam" />
<node concept="_YKpA" id="3Hl5hfc34ZW" role="1tU5fm">
<node concept="3Tqbb2" id="3Hl5hfc34ZV" role="_ZDj9">
<ref role="ehGHo" to="wq2x:5itBwM5i6X6" resolve="CallMacroParameterDeclaration" />
</node>
</node>
<node concept="2OqwBi" id="3Hl5hfc34ZZ" role="33vP2m">
<node concept="2OqwBi" id="3Hl5hfc3500" role="2Oq$k0">
<node concept="2OqwBi" id="3Hl5hfc3501" role="2Oq$k0">
<node concept="2OqwBi" id="3Hl5hfc3502" role="2Oq$k0">
<node concept="3A2sRY" id="3Hl5hfc3503" role="2Oq$k0">
<ref role="3A2yKK" node="1Y9T4w6MCDm" resolve="cmc" />
</node>
<node concept="3TrEf2" id="3Hl5hfc3504" role="2OqNvi">
<ref role="3Tt5mk" to="wq2x:5itBwM7LtYS" resolve="template" />
</node>
</node>
<node concept="3Tsc0h" id="3Hl5hfc3505" role="2OqNvi">
<ref role="3TtcxE" to="wq2x:5itBwM5irVx" resolve="parameter" />
</node>
</node>
<node concept="3zZkjj" id="3Hl5hfc3506" role="2OqNvi">
<node concept="1bVj0M" id="3Hl5hfc3507" role="23t8la">
<node concept="3clFbS" id="3Hl5hfc3508" role="1bW5cS">
<node concept="3clFbF" id="3Hl5hfc3509" role="3cqZAp">
<node concept="2OqwBi" id="3Hl5hfc350a" role="3clFbG">
<node concept="2OqwBi" id="3Hl5hfc350b" role="2Oq$k0">
<node concept="37vLTw" id="3Hl5hfc350c" role="2Oq$k0">
<ref role="3cqZAo" node="3Hl5hfc350f" resolve="pdecl" />
</node>
<node concept="3TrEf2" id="3Hl5hfc350d" role="2OqNvi">
<ref role="3Tt5mk" to="wq2x:1ufy3d9wUy7" resolve="init" />
</node>
</node>
<node concept="3w_OXm" id="3Hl5hfc350e" role="2OqNvi" />
</node>
</node>
</node>
<node concept="gl6BB" id="3Hl5hfc350f" role="1bW2Oz">
<property role="TrG5h" value="pdecl" />
<node concept="2jxLKc" id="3Hl5hfc350g" role="1tU5fm" />
</node>
</node>
</node>
</node>
<node concept="ANE8D" id="3Hl5hfc350h" role="2OqNvi" />
</node>
</node>
</node>
<node concept="3clFbJ" id="1Y9T4w6MDgu" role="3cqZAp">
<node concept="3clFbS" id="1Y9T4w6MDgv" role="3clFbx">
<node concept="3clFbF" id="1Y9T4w6MDgw" role="3cqZAp">
@ -2439,231 +2490,49 @@
<node concept="26X5F$" id="1Y9T4w6MDgz" role="2OqNvi">
<property role="26X25f" value="4jcOV4hu0n_/ERROR" />
<node concept="Xl_RD" id="1Y9T4w6MDg$" role="26X25d">
<property role="Xl_RC" value="incorrect number of parameters" />
<property role="Xl_RC" value="required parameters must be specified" />
</node>
</node>
</node>
</node>
</node>
<node concept="3y3z36" id="1Y9T4w6MDg_" role="3clFbw">
<node concept="2OqwBi" id="1Y9T4w6MDgA" role="3uHU7B">
<node concept="2OqwBi" id="1Y9T4w6MDgB" role="2Oq$k0">
<node concept="3A2sRY" id="1Y9T4w6MDgC" role="2Oq$k0">
<ref role="3A2yKK" node="1Y9T4w6MCDm" resolve="cmc" />
</node>
<node concept="3Tsc0h" id="1Y9T4w6MDgD" role="2OqNvi">
<ref role="3TtcxE" to="wq2x:5itBwM7Pl2b" resolve="argument" />
</node>
</node>
<node concept="34oBXx" id="1Y9T4w6MDgE" role="2OqNvi" />
</node>
<node concept="2OqwBi" id="1Y9T4w6MDgF" role="3uHU7w">
<node concept="2OqwBi" id="1Y9T4w6MDgG" role="2Oq$k0">
<node concept="2OqwBi" id="1Y9T4w6MDgH" role="2Oq$k0">
<node concept="3A2sRY" id="1Y9T4w6MDgI" role="2Oq$k0">
<node concept="3fqX7Q" id="3Hl5hfc36Kw" role="3clFbw">
<node concept="2OqwBi" id="3Hl5hfc36Ky" role="3fr31v">
<node concept="2OqwBi" id="3Hl5hfc36Kz" role="2Oq$k0">
<node concept="2OqwBi" id="3Hl5hfc36K$" role="2Oq$k0">
<node concept="3A2sRY" id="3Hl5hfc36K_" role="2Oq$k0">
<ref role="3A2yKK" node="1Y9T4w6MCDm" resolve="cmc" />
</node>
<node concept="3TrEf2" id="1Y9T4w6MDgJ" role="2OqNvi">
<ref role="3Tt5mk" to="wq2x:5itBwM7LtYS" resolve="template" />
<node concept="3Tsc0h" id="3Hl5hfc36KA" role="2OqNvi">
<ref role="3TtcxE" to="wq2x:1OAJnGnFnu" resolve="argumentBinding" />
</node>
</node>
<node concept="3Tsc0h" id="1Y9T4w6MDgK" role="2OqNvi">
<ref role="3TtcxE" to="wq2x:5itBwM5irVx" resolve="parameter" />
</node>
</node>
<node concept="34oBXx" id="1Y9T4w6MDgL" role="2OqNvi" />
</node>
</node>
</node>
<node concept="1nLNNL" id="1Y9T4w6MDl2" role="3cqZAp">
<node concept="1nLNMm" id="1Y9T4w6MDl4" role="1nLNNK">
<node concept="3xSepi" id="1Y9T4w6MDlK" role="3xSepv">
<node concept="3Aq9E8" id="1Y9T4w6MDlL" role="3xSepj">
<node concept="3I6sU6" id="1Y9T4w6MDlM" role="3Ip0Jz">
<node concept="3IrJb3" id="1Y9T4w6MGBa" role="3I6sU7">
<node concept="3clFbS" id="1Y9T4w6MGBb" role="3IrJb0">
<node concept="1Dw8fO" id="1Y9T4w6MGBe" role="3cqZAp">
<node concept="3clFbS" id="1Y9T4w6MGBf" role="2LFqv$">
<node concept="3Aqczg" id="1Y9T4w6MGCR" role="3cqZAp">
<node concept="3Aqt3T" id="1Y9T4w6MGCQ" role="3Aqpz8">
<ref role="3AqCNq" to="kqnc:3Qp4N06bUPu" resolve="defaultConvertsTo" />
<node concept="a7P8L" id="1Y9T4w6MGJK" role="3AunhB">
<ref role="a7OzE" node="1Y9T4w6MGDj" resolve="ArgType" />
<node concept="37vLTw" id="1Y9T4w6MGJW" role="3gCZO6">
<ref role="3cqZAo" node="1Y9T4w6MGBq" resolve="idx" />
</node>
</node>
<node concept="a7P8L" id="1Y9T4w6MGD6" role="3AunhB">
<ref role="a7OzE" node="1Y9T4w6MDlW" resolve="ParamType" />
<node concept="37vLTw" id="1Y9T4w6MGK4" role="3gCZO6">
<ref role="3cqZAo" node="1Y9T4w6MGBq" resolve="idx" />
</node>
</node>
</node>
<node concept="3$u5V9" id="3Hl5hfc36KB" role="2OqNvi">
<node concept="1bVj0M" id="3Hl5hfc36KC" role="23t8la">
<node concept="3clFbS" id="3Hl5hfc36KD" role="1bW5cS">
<node concept="3clFbF" id="3Hl5hfc36KE" role="3cqZAp">
<node concept="2OqwBi" id="3Hl5hfc36KF" role="3clFbG">
<node concept="37vLTw" id="3Hl5hfc36KG" role="2Oq$k0">
<ref role="3cqZAo" node="3Hl5hfc36KI" resolve="bnd" />
</node>
</node>
<node concept="3cpWsn" id="1Y9T4w6MGBq" role="1Duv9x">
<property role="TrG5h" value="idx" />
<node concept="10Oyi0" id="1Y9T4w6MGBr" role="1tU5fm" />
<node concept="3cmrfG" id="1Y9T4w6MGBs" role="33vP2m">
<property role="3cmrfH" value="0" />
</node>
</node>
<node concept="3eOVzh" id="1Y9T4w6MGBt" role="1Dwp0S">
<node concept="2OqwBi" id="1Y9T4w6MGBu" role="3uHU7w">
<node concept="2OqwBi" id="1Y9T4w6MGBv" role="2Oq$k0">
<node concept="3A2sRY" id="1Y9T4w6MGBw" role="2Oq$k0">
<ref role="3A2yKK" node="1Y9T4w6MCDm" resolve="cmc" />
</node>
<node concept="3Tsc0h" id="1Y9T4w6MGBx" role="2OqNvi">
<ref role="3TtcxE" to="wq2x:5itBwM7Pl2b" resolve="argument" />
</node>
</node>
<node concept="34oBXx" id="1Y9T4w6MGBy" role="2OqNvi" />
</node>
<node concept="37vLTw" id="1Y9T4w6MGBz" role="3uHU7B">
<ref role="3cqZAo" node="1Y9T4w6MGBq" resolve="idx" />
</node>
</node>
<node concept="3uNrnE" id="1Y9T4w6MGB$" role="1Dwrff">
<node concept="37vLTw" id="1Y9T4w6MGB_" role="2$L3a6">
<ref role="3cqZAo" node="1Y9T4w6MGBq" resolve="idx" />
<node concept="3TrEf2" id="3Hl5hfc36KH" role="2OqNvi">
<ref role="3Tt5mk" to="wq2x:1ufy3d9uzVX" resolve="declaration" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="3Aq93q" id="1Y9T4w6MDlQ" role="1nLNMb">
<property role="3ArMco" value="true" />
<node concept="3I6sU6" id="1Y9T4w6MDlR" role="3Ip0Jz">
<node concept="3IrJb3" id="1Y9T4w6MESu" role="3I6sU7">
<node concept="3clFbS" id="1Y9T4w6MESv" role="3IrJb0">
<node concept="1Dw8fO" id="1Y9T4w6MF3u" role="3cqZAp">
<node concept="3clFbS" id="1Y9T4w6MF3w" role="2LFqv$">
<node concept="3Aqczg" id="1Y9T4w6MF0G" role="3cqZAp">
<node concept="3Aqt3T" id="1Y9T4w6MF0F" role="3Aqpz8">
<ref role="3AqCNq" to="kqnc:34$A1MfhdDv" resolve="typeOf" />
<node concept="37jhX" id="1Y9T4w6MGnS" role="3AunhB">
<node concept="1y4W85" id="1Y9T4w6MGqf" role="37jj2">
<node concept="37vLTw" id="1Y9T4w6MGqJ" role="1y58nS">
<ref role="3cqZAo" node="1Y9T4w6MF3x" resolve="idx" />
</node>
<node concept="2OqwBi" id="1Y9T4w6MGo8" role="1y566C">
<node concept="2OqwBi" id="1Y9T4w6MGEv" role="2Oq$k0">
<node concept="3A2sRY" id="1Y9T4w6MGnQ" role="2Oq$k0">
<ref role="3A2yKK" node="1Y9T4w6MCDm" resolve="cmc" />
</node>
<node concept="3TrEf2" id="1Y9T4w6MGFt" role="2OqNvi">
<ref role="3Tt5mk" to="wq2x:5itBwM7LtYS" resolve="template" />
</node>
</node>
<node concept="3Tsc0h" id="1Y9T4w6MGp$" role="2OqNvi">
<ref role="3TtcxE" to="wq2x:5itBwM5irVx" resolve="parameter" />
</node>
</node>
</node>
</node>
<node concept="a7P8L" id="1Y9T4w6MGzS" role="3AunhB">
<ref role="a7OzE" node="1Y9T4w6MDlW" resolve="ParamType" />
<node concept="37vLTw" id="1Y9T4w6MG$8" role="3gCZO6">
<ref role="3cqZAo" node="1Y9T4w6MF3x" resolve="idx" />
</node>
</node>
</node>
</node>
<node concept="3Aqczg" id="1Y9T4w6MGGi" role="3cqZAp">
<node concept="3Aqt3T" id="1Y9T4w6MGGj" role="3Aqpz8">
<ref role="3AqCNq" to="kqnc:34$A1MfhdDv" resolve="typeOf" />
<node concept="37jhX" id="1Y9T4w6MGGk" role="3AunhB">
<node concept="1y4W85" id="1Y9T4w6MGGl" role="37jj2">
<node concept="37vLTw" id="1Y9T4w6MGGm" role="1y58nS">
<ref role="3cqZAo" node="1Y9T4w6MF3x" resolve="idx" />
</node>
<node concept="2OqwBi" id="1Y9T4w6MGGo" role="1y566C">
<node concept="3A2sRY" id="1Y9T4w6MGGp" role="2Oq$k0">
<ref role="3A2yKK" node="1Y9T4w6MCDm" resolve="cmc" />
</node>
<node concept="3Tsc0h" id="1Y9T4w6MGIU" role="2OqNvi">
<ref role="3TtcxE" to="wq2x:5itBwM7Pl2b" resolve="argument" />
</node>
</node>
</node>
</node>
<node concept="a7P8L" id="1Y9T4w6MGGs" role="3AunhB">
<ref role="a7OzE" node="1Y9T4w6MGDj" resolve="ArgType" />
<node concept="37vLTw" id="1Y9T4w6MGGt" role="3gCZO6">
<ref role="3cqZAo" node="1Y9T4w6MF3x" resolve="idx" />
</node>
</node>
</node>
</node>
</node>
<node concept="3cpWsn" id="1Y9T4w6MF3x" role="1Duv9x">
<property role="TrG5h" value="idx" />
<node concept="10Oyi0" id="1Y9T4w6MF3E" role="1tU5fm" />
<node concept="3cmrfG" id="1Y9T4w6MF3P" role="33vP2m">
<property role="3cmrfH" value="0" />
</node>
</node>
<node concept="3eOVzh" id="1Y9T4w6MFot" role="1Dwp0S">
<node concept="2OqwBi" id="1Y9T4w6MFqA" role="3uHU7w">
<node concept="2OqwBi" id="1Y9T4w6MFoN" role="2Oq$k0">
<node concept="3A2sRY" id="1Y9T4w6MFo$" role="2Oq$k0">
<ref role="3A2yKK" node="1Y9T4w6MCDm" resolve="cmc" />
</node>
<node concept="3Tsc0h" id="1Y9T4w6MFpX" role="2OqNvi">
<ref role="3TtcxE" to="wq2x:5itBwM7Pl2b" resolve="argument" />
</node>
</node>
<node concept="34oBXx" id="1Y9T4w6MGmX" role="2OqNvi" />
</node>
<node concept="37vLTw" id="1Y9T4w6MF3T" role="3uHU7B">
<ref role="3cqZAo" node="1Y9T4w6MF3x" resolve="idx" />
</node>
</node>
<node concept="3uNrnE" id="1Y9T4w6MGnl" role="1Dwrff">
<node concept="37vLTw" id="1Y9T4w6MGnn" role="2$L3a6">
<ref role="3cqZAo" node="1Y9T4w6MF3x" resolve="idx" />
</node>
</node>
<node concept="gl6BB" id="3Hl5hfc36KI" role="1bW2Oz">
<property role="TrG5h" value="bnd" />
<node concept="2jxLKc" id="3Hl5hfc36KJ" role="1tU5fm" />
</node>
</node>
</node>
</node>
</node>
<node concept="3NuqgR" id="1Y9T4w6MDlV" role="0Rg$4">
<node concept="aZer4" id="1Y9T4w6MDlW" role="3XD1gS">
<property role="TrG5h" value="ParamType" />
<node concept="2OqwBi" id="1Y9T4w6MDUU" role="3gj$pD">
<node concept="2OqwBi" id="1Y9T4w6MDmA" role="2Oq$k0">
<node concept="3A2sRY" id="1Y9T4w6MDme" role="2Oq$k0">
<ref role="3A2yKK" node="1Y9T4w6MCDm" resolve="cmc" />
</node>
<node concept="3Tsc0h" id="1Y9T4w6MDTZ" role="2OqNvi">
<ref role="3TtcxE" to="wq2x:5itBwM7Pl2b" resolve="argument" />
</node>
</node>
<node concept="34oBXx" id="1Y9T4w6MESc" role="2OqNvi" />
<node concept="BjQpj" id="3Hl5hfc36KK" role="2OqNvi">
<node concept="37vLTw" id="3Hl5hfc36KL" role="25WWJ7">
<ref role="3cqZAo" node="3Hl5hfc34ZY" resolve="reqParam" />
</node>
</node>
<node concept="aZer4" id="1Y9T4w6MGDj" role="3XD1gS">
<property role="TrG5h" value="ArgType" />
<node concept="2OqwBi" id="1Y9T4w6MGDk" role="3gj$pD">
<node concept="2OqwBi" id="1Y9T4w6MGDl" role="2Oq$k0">
<node concept="3A2sRY" id="1Y9T4w6MGDm" role="2Oq$k0">
<ref role="3A2yKK" node="1Y9T4w6MCDm" resolve="cmc" />
</node>
<node concept="3Tsc0h" id="1Y9T4w6MGDn" role="2OqNvi">
<ref role="3TtcxE" to="wq2x:5itBwM7Pl2b" resolve="argument" />
</node>
</node>
<node concept="34oBXx" id="1Y9T4w6MGDo" role="2OqNvi" />
</node>
</node>
<node concept="32pEOW" id="1Y9T4w6MDm3" role="3vLBG7" />
</node>
</node>
</node>
@ -2675,6 +2544,98 @@
</node>
</node>
</node>
<node concept="1nLNMY" id="3Hl5hfc379m" role="1nK1Vg">
<property role="TrG5h" value="callMacroConstraintArgumentBinding" />
<node concept="3clFbS" id="3Hl5hfc379n" role="1nLNMH">
<node concept="3clFbJ" id="3Hl5hfc37wx" role="3cqZAp">
<node concept="3clFbS" id="3Hl5hfc37wy" role="3clFbx">
<node concept="1nLNNL" id="3Hl5hfc37wz" role="3cqZAp">
<node concept="1nLNMm" id="3Hl5hfc37w$" role="1nLNNK">
<node concept="3Aq93q" id="3Hl5hfc37w_" role="1nLNMb">
<property role="3ArMco" value="true" />
<node concept="3I6sU6" id="3Hl5hfc37wA" role="3Ip0Jz">
<node concept="3I6s7M" id="3Hl5hfc37wB" role="3I6sU7">
<node concept="3Aqt3T" id="3Hl5hfc37wC" role="3I6s78">
<ref role="3AqCNq" to="kqnc:34$A1MfhdDv" resolve="typeOf" />
<node concept="37jhX" id="3Hl5hfc37wD" role="3AunhB">
<node concept="2OqwBi" id="3Hl5hfc37wE" role="37jj2">
<node concept="3A2sRY" id="3Hl5hfc37wF" role="2Oq$k0">
<ref role="3A2yKK" node="3Hl5hfc379p" resolve="cmcab" />
</node>
<node concept="3TrEf2" id="3Hl5hfc37wG" role="2OqNvi">
<ref role="3Tt5mk" to="wq2x:1ufy3d9uzVX" resolve="declaration" />
</node>
</node>
</node>
<node concept="a7P8L" id="3Hl5hfc37wH" role="3AunhB">
<ref role="a7OzE" node="3Hl5hfc37wO" resolve="DeclType" />
</node>
</node>
</node>
<node concept="3I6s7M" id="3Hl5hfc37wI" role="3I6sU7">
<node concept="3Aqt3T" id="3Hl5hfc37wJ" role="3I6s78">
<ref role="3AqCNq" to="kqnc:34$A1MfhdDv" resolve="typeOf" />
<node concept="37jhX" id="3Hl5hfc37wK" role="3AunhB">
<node concept="3A2sRY" id="3Hl5hfc37wL" role="37jj2">
<ref role="3A2yKK" node="3Hl5hfc379p" resolve="cmcab" />
</node>
</node>
<node concept="a7P8L" id="3Hl5hfc37wM" role="3AunhB">
<ref role="a7OzE" node="3Hl5hfc37wP" resolve="ArgType" />
</node>
</node>
</node>
</node>
</node>
<node concept="3NuqgR" id="3Hl5hfc37wN" role="0Rg$4">
<node concept="aZer4" id="3Hl5hfc37wO" role="3XD1gS">
<property role="TrG5h" value="DeclType" />
</node>
<node concept="aZer4" id="3Hl5hfc37wP" role="3XD1gS">
<property role="TrG5h" value="ArgType" />
</node>
<node concept="32pEOW" id="3Hl5hfc37wQ" role="3vLBG7" />
</node>
<node concept="3xSepi" id="3Hl5hfc37wR" role="3xSepv">
<node concept="3Aq9E8" id="3Hl5hfc37wS" role="3xSepj">
<node concept="3I6sU6" id="3Hl5hfc37wT" role="3Ip0Jz">
<node concept="3I6s7M" id="3Hl5hfc37wU" role="3I6sU7">
<node concept="3Aqt3T" id="3Hl5hfc37wV" role="3I6s78">
<ref role="3AqCNq" to="kqnc:3Qp4N06bUPu" resolve="defaultConvertsTo" />
<node concept="a7P8L" id="3Hl5hfc37wW" role="3AunhB">
<ref role="a7OzE" node="3Hl5hfc37wP" resolve="ArgType" />
</node>
<node concept="a7P8L" id="3Hl5hfc37wX" role="3AunhB">
<ref role="a7OzE" node="3Hl5hfc37wO" resolve="DeclType" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="2OqwBi" id="3Hl5hfc37wY" role="3clFbw">
<node concept="2OqwBi" id="3Hl5hfc37wZ" role="2Oq$k0">
<node concept="3A2sRY" id="3Hl5hfc37x0" role="2Oq$k0">
<ref role="3A2yKK" node="3Hl5hfc379p" resolve="cmcab" />
</node>
<node concept="3TrEf2" id="3Hl5hfc37x1" role="2OqNvi">
<ref role="3Tt5mk" to="wq2x:1ufy3d9uzVX" resolve="declaration" />
</node>
</node>
<node concept="3x8VRR" id="3Hl5hfc37x2" role="2OqNvi" />
</node>
</node>
</node>
<node concept="2t___k" id="3Hl5hfc379o" role="1nLNMg">
<ref role="2t_S0q" to="wq2x:1ufy3d9uzFb" resolve="CallMacroConstraintArgumentBinding" />
<node concept="3A20r5" id="3Hl5hfc379p" role="2t_VXX">
<property role="TrG5h" value="cmcab" />
</node>
</node>
</node>
<node concept="1nLNMY" id="1Y9T4w6MBjs" role="1nK1Vg">
<property role="TrG5h" value="callMacroTemplate" />
<node concept="3clFbS" id="1Y9T4w6MBjt" role="1nLNMH">