Use free var for type parameter when allowUncheckedConversion=true.
Drop the obsolete "null" type hack in case allowUncheckedConversion=true. Ensure the flag doesn't work recursively.
This commit is contained in:
parent
a8907bedf2
commit
42ae077945
|
|
@ -47,6 +47,9 @@
|
|||
<child id="1068581242865" name="localVariableDeclaration" index="3cpWs9" />
|
||||
</concept>
|
||||
<concept id="1068581242863" name="jetbrains.mps.baseLanguage.structure.LocalVariableDeclaration" flags="nr" index="3cpWsn" />
|
||||
<concept id="1081516740877" name="jetbrains.mps.baseLanguage.structure.NotExpression" flags="nn" index="3fqX7Q">
|
||||
<child id="1081516765348" name="expression" index="3fr31v" />
|
||||
</concept>
|
||||
<concept id="1107535904670" name="jetbrains.mps.baseLanguage.structure.ClassifierType" flags="in" index="3uibUv">
|
||||
<reference id="1107535924139" name="classifier" index="3uigEE" />
|
||||
</concept>
|
||||
|
|
@ -362,35 +365,23 @@
|
|||
</node>
|
||||
</node>
|
||||
<node concept="3clFbJ" id="1oUE7CX4enQ" role="3cqZAp">
|
||||
<node concept="3clFbS" id="1oUE7CX4enS" role="3clFbx">
|
||||
<node concept="3Aqczg" id="1oUE7CX4ept" role="3cqZAp">
|
||||
<node concept="3A8Hvi" id="1oUE7CX4epq" role="3Aqpz8">
|
||||
<node concept="a7P8L" id="1oUE7CX4epu" role="3A8wtg">
|
||||
<ref role="a7OzE" node="1oUE7CX4eol" resolve="Type" />
|
||||
</node>
|
||||
<node concept="ns1u0" id="1oUE7CX4ep$" role="3A8w4Q">
|
||||
<ref role="ns1xF" to="kqnc:JOGAOsVt3c" resolve="_null_" />
|
||||
</node>
|
||||
</node>
|
||||
<node concept="3fqX7Q" id="51ek2rS8pKX" role="3clFbw">
|
||||
<node concept="37vLTw" id="51ek2rS8pKY" role="3fr31v">
|
||||
<ref role="3cqZAo" node="3R6X$QWh1ev" resolve="allowUnchecked" />
|
||||
</node>
|
||||
</node>
|
||||
<node concept="37vLTw" id="1oUE7CX4eo1" role="3clFbw">
|
||||
<ref role="3cqZAo" node="3R6X$QWh1ev" resolve="allowUnchecked" />
|
||||
</node>
|
||||
<node concept="9aQIb" id="1oUE7CX4ep4" role="9aQIa">
|
||||
<node concept="3clFbS" id="1oUE7CX4ep5" role="9aQI4">
|
||||
<node concept="3Aqczg" id="3qUnz9vkXjX" role="3cqZAp">
|
||||
<node concept="3jm4v3" id="3qUnz9vkXjV" role="3Aqpz8">
|
||||
<ref role="3jm46O" to="kqnc:3qUnz9vk$1o" resolve="classifierTypeNonGeneric" />
|
||||
<node concept="2tJFMh" id="3qUnz9vkXkb" role="3jicU7">
|
||||
<node concept="ZC_QK" id="3qUnz9vkXw7" role="2tJFKM">
|
||||
<ref role="2aWVGs" to="wyt6:~Object" resolve="Object" />
|
||||
</node>
|
||||
</node>
|
||||
<node concept="a7P8L" id="1oUE7CX4eoX" role="3jm6SO">
|
||||
<ref role="a7OzE" node="1oUE7CX4eol" resolve="Type" />
|
||||
<node concept="3clFbS" id="1oUE7CX4ep5" role="3clFbx">
|
||||
<node concept="3Aqczg" id="3qUnz9vkXjX" role="3cqZAp">
|
||||
<node concept="3jm4v3" id="3qUnz9vkXjV" role="3Aqpz8">
|
||||
<ref role="3jm46O" to="kqnc:3qUnz9vk$1o" resolve="classifierTypeNonGeneric" />
|
||||
<node concept="2tJFMh" id="3qUnz9vkXkb" role="3jicU7">
|
||||
<node concept="ZC_QK" id="3qUnz9vkXw7" role="2tJFKM">
|
||||
<ref role="2aWVGs" to="wyt6:~Object" resolve="Object" />
|
||||
</node>
|
||||
</node>
|
||||
<node concept="a7P8L" id="1oUE7CX4eoX" role="3jm6SO">
|
||||
<ref role="a7OzE" node="1oUE7CX4eol" resolve="Type" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
|
|
|
|||
|
|
@ -28502,6 +28502,12 @@
|
|||
<ref role="3cqZAo" node="1BcUSjgaxCP" resolve="i" />
|
||||
</node>
|
||||
</node>
|
||||
<node concept="3jhG_Y" id="14oWJ2Nuwrb" role="3jhGvd">
|
||||
<node concept="3jhG_Z" id="14oWJ2Nuw_t" role="3jhGob">
|
||||
<ref role="3jhG_U" node="5itBwMb2a1b" resolve="allowUncheckedConversion" />
|
||||
<node concept="3clFbT" id="14oWJ2NuwJL" role="3jhG_S" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
|
|
@ -28620,134 +28626,116 @@
|
|||
<node concept="1DcWWT" id="4Ca87cv5_8U" role="3cqZAp">
|
||||
<node concept="3clFbS" id="4Ca87cv5_8V" role="2LFqv$">
|
||||
<node concept="3clFbJ" id="4Ca87cv5CL3" role="3cqZAp">
|
||||
<node concept="3clFbS" id="4Ca87cv5CL5" role="3clFbx">
|
||||
<node concept="3Aqczg" id="4Ca87cv5D4G" role="3cqZAp">
|
||||
<node concept="3A8Hvi" id="4Ca87cv5D4H" role="3Aqpz8">
|
||||
<node concept="a7P8L" id="4Ca87cv5D4I" role="3A8wtg">
|
||||
<ref role="a7OzE" node="4btN1w5K1tx" resolve="TyArgs" />
|
||||
<node concept="2OqwBi" id="4Ca87cv5Dqp" role="3gCZO6">
|
||||
<node concept="37vLTw" id="4Ca87cv5D7R" role="2Oq$k0">
|
||||
<ref role="3cqZAo" node="4Ca87cv5_95" resolve="tvd" />
|
||||
</node>
|
||||
<node concept="2bSWHS" id="4Ca87cv5DGX" role="2OqNvi" />
|
||||
</node>
|
||||
<node concept="3fqX7Q" id="51ek2rS8kkV" role="3clFbw">
|
||||
<node concept="37vLTw" id="51ek2rS8kkW" role="3fr31v">
|
||||
<ref role="3cqZAo" node="3R6X$QWh1ev" resolve="allowUnchecked" />
|
||||
</node>
|
||||
</node>
|
||||
<node concept="3clFbS" id="4Ca87cv5CLA" role="3clFbx">
|
||||
<node concept="3SKdUt" id="4Q8MVs$ZLpi" role="3cqZAp">
|
||||
<node concept="1PaTwC" id="4Q8MVs$ZLpj" role="1aUNEU">
|
||||
<node concept="3oM_SD" id="4Q8MVs$ZLpl" role="1PaTwD">
|
||||
<property role="3oM_SC" value="for" />
|
||||
</node>
|
||||
<node concept="ns1u0" id="4Ca87cv5D4K" role="3A8w4Q">
|
||||
<ref role="ns1xF" node="JOGAOsVt3c" resolve="_null_" />
|
||||
<node concept="3oM_SD" id="4Q8MVs_3uKm" role="1PaTwD">
|
||||
<property role="3oM_SC" value="a" />
|
||||
</node>
|
||||
<node concept="3oM_SD" id="4Q8MVs$ZLxs" role="1PaTwD">
|
||||
<property role="3oM_SC" value="type" />
|
||||
</node>
|
||||
<node concept="3oM_SD" id="4Q8MVs$ZLyL" role="1PaTwD">
|
||||
<property role="3oM_SC" value="variable" />
|
||||
</node>
|
||||
<node concept="3oM_SD" id="4Q8MVs$ZLAB" role="1PaTwD">
|
||||
<property role="3oM_SC" value="produce" />
|
||||
</node>
|
||||
<node concept="3oM_SD" id="4Q8MVs$ZLsl" role="1PaTwD">
|
||||
<property role="3oM_SC" value="type" />
|
||||
</node>
|
||||
<node concept="3oM_SD" id="4Q8MVs$ZLG9" role="1PaTwD">
|
||||
<property role="3oM_SC" value="erasure" />
|
||||
</node>
|
||||
<node concept="3oM_SD" id="4Q8MVs$ZLHw" role="1PaTwD">
|
||||
<property role="3oM_SC" value="--" />
|
||||
</node>
|
||||
<node concept="3oM_SD" id="4Q8MVs$ZLK8" role="1PaTwD">
|
||||
<property role="3oM_SC" value="its" />
|
||||
</node>
|
||||
<node concept="3oM_SD" id="4Q8MVs$ZLML" role="1PaTwD">
|
||||
<property role="3oM_SC" value="leftmost" />
|
||||
</node>
|
||||
<node concept="3oM_SD" id="4Q8MVs_3uF9" role="1PaTwD">
|
||||
<property role="3oM_SC" value="bound" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
<node concept="37vLTw" id="4Ca87cv5CLr" role="3clFbw">
|
||||
<ref role="3cqZAo" node="3R6X$QWh1ev" resolve="allowUnchecked" />
|
||||
</node>
|
||||
<node concept="9aQIb" id="4Ca87cv5CL_" role="9aQIa">
|
||||
<node concept="3clFbS" id="4Ca87cv5CLA" role="9aQI4">
|
||||
<node concept="3SKdUt" id="4Q8MVs$ZLpi" role="3cqZAp">
|
||||
<node concept="1PaTwC" id="4Q8MVs$ZLpj" role="1aUNEU">
|
||||
<node concept="3oM_SD" id="4Q8MVs$ZLpl" role="1PaTwD">
|
||||
<property role="3oM_SC" value="for" />
|
||||
</node>
|
||||
<node concept="3oM_SD" id="4Q8MVs_3uKm" role="1PaTwD">
|
||||
<property role="3oM_SC" value="a" />
|
||||
</node>
|
||||
<node concept="3oM_SD" id="4Q8MVs$ZLxs" role="1PaTwD">
|
||||
<property role="3oM_SC" value="type" />
|
||||
</node>
|
||||
<node concept="3oM_SD" id="4Q8MVs$ZLyL" role="1PaTwD">
|
||||
<property role="3oM_SC" value="variable" />
|
||||
</node>
|
||||
<node concept="3oM_SD" id="4Q8MVs$ZLAB" role="1PaTwD">
|
||||
<property role="3oM_SC" value="produce" />
|
||||
</node>
|
||||
<node concept="3oM_SD" id="4Q8MVs$ZLsl" role="1PaTwD">
|
||||
<property role="3oM_SC" value="type" />
|
||||
</node>
|
||||
<node concept="3oM_SD" id="4Q8MVs$ZLG9" role="1PaTwD">
|
||||
<property role="3oM_SC" value="erasure" />
|
||||
</node>
|
||||
<node concept="3oM_SD" id="4Q8MVs$ZLHw" role="1PaTwD">
|
||||
<property role="3oM_SC" value="--" />
|
||||
</node>
|
||||
<node concept="3oM_SD" id="4Q8MVs$ZLK8" role="1PaTwD">
|
||||
<property role="3oM_SC" value="its" />
|
||||
</node>
|
||||
<node concept="3oM_SD" id="4Q8MVs$ZLML" role="1PaTwD">
|
||||
<property role="3oM_SC" value="leftmost" />
|
||||
</node>
|
||||
<node concept="3oM_SD" id="4Q8MVs_3uF9" role="1PaTwD">
|
||||
<property role="3oM_SC" value="bound" />
|
||||
<node concept="3X$Joe" id="4Q8MVs$ZJDT" role="3cqZAp">
|
||||
<node concept="aZer4" id="4Q8MVs$ZJNp" role="3XD1gS">
|
||||
<property role="TrG5h" value="Bound" />
|
||||
</node>
|
||||
<node concept="32pEOW" id="4Q8MVs$ZJDW" role="3vLBG7" />
|
||||
</node>
|
||||
<node concept="3clFbJ" id="4Q8MVs_1CZi" role="3cqZAp">
|
||||
<node concept="3clFbS" id="4Q8MVs_1CZk" role="3clFbx">
|
||||
<node concept="3Aqczg" id="5itBwMaTqd6" role="3cqZAp">
|
||||
<node concept="3jbYBd" id="5itBwMaTqd3" role="3Aqpz8">
|
||||
<ref role="3jbY9l" node="5itBwMau8m1" resolve="lift" />
|
||||
<node concept="2OqwBi" id="5itBwMaTrE5" role="3jbY8P">
|
||||
<node concept="37vLTw" id="5itBwMaTrwV" role="2Oq$k0">
|
||||
<ref role="3cqZAo" node="4Ca87cv5_95" resolve="tvd" />
|
||||
</node>
|
||||
<node concept="3TrEf2" id="5itBwMaTsnn" role="2OqNvi">
|
||||
<ref role="3Tt5mk" to="tpee:hFztrQw" resolve="bound" />
|
||||
</node>
|
||||
</node>
|
||||
<node concept="a7P8L" id="5itBwMaTqD8" role="3jbY8V">
|
||||
<ref role="a7OzE" node="4Q8MVs$ZJNp" resolve="Bound" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
<node concept="3X$Joe" id="4Q8MVs$ZJDT" role="3cqZAp">
|
||||
<node concept="aZer4" id="4Q8MVs$ZJNp" role="3XD1gS">
|
||||
<property role="TrG5h" value="Bound" />
|
||||
<node concept="2OqwBi" id="4Q8MVs_1DHF" role="3clFbw">
|
||||
<node concept="2OqwBi" id="4Q8MVs_1Dcz" role="2Oq$k0">
|
||||
<node concept="37vLTw" id="4Q8MVs_1D1k" role="2Oq$k0">
|
||||
<ref role="3cqZAo" node="4Ca87cv5_95" resolve="tvd" />
|
||||
</node>
|
||||
<node concept="3TrEf2" id="4Q8MVs_1DoP" role="2OqNvi">
|
||||
<ref role="3Tt5mk" to="tpee:hFztrQw" resolve="bound" />
|
||||
</node>
|
||||
</node>
|
||||
<node concept="32pEOW" id="4Q8MVs$ZJDW" role="3vLBG7" />
|
||||
<node concept="3x8VRR" id="4Q8MVs_1E32" role="2OqNvi" />
|
||||
</node>
|
||||
<node concept="3clFbJ" id="4Q8MVs_1CZi" role="3cqZAp">
|
||||
<node concept="3clFbS" id="4Q8MVs_1CZk" role="3clFbx">
|
||||
<node concept="3Aqczg" id="5itBwMaTqd6" role="3cqZAp">
|
||||
<node concept="3jbYBd" id="5itBwMaTqd3" role="3Aqpz8">
|
||||
<ref role="3jbY9l" node="5itBwMau8m1" resolve="lift" />
|
||||
<node concept="2OqwBi" id="5itBwMaTrE5" role="3jbY8P">
|
||||
<node concept="37vLTw" id="5itBwMaTrwV" role="2Oq$k0">
|
||||
<ref role="3cqZAo" node="4Ca87cv5_95" resolve="tvd" />
|
||||
</node>
|
||||
<node concept="3TrEf2" id="5itBwMaTsnn" role="2OqNvi">
|
||||
<ref role="3Tt5mk" to="tpee:hFztrQw" resolve="bound" />
|
||||
<node concept="9aQIb" id="4Q8MVs_1EsU" role="9aQIa">
|
||||
<node concept="3clFbS" id="4Q8MVs_1EsV" role="9aQI4">
|
||||
<node concept="3Aqczg" id="3qUnz9vkXjX" role="3cqZAp">
|
||||
<node concept="3jm4v3" id="3qUnz9vkXjV" role="3Aqpz8">
|
||||
<ref role="3jm46O" node="3qUnz9vk$1o" resolve="classifierTypeNonGeneric" />
|
||||
<node concept="2tJFMh" id="3qUnz9vkXkb" role="3jicU7">
|
||||
<node concept="ZC_QK" id="3qUnz9vkXw7" role="2tJFKM">
|
||||
<ref role="2aWVGs" to="wyt6:~Object" resolve="Object" />
|
||||
</node>
|
||||
</node>
|
||||
<node concept="a7P8L" id="5itBwMaTqD8" role="3jbY8V">
|
||||
<node concept="a7P8L" id="3qUnz9vkXk2" role="3jm6SO">
|
||||
<ref role="a7OzE" node="4Q8MVs$ZJNp" resolve="Bound" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
<node concept="2OqwBi" id="4Q8MVs_1DHF" role="3clFbw">
|
||||
<node concept="2OqwBi" id="4Q8MVs_1Dcz" role="2Oq$k0">
|
||||
<node concept="37vLTw" id="4Q8MVs_1D1k" role="2Oq$k0">
|
||||
</node>
|
||||
</node>
|
||||
<node concept="3Aqczg" id="4Q8MVs$ZKtg" role="3cqZAp">
|
||||
<node concept="3A8Hvi" id="4Q8MVs$ZKta" role="3Aqpz8">
|
||||
<node concept="a7P8L" id="4Q8MVs$ZKuZ" role="3A8wtg">
|
||||
<ref role="a7OzE" node="4btN1w5K1tx" resolve="TyArgs" />
|
||||
<node concept="2OqwBi" id="4Q8MVs$ZKP$" role="3gCZO6">
|
||||
<node concept="37vLTw" id="4Q8MVs$ZKyV" role="2Oq$k0">
|
||||
<ref role="3cqZAo" node="4Ca87cv5_95" resolve="tvd" />
|
||||
</node>
|
||||
<node concept="3TrEf2" id="4Q8MVs_1DoP" role="2OqNvi">
|
||||
<ref role="3Tt5mk" to="tpee:hFztrQw" resolve="bound" />
|
||||
</node>
|
||||
</node>
|
||||
<node concept="3x8VRR" id="4Q8MVs_1E32" role="2OqNvi" />
|
||||
</node>
|
||||
<node concept="9aQIb" id="4Q8MVs_1EsU" role="9aQIa">
|
||||
<node concept="3clFbS" id="4Q8MVs_1EsV" role="9aQI4">
|
||||
<node concept="3Aqczg" id="3qUnz9vkXjX" role="3cqZAp">
|
||||
<node concept="3jm4v3" id="3qUnz9vkXjV" role="3Aqpz8">
|
||||
<ref role="3jm46O" node="3qUnz9vk$1o" resolve="classifierTypeNonGeneric" />
|
||||
<node concept="2tJFMh" id="3qUnz9vkXkb" role="3jicU7">
|
||||
<node concept="ZC_QK" id="3qUnz9vkXw7" role="2tJFKM">
|
||||
<ref role="2aWVGs" to="wyt6:~Object" resolve="Object" />
|
||||
</node>
|
||||
</node>
|
||||
<node concept="a7P8L" id="3qUnz9vkXk2" role="3jm6SO">
|
||||
<ref role="a7OzE" node="4Q8MVs$ZJNp" resolve="Bound" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
<node concept="2bSWHS" id="4Q8MVs$ZL34" role="2OqNvi" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
<node concept="3Aqczg" id="4Q8MVs$ZKtg" role="3cqZAp">
|
||||
<node concept="3A8Hvi" id="4Q8MVs$ZKta" role="3Aqpz8">
|
||||
<node concept="a7P8L" id="4Q8MVs$ZKuZ" role="3A8wtg">
|
||||
<ref role="a7OzE" node="4btN1w5K1tx" resolve="TyArgs" />
|
||||
<node concept="2OqwBi" id="4Q8MVs$ZKP$" role="3gCZO6">
|
||||
<node concept="37vLTw" id="4Q8MVs$ZKyV" role="2Oq$k0">
|
||||
<ref role="3cqZAo" node="4Ca87cv5_95" resolve="tvd" />
|
||||
</node>
|
||||
<node concept="2bSWHS" id="4Q8MVs$ZL34" role="2OqNvi" />
|
||||
</node>
|
||||
</node>
|
||||
<node concept="a7P8L" id="4Q8MVs$ZLc4" role="3A8w4Q">
|
||||
<ref role="a7OzE" node="4Q8MVs$ZJNp" resolve="Bound" />
|
||||
</node>
|
||||
<node concept="a7P8L" id="4Q8MVs$ZLc4" role="3A8w4Q">
|
||||
<ref role="a7OzE" node="4Q8MVs$ZJNp" resolve="Bound" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
|
|
|
|||
Loading…
Reference in New Issue