Add more test code for checking some cases of BL method overriding logic. Muted for now. (MPSCR-3)

It's unclear who should handle this: coderules or old typesystem checking rules.
This commit is contained in:
Grigorii Kirgizov 2020-03-12 13:23:23 +03:00
parent af0a118273
commit 73fd59e58e
3 changed files with 793 additions and 350 deletions

View File

@ -2379,7 +2379,7 @@
</node>
</node>
<node concept="1nLNMY" id="12QmIo_7sjP" role="1nK1Vg">
<property role="TrG5h" value="null_literal" />
<property role="TrG5h" value="nullLiteral" />
<node concept="3clFbS" id="12QmIo_7sjQ" role="1nLNMH">
<node concept="1nLNNL" id="12QmIo_7sjR" role="3cqZAp">
<node concept="1nLNMm" id="12QmIo_7sjS" role="1nLNNK">
@ -2438,7 +2438,7 @@
</node>
</node>
<node concept="1nLNMY" id="12QmIo_7sjT" role="1nK1Vg">
<property role="TrG5h" value="this_expression" />
<property role="TrG5h" value="thisExpression" />
<node concept="3clFbS" id="12QmIo_7sjU" role="1nLNMH">
<node concept="3cpWs8" id="12QmIo_7sjV" role="3cqZAp">
<node concept="3cpWsn" id="4nIWweB_wxn" role="3cpWs9">
@ -43055,20 +43055,17 @@
<node concept="3Tqbb2" id="4Ca87cv05Nf" role="1tU5fm">
<ref role="ehGHo" to="tpee:g7pOWCK" resolve="Classifier" />
</node>
<node concept="2OqwBi" id="4Q8MVs$WRl7" role="33vP2m">
<node concept="2OqwBi" id="4Ca87cv06r_" role="2Oq$k0">
<node concept="3A2sRY" id="4Ca87cv0658" role="2Oq$k0">
<ref role="3A2yKK" node="771syFLhdKO" resolve="bmd" />
</node>
<node concept="z$bX8" id="4Q8MVs$WBLy" role="2OqNvi">
<node concept="1xMEDy" id="4Q8MVs$WIy$" role="1xVPHs">
<node concept="chp4Y" id="4Q8MVs$WJyK" role="ri$Ld">
<ref role="cht4Q" to="tpee:g7pOWCK" resolve="Classifier" />
</node>
<node concept="2OqwBi" id="4Ca87cv06r_" role="33vP2m">
<node concept="3A2sRY" id="4Ca87cv0658" role="2Oq$k0">
<ref role="3A2yKK" node="771syFLhdKO" resolve="bmd" />
</node>
<node concept="2Xjw5R" id="72cCUitYUqh" role="2OqNvi">
<node concept="1xMEDy" id="72cCUitYUqj" role="1xVPHs">
<node concept="chp4Y" id="72cCUitYUqk" role="ri$Ld">
<ref role="cht4Q" to="tpee:g7pOWCK" resolve="Classifier" />
</node>
</node>
</node>
<node concept="1uHKPH" id="4Q8MVs$WY$3" role="2OqNvi" />
</node>
</node>
</node>
@ -43088,415 +43085,525 @@
</node>
</node>
</node>
<node concept="3clFbH" id="4Ca87cv0mS7" role="3cqZAp" />
<node concept="3clFbJ" id="4Ca87cuW6eI" role="3cqZAp">
<node concept="3clFbS" id="4Ca87cuW6eK" role="3clFbx">
<node concept="3clFbH" id="4Ca87cv34NK" role="3cqZAp" />
<node concept="3cpWs8" id="4Ca87cv03AG" role="3cqZAp">
<node concept="3cpWsn" id="4Ca87cv03AH" role="3cpWs9">
<property role="TrG5h" value="subtypePaths" />
<node concept="_YKpA" id="4Ca87cv03AI" role="1tU5fm">
<node concept="_YKpA" id="4Ca87cv03AJ" role="_ZDj9">
<node concept="3Tqbb2" id="4Ca87cv03AK" role="_ZDj9">
<ref role="ehGHo" to="tpee:g7uibYu" resolve="ClassifierType" />
</node>
</node>
<node concept="3clFbH" id="72cCUiu52AX" role="3cqZAp" />
<node concept="3cpWs8" id="4Ca87cv03AG" role="3cqZAp">
<node concept="3cpWsn" id="4Ca87cv03AH" role="3cpWs9">
<property role="TrG5h" value="subtypePaths" />
<node concept="_YKpA" id="4Ca87cv03AI" role="1tU5fm">
<node concept="_YKpA" id="4Ca87cv03AJ" role="_ZDj9">
<node concept="3Tqbb2" id="4Ca87cv03AK" role="_ZDj9">
<ref role="ehGHo" to="tpee:g7uibYu" resolve="ClassifierType" />
</node>
<node concept="2YIFZM" id="4Ca87cv03AL" role="33vP2m">
<ref role="1Pybhc" to="hano:2tjs8VC0K0m" resolve="Memoizer" />
<ref role="37wK5l" to="hano:2tjs8VC2Blb" resolve="getOrPut" />
<node concept="37vLTw" id="4Ca87cv07Gf" role="37wK5m">
<ref role="3cqZAo" node="4Ca87cv05Nk" resolve="cls" />
</node>
<node concept="1bVj0M" id="4Ca87cv03AN" role="37wK5m">
<node concept="3clFbS" id="4Ca87cv03AO" role="1bW5cS">
<node concept="3clFbF" id="4Ca87cv03AP" role="3cqZAp">
<node concept="2YIFZM" id="4Ca87cv03AQ" role="3clFbG">
<ref role="1Pybhc" node="tIwzd2cJHD" resolve="SubclassingUtil" />
<ref role="37wK5l" node="3jyhf9JmEv6" resolve="allInstSubtypePathsTo" />
<node concept="37vLTw" id="4Ca87cv081Z" role="37wK5m">
<ref role="3cqZAo" node="4Ca87cv05Nk" resolve="cls" />
</node>
</node>
</node>
</node>
<node concept="2YIFZM" id="4Ca87cv03AL" role="33vP2m">
<ref role="1Pybhc" to="hano:2tjs8VC0K0m" resolve="Memoizer" />
<ref role="37wK5l" to="hano:2tjs8VC2Blb" resolve="getOrPut" />
<node concept="37vLTw" id="4Ca87cv07Gf" role="37wK5m">
<ref role="3cqZAo" node="4Ca87cv05Nk" resolve="cls" />
</node>
<node concept="1bVj0M" id="4Ca87cv03AN" role="37wK5m">
<node concept="3clFbS" id="4Ca87cv03AO" role="1bW5cS">
<node concept="3clFbF" id="4Ca87cv03AP" role="3cqZAp">
<node concept="2YIFZM" id="4Ca87cv03AQ" role="3clFbG">
<ref role="37wK5l" node="3jyhf9JmEv6" resolve="allInstSubtypePathsTo" />
<ref role="1Pybhc" node="tIwzd2cJHD" resolve="SubclassingUtil" />
<node concept="37vLTw" id="4Ca87cv081Z" role="37wK5m">
<ref role="3cqZAo" node="4Ca87cv05Nk" resolve="cls" />
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="3clFbH" id="4Ca87cv0mEw" role="3cqZAp" />
<node concept="3cpWs8" id="4Ca87cv08y_" role="3cqZAp">
<node concept="3cpWsn" id="4Ca87cv08yA" role="3cpWs9">
<property role="TrG5h" value="baseCls" />
<node concept="3Tqbb2" id="4Ca87cv08yB" role="1tU5fm">
<ref role="ehGHo" to="tpee:g7pOWCK" resolve="Classifier" />
</node>
</node>
<node concept="3clFbH" id="4Ca87cv0mS7" role="3cqZAp" />
<node concept="3clFbJ" id="4Ca87cuW6eI" role="3cqZAp">
<node concept="3clFbC" id="72cCUitZo1i" role="3clFbw">
<node concept="37vLTw" id="4Ca87cuW6oP" role="3uHU7B">
<ref role="3cqZAo" node="4Ca87cuW4ke" resolve="overriden" />
</node>
<node concept="10Nm6u" id="4Ca87cuW6Jj" role="3uHU7w" />
</node>
<node concept="3clFbS" id="72cCUitZnnJ" role="3clFbx">
<node concept="3SKdUt" id="72cCUitZqNI" role="3cqZAp">
<node concept="1PaTwC" id="72cCUitZqNJ" role="3ndbpf">
<node concept="3oM_SD" id="72cCUitZqO3" role="1PaTwD">
<property role="3oM_SC" value="There's" />
</node>
<node concept="2OqwBi" id="4Q8MVs$WYYJ" role="33vP2m">
<node concept="2OqwBi" id="4Q8MVs$WYYK" role="2Oq$k0">
<node concept="3oM_SD" id="72cCUitZqO6" role="1PaTwD">
<property role="3oM_SC" value="no" />
</node>
<node concept="3oM_SD" id="72cCUitZqO9" role="1PaTwD">
<property role="3oM_SC" value="overriding" />
</node>
<node concept="3oM_SD" id="72cCUitZqOf" role="1PaTwD">
<property role="3oM_SC" value="method," />
</node>
<node concept="3oM_SD" id="72cCUitZqOm" role="1PaTwD">
<property role="3oM_SC" value="but" />
</node>
<node concept="3oM_SD" id="72cCUitZqOu" role="1PaTwD">
<property role="3oM_SC" value="there" />
</node>
<node concept="3oM_SD" id="72cCUitZqOA" role="1PaTwD">
<property role="3oM_SC" value="maybe" />
</node>
<node concept="3oM_SD" id="72cCUitZqOJ" role="1PaTwD">
<property role="3oM_SC" value="a" />
</node>
<node concept="3oM_SD" id="72cCUitZqOS" role="1PaTwD">
<property role="3oM_SC" value="signature" />
</node>
<node concept="3oM_SD" id="72cCUitZqP2" role="1PaTwD">
<property role="3oM_SC" value="clash" />
</node>
</node>
</node>
<node concept="3SKdUt" id="72cCUitZqN7" role="3cqZAp">
<node concept="1PaTwC" id="72cCUitZqN8" role="3ndbpf">
<node concept="3oM_SD" id="72cCUitZqNa" role="1PaTwD">
<property role="3oM_SC" value="todo:" />
</node>
<node concept="3oM_SD" id="72cCUitZqNg" role="1PaTwD">
<property role="3oM_SC" value="check" />
</node>
<node concept="3oM_SD" id="72cCUitZqNk" role="1PaTwD">
<property role="3oM_SC" value="for" />
</node>
<node concept="3oM_SD" id="72cCUitZqNo" role="1PaTwD">
<property role="3oM_SC" value="signature" />
</node>
<node concept="3oM_SD" id="72cCUiu6aZi" role="1PaTwD">
<property role="3oM_SC" value="clash" />
</node>
</node>
</node>
<node concept="3SKdUt" id="72cCUiu6g$u" role="3cqZAp">
<node concept="1PaTwC" id="72cCUiu6g$v" role="3ndbpf">
<node concept="3oM_SD" id="72cCUiu6jgK" role="1PaTwD">
<property role="3oM_SC" value="see" />
</node>
<node concept="3oM_SD" id="72cCUiu6jgN" role="1PaTwD">
<property role="3oM_SC" value="check_ClassifierOverridingMethods" />
</node>
<node concept="3oM_SD" id="72cCUiu6jgS" role="1PaTwD">
<property role="3oM_SC" value="checking" />
</node>
<node concept="3oM_SD" id="72cCUiu6jgX" role="1PaTwD">
<property role="3oM_SC" value="rule" />
</node>
<node concept="3oM_SD" id="72cCUiu6jh2" role="1PaTwD">
<property role="3oM_SC" value="for" />
</node>
<node concept="3oM_SD" id="72cCUiu6jh8" role="1PaTwD">
<property role="3oM_SC" value="reference" />
</node>
</node>
</node>
<node concept="3clFbH" id="72cCUiu6g$t" role="3cqZAp" />
</node>
<node concept="9aQIb" id="72cCUitZo1l" role="9aQIa">
<node concept="3clFbS" id="4Ca87cuW6eK" role="9aQI4">
<node concept="3clFbH" id="4Ca87cv0mEw" role="3cqZAp" />
<node concept="3cpWs8" id="4Ca87cv08y_" role="3cqZAp">
<node concept="3cpWsn" id="4Ca87cv08yA" role="3cpWs9">
<property role="TrG5h" value="baseCls" />
<node concept="3Tqbb2" id="4Ca87cv08yB" role="1tU5fm">
<ref role="ehGHo" to="tpee:g7pOWCK" resolve="Classifier" />
</node>
<node concept="2OqwBi" id="4Q8MVs$WYYK" role="33vP2m">
<node concept="37vLTw" id="4Q8MVs$X1xH" role="2Oq$k0">
<ref role="3cqZAo" node="4Ca87cuW4ke" resolve="overriden" />
</node>
<node concept="z$bX8" id="4Q8MVs$WYYM" role="2OqNvi">
<node concept="1xMEDy" id="4Q8MVs$WYYN" role="1xVPHs">
<node concept="chp4Y" id="4Q8MVs$WYYO" role="ri$Ld">
<node concept="2Xjw5R" id="72cCUitZdyj" role="2OqNvi">
<node concept="1xMEDy" id="72cCUitZdyl" role="1xVPHs">
<node concept="chp4Y" id="72cCUitZdym" role="ri$Ld">
<ref role="cht4Q" to="tpee:g7pOWCK" resolve="Classifier" />
</node>
</node>
</node>
</node>
<node concept="1uHKPH" id="4Q8MVs$WYYP" role="2OqNvi" />
</node>
</node>
</node>
<node concept="3cpWs8" id="4Ca87cv09gi" role="3cqZAp">
<node concept="3cpWsn" id="4Ca87cv09gl" role="3cpWs9">
<property role="TrG5h" value="baseClsTy" />
<node concept="3Tqbb2" id="4Ca87cv09gg" role="1tU5fm">
<ref role="ehGHo" to="tpee:g7uibYu" resolve="ClassifierType" />
</node>
<node concept="2OqwBi" id="4Ca87cv0hAy" role="33vP2m">
<node concept="2OqwBi" id="4Ca87cv0aGl" role="2Oq$k0">
<node concept="37vLTw" id="4Ca87cv09Ca" role="2Oq$k0">
<ref role="3cqZAo" node="4Ca87cv03AH" resolve="subtypePaths" />
<node concept="3cpWs8" id="4Ca87cv09gi" role="3cqZAp">
<node concept="3cpWsn" id="4Ca87cv09gl" role="3cpWs9">
<property role="TrG5h" value="baseClsTy" />
<node concept="3Tqbb2" id="4Ca87cv09gg" role="1tU5fm">
<ref role="ehGHo" to="tpee:g7uibYu" resolve="ClassifierType" />
</node>
<node concept="2OqwBi" id="4Ca87cv0hAy" role="33vP2m">
<node concept="2OqwBi" id="4Ca87cv0aGl" role="2Oq$k0">
<node concept="37vLTw" id="4Ca87cv09Ca" role="2Oq$k0">
<ref role="3cqZAo" node="4Ca87cv03AH" resolve="subtypePaths" />
</node>
<node concept="3goQfb" id="4Ca87cv0hef" role="2OqNvi">
<node concept="1bVj0M" id="4Ca87cv0heh" role="23t8la">
<node concept="3clFbS" id="4Ca87cv0hei" role="1bW5cS">
<node concept="3clFbF" id="4Ca87cv0hla" role="3cqZAp">
<node concept="37vLTw" id="4Ca87cv0hl9" role="3clFbG">
<ref role="3cqZAo" node="4Ca87cv0hej" resolve="it" />
</node>
</node>
</node>
<node concept="Rh6nW" id="4Ca87cv0hej" role="1bW2Oz">
<property role="TrG5h" value="it" />
<node concept="2jxLKc" id="4Ca87cv0hek" role="1tU5fm" />
</node>
</node>
</node>
</node>
<node concept="3goQfb" id="4Ca87cv0hef" role="2OqNvi">
<node concept="1bVj0M" id="4Ca87cv0heh" role="23t8la">
<node concept="3clFbS" id="4Ca87cv0hei" role="1bW5cS">
<node concept="3clFbF" id="4Ca87cv0hla" role="3cqZAp">
<node concept="37vLTw" id="4Ca87cv0hl9" role="3clFbG">
<ref role="3cqZAo" node="4Ca87cv0hej" resolve="it" />
<node concept="1z4cxt" id="4Ca87cv0hYz" role="2OqNvi">
<node concept="1bVj0M" id="4Ca87cv0hY_" role="23t8la">
<node concept="3clFbS" id="4Ca87cv0hYA" role="1bW5cS">
<node concept="3clFbF" id="4Ca87cv0i1K" role="3cqZAp">
<node concept="3clFbC" id="4Ca87cv0jmI" role="3clFbG">
<node concept="37vLTw" id="4Ca87cv0jJV" role="3uHU7w">
<ref role="3cqZAo" node="4Ca87cv08yA" resolve="baseCls" />
</node>
<node concept="2OqwBi" id="4Ca87cv0ikN" role="3uHU7B">
<node concept="37vLTw" id="4Ca87cv0i1J" role="2Oq$k0">
<ref role="3cqZAo" node="4Ca87cv0hYB" resolve="it" />
</node>
<node concept="3TrEf2" id="4Ca87cv0iMf" role="2OqNvi">
<ref role="3Tt5mk" to="tpee:g7uigIF" resolve="classifier" />
</node>
</node>
</node>
</node>
</node>
<node concept="Rh6nW" id="4Ca87cv0hej" role="1bW2Oz">
<node concept="Rh6nW" id="4Ca87cv0hYB" role="1bW2Oz">
<property role="TrG5h" value="it" />
<node concept="2jxLKc" id="4Ca87cv0hek" role="1tU5fm" />
<node concept="2jxLKc" id="4Ca87cv0hYC" role="1tU5fm" />
</node>
</node>
</node>
</node>
<node concept="1z4cxt" id="4Ca87cv0hYz" role="2OqNvi">
<node concept="1bVj0M" id="4Ca87cv0hY_" role="23t8la">
<node concept="3clFbS" id="4Ca87cv0hYA" role="1bW5cS">
<node concept="3clFbF" id="4Ca87cv0i1K" role="3cqZAp">
<node concept="3clFbC" id="4Ca87cv0jmI" role="3clFbG">
<node concept="37vLTw" id="4Ca87cv0jJV" role="3uHU7w">
<ref role="3cqZAo" node="4Ca87cv08yA" resolve="baseCls" />
</node>
<node concept="2OqwBi" id="4Ca87cv0ikN" role="3uHU7B">
<node concept="37vLTw" id="4Ca87cv0i1J" role="2Oq$k0">
<ref role="3cqZAo" node="4Ca87cv0hYB" resolve="it" />
</node>
<node concept="3TrEf2" id="4Ca87cv0iMf" role="2OqNvi">
<ref role="3Tt5mk" to="tpee:g7uigIF" resolve="classifier" />
</node>
</node>
</node>
</node>
</node>
<node concept="Rh6nW" id="4Ca87cv0hYB" role="1bW2Oz">
<property role="TrG5h" value="it" />
<node concept="2jxLKc" id="4Ca87cv0hYC" role="1tU5fm" />
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="3clFbH" id="4Ca87cv03sd" role="3cqZAp" />
<node concept="3cpWs8" id="4Ca87cv0oCc" role="3cqZAp">
<node concept="3cpWsn" id="4Ca87cv0oCd" role="3cpWs9">
<property role="TrG5h" value="subs" />
<node concept="3uibUv" id="4Ca87cv0oCe" role="1tU5fm">
<ref role="3uigEE" node="6EY0p2w8VOq" resolve="TypeVarSubstitution" />
</node>
<node concept="2ShNRf" id="4Ca87cv0p34" role="33vP2m">
<node concept="1pGfFk" id="4Ca87cv0qiP" role="2ShVmc">
<ref role="37wK5l" node="6EY0p2wsoT6" resolve="TypeVarSubstitution" />
<node concept="2OqwBi" id="4Ca87cv0rLp" role="37wK5m">
<node concept="37vLTw" id="4Ca87cv0rwB" role="2Oq$k0">
<ref role="3cqZAo" node="4Ca87cv08yA" resolve="baseCls" />
</node>
<node concept="3Tsc0h" id="4Ca87cv0sdn" role="2OqNvi">
<ref role="3TtcxE" to="tpee:g96eVAe" resolve="typeVariableDeclaration" />
</node>
<node concept="3cpWs8" id="72cCUiu9c$h" role="3cqZAp">
<node concept="3cpWsn" id="72cCUiu9c$k" role="3cpWs9">
<property role="TrG5h" value="baseClsId" />
<node concept="17QB3L" id="72cCUiu9c$f" role="1tU5fm" />
<node concept="2OqwBi" id="72cCUiu9cT_" role="33vP2m">
<node concept="37vLTw" id="72cCUiu9cCS" role="2Oq$k0">
<ref role="3cqZAo" node="4Ca87cv08yA" resolve="baseCls" />
</node>
<node concept="3TrcHB" id="72cCUiu9dl1" role="2OqNvi">
<ref role="3TsBF5" to="tpck:h0TrG11" resolve="name" />
</node>
</node>
</node>
</node>
</node>
<node concept="3clFbH" id="4Ca87cv0kxw" role="3cqZAp" />
<node concept="1nLNNL" id="771syFLhePg" role="3cqZAp">
<node concept="1nLNMm" id="771syFLhePi" role="1nLNNK">
<node concept="3Aq93q" id="4Ca87cuW64t" role="1nLNMb">
<property role="3ArMco" value="true" />
<node concept="3I6sU6" id="4Ca87cuW64u" role="3Ip0Jz">
<node concept="3I6s7M" id="4Ca87cuW64D" role="3I6sU7">
<node concept="3Aqt3T" id="4Ca87cuW64C" role="3I6s78">
<ref role="3AqCNq" node="4btN1w5A2ZH" resolve="genDecl" />
<node concept="37jhX" id="4Ca87cuW6K4" role="3AunhB">
<node concept="3A2sRY" id="4Ca87cuW6K2" role="37jj2">
<ref role="3A2yKK" node="771syFLhdKO" resolve="bmd" />
</node>
</node>
<node concept="ns1u0" id="4Ca87cuW6Ph" role="3AunhB">
<ref role="ns1xF" node="4btN1w5A0eS" resolve="genDecl" />
<node concept="nsMwS" id="4Ca87cuW6Ps" role="ns1xD">
<ref role="nsMwP" node="5Oz70LKeVis" resolve="typeScheme" />
<node concept="1nq8_$" id="4Ca87cuWbYo" role="nsMwV">
<node concept="a7P8L" id="4Ca87cuWbYn" role="1nq8_t">
<ref role="a7OzE" node="4Ca87cuW6Kk" resolve="TyScheme" />
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="3clFbH" id="4Ca87cv03sd" role="3cqZAp" />
<node concept="3cpWs8" id="4Ca87cv0oCc" role="3cqZAp">
<node concept="3cpWsn" id="4Ca87cv0oCd" role="3cpWs9">
<property role="TrG5h" value="subs" />
<node concept="3uibUv" id="4Ca87cv0oCe" role="1tU5fm">
<ref role="3uigEE" node="6EY0p2w8VOq" resolve="TypeVarSubstitution" />
</node>
</node>
<node concept="3Aq93q" id="4Ca87cuW6Jz" role="1nLNMb">
<property role="3ArMco" value="true" />
<node concept="3I6sU6" id="4Ca87cuW6J$" role="3Ip0Jz">
<node concept="3I6s7M" id="4Ca87cuW61D" role="3I6sU7">
<node concept="3Aqt3T" id="4Ca87cuW61C" role="3I6s78">
<ref role="3AqCNq" node="4btN1w5A2ZH" resolve="genDecl" />
<node concept="37jhX" id="4Ca87cuW624" role="3AunhB">
<node concept="37vLTw" id="4Ca87cuW622" role="37jj2">
<ref role="3cqZAo" node="4Ca87cuW4ke" resolve="overriden" />
</node>
</node>
<node concept="ns1u0" id="4Ca87cuWbY_" role="3AunhB">
<ref role="ns1xF" node="4btN1w5A0eS" resolve="genDecl" />
<node concept="nsMwS" id="4Ca87cuWbYK" role="ns1xD">
<ref role="nsMwP" node="5Oz70LKeVis" resolve="typeScheme" />
<node concept="1nq8_$" id="4Ca87cuWbYP" role="nsMwV">
<node concept="a7P8L" id="4Ca87cuWbYO" role="1nq8_t">
<ref role="a7OzE" node="4Ca87cuW5S6" resolve="OverridenTyScheme" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="3NuqgR" id="4Ca87cuW5S5" role="0Rg$4">
<node concept="aZer4" id="4Ca87cuW6Kk" role="3XD1gS">
<property role="TrG5h" value="TyScheme" />
</node>
<node concept="aZer4" id="4Ca87cuW5S6" role="3XD1gS">
<property role="TrG5h" value="OverridenTyScheme" />
</node>
<node concept="aZer4" id="4Ca87cuW6Nh" role="3XD1gS">
<property role="TrG5h" value="RetTy" />
</node>
<node concept="aZer4" id="4Ca87cuW6O2" role="3XD1gS">
<property role="TrG5h" value="BaseRetTy" />
</node>
<node concept="32pEOW" id="4Ca87cuW5Si" role="3vLBG7" />
</node>
<node concept="3NuqgR" id="4Ca87cv0AEX" role="0Rg$4">
<node concept="aZer4" id="4Ca87cv0AEY" role="3XD1gS">
<property role="TrG5h" value="BaseClsTy" />
</node>
<node concept="aZer4" id="4Ca87cv0AFU" role="3XD1gS">
<property role="TrG5h" value="ScopeTyArgs" />
<node concept="2OqwBi" id="4Ca87cv0DFq" role="3gj$pD">
<node concept="2OqwBi" id="4Ca87cv15ja" role="2Oq$k0">
<node concept="37vLTw" id="4Ca87cv15ay" role="2Oq$k0">
<node concept="2ShNRf" id="4Ca87cv0p34" role="33vP2m">
<node concept="1pGfFk" id="4Ca87cv0qiP" role="2ShVmc">
<ref role="37wK5l" node="6EY0p2wsoT6" resolve="TypeVarSubstitution" />
<node concept="2OqwBi" id="4Ca87cv0rLp" role="37wK5m">
<node concept="37vLTw" id="4Ca87cv0rwB" role="2Oq$k0">
<ref role="3cqZAo" node="4Ca87cv08yA" resolve="baseCls" />
</node>
<node concept="3Tsc0h" id="4Ca87cv15mD" role="2OqNvi">
<node concept="3Tsc0h" id="4Ca87cv0sdn" role="2OqNvi">
<ref role="3TtcxE" to="tpee:g96eVAe" resolve="typeVariableDeclaration" />
</node>
</node>
<node concept="34oBXx" id="4Ca87cv0FLT" role="2OqNvi" />
</node>
</node>
<node concept="32pEOW" id="4Ca87cv0AFi" role="3vLBG7" />
</node>
<node concept="3xSepi" id="4Ca87cuW61y" role="3xSepv">
<node concept="3Aq9E8" id="4Ca87cuW61z" role="3xSepj">
<node concept="3I6sU6" id="4Ca87cuW61$" role="3Ip0Jz">
<node concept="3IrJb3" id="4Ca87cv0_xP" role="3I6sU7">
<node concept="3clFbS" id="4Ca87cv0_xQ" role="3IrJb0">
<node concept="1DcWWT" id="4Ca87cv0FN2" role="3cqZAp">
<node concept="3clFbS" id="4Ca87cv0FN4" role="2LFqv$">
<node concept="3clFbF" id="4Ca87cv0LKz" role="3cqZAp">
<node concept="2OqwBi" id="4Ca87cv0LQ6" role="3clFbG">
<node concept="37vLTw" id="4Ca87cv0LKx" role="2Oq$k0">
<ref role="3cqZAo" node="4Ca87cv0oCd" resolve="subs" />
</node>
<node concept="liA8E" id="4Ca87cv0LWu" role="2OqNvi">
<ref role="37wK5l" node="6EY0p2w8YaM" resolve="substitute" />
<node concept="37vLTw" id="4Ca87cv0Mp0" role="37wK5m">
<ref role="3cqZAo" node="4Ca87cv0FN5" resolve="tvd" />
</node>
<node concept="3clFbH" id="4Ca87cv0kxw" role="3cqZAp" />
<node concept="1nLNNL" id="771syFLhePg" role="3cqZAp">
<node concept="1nLNMm" id="771syFLhePi" role="1nLNNK">
<node concept="3Aq93q" id="4Ca87cuW64t" role="1nLNMb">
<property role="3ArMco" value="true" />
<node concept="3I6sU6" id="4Ca87cuW64u" role="3Ip0Jz">
<node concept="3I6s7M" id="4Ca87cuW64D" role="3I6sU7">
<node concept="3Aqt3T" id="4Ca87cuW64C" role="3I6s78">
<ref role="3AqCNq" node="4btN1w5A2ZH" resolve="genDecl" />
<node concept="37jhX" id="4Ca87cuW6K4" role="3AunhB">
<node concept="3A2sRY" id="4Ca87cuW6K2" role="37jj2">
<ref role="3A2yKK" node="771syFLhdKO" resolve="bmd" />
</node>
</node>
<node concept="ns1u0" id="4Ca87cuW6Ph" role="3AunhB">
<ref role="ns1xF" node="4btN1w5A0eS" resolve="genDecl" />
<node concept="nsMwS" id="4Ca87cuW6Ps" role="ns1xD">
<ref role="nsMwP" node="5Oz70LKeVis" resolve="typeScheme" />
<node concept="1nq8_$" id="4Ca87cuWbYo" role="nsMwV">
<node concept="a7P8L" id="4Ca87cuWbYn" role="1nq8_t">
<ref role="a7OzE" node="4Ca87cuW6Kk" resolve="TyScheme" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="3Aq93q" id="4Ca87cuW6Jz" role="1nLNMb">
<property role="3ArMco" value="true" />
<node concept="3I6sU6" id="4Ca87cuW6J$" role="3Ip0Jz">
<node concept="3I6s7M" id="4Ca87cuW61D" role="3I6sU7">
<node concept="3Aqt3T" id="4Ca87cuW61C" role="3I6s78">
<ref role="3AqCNq" node="4btN1w5A2ZH" resolve="genDecl" />
<node concept="37jhX" id="4Ca87cuW624" role="3AunhB">
<node concept="37vLTw" id="4Ca87cuW622" role="37jj2">
<ref role="3cqZAo" node="4Ca87cuW4ke" resolve="overriden" />
</node>
</node>
<node concept="ns1u0" id="4Ca87cuWbY_" role="3AunhB">
<ref role="ns1xF" node="4btN1w5A0eS" resolve="genDecl" />
<node concept="nsMwS" id="4Ca87cuWbYK" role="ns1xD">
<ref role="nsMwP" node="5Oz70LKeVis" resolve="typeScheme" />
<node concept="1nq8_$" id="4Ca87cuWbYP" role="nsMwV">
<node concept="a7P8L" id="4Ca87cuWbYO" role="1nq8_t">
<ref role="a7OzE" node="4Ca87cuW5S6" resolve="OverridenTyScheme" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="3Aq93q" id="72cCUitY$Wj" role="1nLNMb">
<property role="3ArMco" value="true" />
<node concept="3I6sU6" id="72cCUitY$Wk" role="3Ip0Jz">
<node concept="3I6s7M" id="72cCUitY$XM" role="3I6sU7">
<node concept="3Aqt3T" id="72cCUitY$XL" role="3I6s78">
<ref role="3AqCNq" node="4btN1w5Ki4T" resolve="checkGenerics" />
</node>
</node>
</node>
</node>
<node concept="3NuqgR" id="4Ca87cuW5S5" role="0Rg$4">
<node concept="aZer4" id="4Ca87cuW6Kk" role="3XD1gS">
<property role="TrG5h" value="TyScheme" />
</node>
<node concept="aZer4" id="4Ca87cuW5S6" role="3XD1gS">
<property role="TrG5h" value="OverridenTyScheme" />
</node>
<node concept="aZer4" id="4Ca87cuW6Nh" role="3XD1gS">
<property role="TrG5h" value="RetTy" />
</node>
<node concept="aZer4" id="4Ca87cuW6O2" role="3XD1gS">
<property role="TrG5h" value="BaseRetTy" />
</node>
<node concept="32pEOW" id="4Ca87cuW5Si" role="3vLBG7" />
</node>
<node concept="3NuqgR" id="4Ca87cv0AEX" role="0Rg$4">
<node concept="aZer4" id="4Ca87cv0AEY" role="3XD1gS">
<property role="TrG5h" value="BaseClsTy" />
</node>
<node concept="aZer4" id="4Ca87cv0AFU" role="3XD1gS">
<property role="TrG5h" value="ScopeTyArgs" />
<node concept="2OqwBi" id="4Ca87cv0DFq" role="3gj$pD">
<node concept="2OqwBi" id="4Ca87cv15ja" role="2Oq$k0">
<node concept="37vLTw" id="4Ca87cv15ay" role="2Oq$k0">
<ref role="3cqZAo" node="4Ca87cv08yA" resolve="baseCls" />
</node>
<node concept="3Tsc0h" id="4Ca87cv15mD" role="2OqNvi">
<ref role="3TtcxE" to="tpee:g96eVAe" resolve="typeVariableDeclaration" />
</node>
</node>
<node concept="34oBXx" id="4Ca87cv0FLT" role="2OqNvi" />
</node>
</node>
<node concept="32pEOW" id="4Ca87cv0AFi" role="3vLBG7" />
</node>
<node concept="3xSepi" id="4Ca87cuW61y" role="3xSepv">
<node concept="3Aq9E8" id="4Ca87cuW61z" role="3xSepj">
<node concept="3I6sU6" id="4Ca87cuW61$" role="3Ip0Jz">
<node concept="3IrJb3" id="4Ca87cv0_xP" role="3I6sU7">
<node concept="3clFbS" id="4Ca87cv0_xQ" role="3IrJb0">
<node concept="1DcWWT" id="4Ca87cv0FN2" role="3cqZAp">
<node concept="3clFbS" id="4Ca87cv0FN4" role="2LFqv$">
<node concept="3clFbF" id="4Ca87cv0LKz" role="3cqZAp">
<node concept="2OqwBi" id="4Ca87cv0LQ6" role="3clFbG">
<node concept="37vLTw" id="4Ca87cv0LKx" role="2Oq$k0">
<ref role="3cqZAo" node="4Ca87cv0oCd" resolve="subs" />
</node>
<node concept="3IkZw_" id="4Ca87cv0MB_" role="37wK5m">
<node concept="a7P8L" id="4Ca87cv0MB$" role="3Ikct_">
<ref role="a7OzE" node="4Ca87cv0AFU" resolve="ScopeTyArgs" />
<node concept="2OqwBi" id="4Ca87cv0NI0" role="3gCZO6">
<node concept="37vLTw" id="4Ca87cv0NrH" role="2Oq$k0">
<ref role="3cqZAo" node="4Ca87cv0FN5" resolve="tvd" />
<node concept="liA8E" id="4Ca87cv0LWu" role="2OqNvi">
<ref role="37wK5l" node="6EY0p2w8YaM" resolve="substitute" />
<node concept="37vLTw" id="4Ca87cv0Mp0" role="37wK5m">
<ref role="3cqZAo" node="4Ca87cv0FN5" resolve="tvd" />
</node>
<node concept="3IkZw_" id="4Ca87cv0MB_" role="37wK5m">
<node concept="a7P8L" id="4Ca87cv0MB$" role="3Ikct_">
<ref role="a7OzE" node="4Ca87cv0AFU" resolve="ScopeTyArgs" />
<node concept="2OqwBi" id="4Ca87cv0NI0" role="3gCZO6">
<node concept="37vLTw" id="4Ca87cv0NrH" role="2Oq$k0">
<ref role="3cqZAo" node="4Ca87cv0FN5" resolve="tvd" />
</node>
<node concept="2bSWHS" id="4Ca87cv0O0z" role="2OqNvi" />
</node>
<node concept="2bSWHS" id="4Ca87cv0O0z" role="2OqNvi" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="3cpWsn" id="4Ca87cv0FN5" role="1Duv9x">
<property role="TrG5h" value="tvd" />
<node concept="3Tqbb2" id="4Ca87cv0FW2" role="1tU5fm">
<ref role="ehGHo" to="tpee:g96euPO" resolve="TypeVariableDeclaration" />
<node concept="3cpWsn" id="4Ca87cv0FN5" role="1Duv9x">
<property role="TrG5h" value="tvd" />
<node concept="3Tqbb2" id="4Ca87cv0FW2" role="1tU5fm">
<ref role="ehGHo" to="tpee:g96euPO" resolve="TypeVariableDeclaration" />
</node>
</node>
<node concept="2OqwBi" id="4Ca87cv0HcQ" role="1DdaDG">
<node concept="37vLTw" id="4Ca87cv0GQn" role="2Oq$k0">
<ref role="3cqZAo" node="4Ca87cv08yA" resolve="baseCls" />
</node>
<node concept="3Tsc0h" id="4Ca87cv0JMm" role="2OqNvi">
<ref role="3TtcxE" to="tpee:g96eVAe" resolve="typeVariableDeclaration" />
</node>
</node>
</node>
<node concept="2OqwBi" id="4Ca87cv0HcQ" role="1DdaDG">
<node concept="37vLTw" id="4Ca87cv0GQn" role="2Oq$k0">
<ref role="3cqZAo" node="4Ca87cv08yA" resolve="baseCls" />
</node>
<node concept="3Tsc0h" id="4Ca87cv0JMm" role="2OqNvi">
<ref role="3TtcxE" to="tpee:g96eVAe" resolve="typeVariableDeclaration" />
<node concept="3clFbH" id="4Ca87cv0QVw" role="3cqZAp" />
<node concept="3SKdUt" id="4Ca87cv0RfA" role="3cqZAp">
<node concept="1PaTwC" id="4Ca87cv0RfB" role="3ndbpf">
<node concept="3oM_SD" id="4Ca87cv14iP" role="1PaTwD">
<property role="3oM_SC" value="get" />
</node>
<node concept="3oM_SD" id="4Ca87cv14iT" role="1PaTwD">
<property role="3oM_SC" value="actual" />
</node>
<node concept="3oM_SD" id="4Ca87cv14j0" role="1PaTwD">
<property role="3oM_SC" value="type" />
</node>
<node concept="3oM_SD" id="4Ca87cv14j6" role="1PaTwD">
<property role="3oM_SC" value="arguments" />
</node>
<node concept="3oM_SD" id="4Ca87cv14jd" role="1PaTwD">
<property role="3oM_SC" value="into" />
</node>
<node concept="3oM_SD" id="4Ca87cv14jl" role="1PaTwD">
<property role="3oM_SC" value="substituted" />
</node>
<node concept="3oM_SD" id="4Ca87cv14jy" role="1PaTwD">
<property role="3oM_SC" value="logicals" />
</node>
</node>
</node>
</node>
<node concept="3clFbH" id="4Ca87cv0QVw" role="3cqZAp" />
<node concept="3SKdUt" id="4Ca87cv0RfA" role="3cqZAp">
<node concept="1PaTwC" id="4Ca87cv0RfB" role="3ndbpf">
<node concept="3oM_SD" id="4Ca87cv14iP" role="1PaTwD">
<property role="3oM_SC" value="get" />
</node>
<node concept="3oM_SD" id="4Ca87cv14iT" role="1PaTwD">
<property role="3oM_SC" value="actual" />
</node>
<node concept="3oM_SD" id="4Ca87cv14j0" role="1PaTwD">
<property role="3oM_SC" value="type" />
</node>
<node concept="3oM_SD" id="4Ca87cv14j6" role="1PaTwD">
<property role="3oM_SC" value="arguments" />
</node>
<node concept="3oM_SD" id="4Ca87cv14jd" role="1PaTwD">
<property role="3oM_SC" value="into" />
</node>
<node concept="3oM_SD" id="4Ca87cv14jl" role="1PaTwD">
<property role="3oM_SC" value="substituted" />
</node>
<node concept="3oM_SD" id="4Ca87cv14jy" role="1PaTwD">
<property role="3oM_SC" value="logicals" />
<node concept="3Aqczg" id="4Ca87cv0R5M" role="3cqZAp">
<node concept="1imXTs" id="4Ca87cv0R5G" role="3Aqpz8">
<node concept="a7P8L" id="4Ca87cv0R7p" role="1imXu6">
<ref role="a7OzE" node="4Ca87cv0AEY" resolve="BaseClsTy" />
</node>
<node concept="37vLTw" id="4Ca87cv0R7y" role="1imXSf">
<ref role="3cqZAo" node="4Ca87cv09gl" resolve="baseClsTy" />
</node>
</node>
</node>
</node>
<node concept="3Aqczg" id="4Ca87cv0R5M" role="3cqZAp">
<node concept="1imXTs" id="4Ca87cv0R5G" role="3Aqpz8">
<node concept="a7P8L" id="4Ca87cv0R7p" role="1imXu6">
<ref role="a7OzE" node="4Ca87cv0AEY" resolve="BaseClsTy" />
</node>
<node concept="37vLTw" id="4Ca87cv0R7y" role="1imXSf">
<ref role="3cqZAo" node="4Ca87cv09gl" resolve="baseClsTy" />
</node>
</node>
</node>
<node concept="3Aqczg" id="4Ca87cv0R9A" role="3cqZAp">
<node concept="3A8Hvi" id="4Ca87cv0R9w" role="3Aqpz8">
<node concept="a7P8L" id="4Ca87cv0Rbg" role="3A8wtg">
<ref role="a7OzE" node="4Ca87cv0AEY" resolve="BaseClsTy" />
</node>
<node concept="ns1u0" id="4Ca87cv0Rbp" role="3A8w4Q">
<ref role="ns1xF" node="JOGAOsVt2a" resolve="classifier" />
<node concept="nsMwS" id="4Ca87cv0Rbt" role="ns1xD">
<ref role="nsMwP" node="JOGAOsVt2e" resolve="parameter" />
<node concept="1nq8_$" id="4Ca87cv0RbA" role="nsMwV">
<node concept="a7P8L" id="4Ca87cv0Rb_" role="1nq8_t">
<ref role="a7OzE" node="4Ca87cv0AFU" resolve="ScopeTyArgs" />
<node concept="3Aqczg" id="4Ca87cv0R9A" role="3cqZAp">
<node concept="3A8Hvi" id="4Ca87cv0R9w" role="3Aqpz8">
<node concept="a7P8L" id="4Ca87cv0Rbg" role="3A8wtg">
<ref role="a7OzE" node="4Ca87cv0AEY" resolve="BaseClsTy" />
</node>
<node concept="ns1u0" id="4Ca87cv0Rbp" role="3A8w4Q">
<ref role="ns1xF" node="JOGAOsVt2a" resolve="classifier" />
<node concept="nsMwS" id="4Ca87cv0Rbt" role="ns1xD">
<ref role="nsMwP" node="JOGAOsVt2e" resolve="parameter" />
<node concept="1nq8_$" id="4Ca87cv0RbA" role="nsMwV">
<node concept="a7P8L" id="4Ca87cv0Rb_" role="1nq8_t">
<ref role="a7OzE" node="4Ca87cv0AFU" resolve="ScopeTyArgs" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="1$59iH" id="4Ca87cv0O9A" role="3cqZAp">
<ref role="1$58ik" node="6hqFpWmN1Sp" resolve="substitution" />
<node concept="37vLTw" id="4Ca87cv0Oc8" role="1$59jn">
<ref role="3cqZAo" node="4Ca87cv0oCd" resolve="subs" />
</node>
<node concept="3clFbS" id="4Ca87cv0O9E" role="1$59iG">
<node concept="3Aqczg" id="4Ca87cv0_xS" role="3cqZAp">
<node concept="1imXTs" id="4Ca87cuWdmw" role="3Aqpz8">
<node concept="a7P8L" id="4Ca87cuWdmM" role="1imXu6">
<ref role="a7OzE" node="4Ca87cuW6O2" resolve="BaseRetTy" />
</node>
<node concept="2OqwBi" id="4Ca87cuWdqT" role="1imXSf">
<node concept="37vLTw" id="4Ca87cuWdmT" role="2Oq$k0">
<ref role="3cqZAo" node="4Ca87cuW4ke" resolve="overriden" />
<node concept="1$59iH" id="4Ca87cv0O9A" role="3cqZAp">
<ref role="1$58ik" node="6hqFpWmN1Sp" resolve="substitution" />
<node concept="37vLTw" id="4Ca87cv0Oc8" role="1$59jn">
<ref role="3cqZAo" node="4Ca87cv0oCd" resolve="subs" />
</node>
<node concept="3clFbS" id="4Ca87cv0O9E" role="1$59iG">
<node concept="3Aqczg" id="4Ca87cv0_xS" role="3cqZAp">
<node concept="1imXTs" id="4Ca87cuWdmw" role="3Aqpz8">
<node concept="a7P8L" id="4Ca87cuWdmM" role="1imXu6">
<ref role="a7OzE" node="4Ca87cuW6O2" resolve="BaseRetTy" />
</node>
<node concept="3TrEf2" id="4Ca87cuWdtk" role="2OqNvi">
<ref role="3Tt5mk" to="tpee:fzclF7X" resolve="returnType" />
<node concept="2OqwBi" id="4Ca87cuWdqT" role="1imXSf">
<node concept="37vLTw" id="4Ca87cuWdmT" role="2Oq$k0">
<ref role="3cqZAo" node="4Ca87cuW4ke" resolve="overriden" />
</node>
<node concept="3TrEf2" id="4Ca87cuWdtk" role="2OqNvi">
<ref role="3Tt5mk" to="tpee:fzclF7X" resolve="returnType" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="3clFbH" id="4Ca87cv18Ex" role="3cqZAp" />
<node concept="3Aqczg" id="4Ca87cv0_xR" role="3cqZAp">
<node concept="1imXTs" id="4Ca87cuWbZ2" role="3Aqpz8">
<node concept="a7P8L" id="4Ca87cuWbZb" role="1imXu6">
<ref role="a7OzE" node="4Ca87cuW6Nh" resolve="RetTy" />
</node>
<node concept="2OqwBi" id="4Ca87cuWchO" role="1imXSf">
<node concept="3A2sRY" id="4Ca87cuWbZi" role="2Oq$k0">
<ref role="3A2yKK" node="771syFLhdKO" resolve="bmd" />
<node concept="3clFbH" id="4Ca87cv18Ex" role="3cqZAp" />
<node concept="3Aqczg" id="4Ca87cv0_xR" role="3cqZAp">
<node concept="1imXTs" id="4Ca87cuWbZ2" role="3Aqpz8">
<node concept="a7P8L" id="4Ca87cuWbZb" role="1imXu6">
<ref role="a7OzE" node="4Ca87cuW6Nh" resolve="RetTy" />
</node>
<node concept="3TrEf2" id="4Ca87cuWcXZ" role="2OqNvi">
<ref role="3Tt5mk" to="tpee:fzclF7X" resolve="returnType" />
<node concept="2OqwBi" id="4Ca87cuWchO" role="1imXSf">
<node concept="3A2sRY" id="4Ca87cuWbZi" role="2Oq$k0">
<ref role="3A2yKK" node="771syFLhdKO" resolve="bmd" />
</node>
<node concept="3TrEf2" id="4Ca87cuWcXZ" role="2OqNvi">
<ref role="3Tt5mk" to="tpee:fzclF7X" resolve="returnType" />
</node>
</node>
</node>
</node>
<node concept="3SKdUt" id="72cCUitY_aN" role="3cqZAp">
<node concept="1PaTwC" id="72cCUitY_aO" role="3ndbpf">
<node concept="3oM_SD" id="72cCUitY_aQ" role="1PaTwD">
<property role="3oM_SC" value="Check" />
</node>
<node concept="3oM_SD" id="72cCUitY_cW" role="1PaTwD">
<property role="3oM_SC" value="return" />
</node>
<node concept="3oM_SD" id="72cCUitY_cZ" role="1PaTwD">
<property role="3oM_SC" value="type" />
</node>
<node concept="3oM_SD" id="72cCUitY_d3" role="1PaTwD">
<property role="3oM_SC" value="covariance" />
</node>
</node>
</node>
<node concept="3Aqczg" id="4Ca87cv0_xT" role="3cqZAp">
<node concept="3Aqt3T" id="4Ca87cuWdyK" role="3Aqpz8">
<ref role="3AqCNq" node="3Qp4N06bUPu" resolve="convertsTo" />
<node concept="a7P8L" id="4Ca87cuWdz3" role="3AunhB">
<ref role="a7OzE" node="4Ca87cuW6Nh" resolve="RetTy" />
</node>
<node concept="a7P8L" id="4Ca87cuWdzd" role="3AunhB">
<ref role="a7OzE" node="4Ca87cuW6O2" resolve="BaseRetTy" />
</node>
</node>
</node>
</node>
<node concept="3Aqczg" id="4Ca87cv0_xT" role="3cqZAp">
<node concept="3Aqt3T" id="4Ca87cuWdyK" role="3Aqpz8">
<ref role="3AqCNq" node="3Qp4N06bUPu" resolve="convertsTo" />
<node concept="a7P8L" id="4Ca87cuWdz3" role="3AunhB">
<ref role="a7OzE" node="4Ca87cuW6Nh" resolve="RetTy" />
</node>
<node concept="a7P8L" id="4Ca87cuWdzd" role="3AunhB">
<ref role="a7OzE" node="4Ca87cuW6O2" resolve="BaseRetTy" />
</node>
</node>
</node>
<node concept="3SKdUt" id="4Ca87cv34Lk" role="3cqZAp">
<node concept="1PaTwC" id="4Ca87cv34Ll" role="3ndbpf">
<node concept="3oM_SD" id="4Ca87cv34Ln" role="1PaTwD">
<property role="3oM_SC" value="error: get2() in GBox2Ok cannot override get2() in GBox" />
</node>
</node>
</node>
<node concept="3clFbH" id="4Ca87cv34Lj" role="3cqZAp" />
</node>
</node>
</node>
</node>
</node>
<node concept="3xSepi" id="4Ca87cv34EO" role="3xSepv">
<node concept="3Aq9E8" id="4Ca87cv34EP" role="3xSepj">
<node concept="3I6sU6" id="4Ca87cv34EQ" role="3Ip0Jz">
<node concept="3I6s7M" id="4Ca87cv34H0" role="3I6sU7">
<node concept="1lHd6T" id="4Ca87cv34GZ" role="3I6s78">
<property role="1lHdp1" value="4jcOV4hu0n_/ERROR" />
<node concept="3cpWs3" id="4Q8MVs_3H96" role="1ljv2e">
<node concept="2OqwBi" id="4Q8MVs_3H$q" role="3uHU7w">
<node concept="37vLTw" id="4Q8MVs_3HbX" role="2Oq$k0">
<ref role="3cqZAo" node="4Ca87cv08yA" resolve="baseCls" />
<node concept="3xSepi" id="4Ca87cv34EO" role="3xSepv">
<node concept="3Aq9E8" id="4Ca87cv34EP" role="3xSepj">
<node concept="3I6sU6" id="4Ca87cv34EQ" role="3Ip0Jz">
<node concept="3I6s7M" id="4Ca87cv34H0" role="3I6sU7">
<node concept="1lHd6T" id="4Ca87cv34GZ" role="3I6s78">
<property role="1lHdp1" value="4jcOV4hu0n_/ERROR" />
<node concept="3cpWs3" id="4Q8MVs_3H96" role="1ljv2e">
<node concept="37vLTw" id="72cCUiu9dtJ" role="3uHU7w">
<ref role="3cqZAo" node="72cCUiu9c$k" resolve="baseClsId" />
</node>
<node concept="3TrcHB" id="4Q8MVs_3HZR" role="2OqNvi">
<ref role="3TsBF5" to="tpck:h0TrG11" resolve="name" />
<node concept="Xl_RD" id="4Q8MVs_3BY_" role="3uHU7B">
<property role="Xl_RC" value="return type is incompatible with base method in " />
</node>
</node>
<node concept="Xl_RD" id="4Q8MVs_3BY_" role="3uHU7B">
<property role="Xl_RC" value="return type is incompatible with base method in " />
</node>
</node>
</node>
</node>
@ -43505,13 +43612,6 @@
</node>
</node>
</node>
<node concept="3clFbH" id="4Ca87cv14jI" role="3cqZAp" />
</node>
<node concept="3y3z36" id="4Ca87cuW6Jc" role="3clFbw">
<node concept="10Nm6u" id="4Ca87cuW6Jj" role="3uHU7w" />
<node concept="37vLTw" id="4Ca87cuW6oP" role="3uHU7B">
<ref role="3cqZAo" node="4Ca87cuW4ke" resolve="overriden" />
</node>
</node>
</node>
</node>

View File

@ -86,6 +86,7 @@
</concept>
<concept id="1068498886292" name="jetbrains.mps.baseLanguage.structure.ParameterDeclaration" flags="ir" index="37vLTG" />
<concept id="1068498886294" name="jetbrains.mps.baseLanguage.structure.AssignmentExpression" flags="nn" index="37vLTI" />
<concept id="1225271177708" name="jetbrains.mps.baseLanguage.structure.StringType" flags="in" index="17QB3L" />
<concept id="4972933694980447171" name="jetbrains.mps.baseLanguage.structure.BaseVariableDeclaration" flags="ng" index="19Szcq">
<child id="5680397130376446158" name="type" index="1tU5fm" />
</concept>
@ -6823,5 +6824,268 @@
<node concept="2tJIrI" id="7lCg3YbugxD" role="jymVt" />
<node concept="3Tm1VV" id="7lCg3YbuczY" role="1B3o_S" />
</node>
<node concept="312cEu" id="6_5E9TNDqeq">
<property role="TrG5h" value="OverridingAndErasure" />
<node concept="2tJIrI" id="6_5E9TNDzG8" role="jymVt" />
<node concept="312cEu" id="6_5E9TND_19" role="jymVt">
<property role="2bfB8j" value="true" />
<property role="TrG5h" value="CollectionConverter" />
<node concept="3clFb_" id="6_5E9TNDEOn" role="jymVt">
<property role="TrG5h" value="toList" />
<node concept="37vLTG" id="6_5E9TNDGFN" role="3clF46">
<property role="TrG5h" value="col" />
<node concept="3uibUv" id="6_5E9TNDHcn" role="1tU5fm">
<ref role="3uigEE" to="33ny:~Collection" resolve="Collection" />
<node concept="16syzq" id="6_5E9TNDHE6" role="11_B2D">
<ref role="16sUi3" node="6_5E9TNDFii" resolve="T" />
</node>
</node>
</node>
<node concept="3clFbS" id="6_5E9TNDEOq" role="3clF47">
<node concept="3cpWs6" id="6_5E9TNFdEq" role="3cqZAp">
<node concept="2YIFZM" id="6_5E9TNDUT8" role="3cqZAk">
<ref role="1Pybhc" to="33ny:~List" resolve="List" />
<ref role="37wK5l" to="33ny:~List.copyOf(java.util.Collection)" resolve="copyOf" />
<node concept="37vLTw" id="6_5E9TNDV18" role="37wK5m">
<ref role="3cqZAo" node="6_5E9TNDGFN" resolve="col" />
</node>
</node>
</node>
</node>
<node concept="3Tm1VV" id="6_5E9TNDDWt" role="1B3o_S" />
<node concept="16euLQ" id="6_5E9TNDFii" role="16eVyc">
<property role="TrG5h" value="T" />
</node>
<node concept="3uibUv" id="6_5E9TNDGai" role="3clF45">
<ref role="3uigEE" to="33ny:~List" resolve="List" />
<node concept="16syzq" id="6_5E9TNDGen" role="11_B2D">
<ref role="16sUi3" node="6_5E9TNDFii" resolve="T" />
</node>
</node>
</node>
<node concept="3Tm1VV" id="6_5E9TND_1a" role="1B3o_S" />
<node concept="16euLQ" id="6_5E9TNDAUX" role="16eVyc">
<property role="TrG5h" value="T" />
</node>
</node>
<node concept="2tJIrI" id="6_5E9TNDW04" role="jymVt" />
<node concept="2tJIrI" id="6_5E9TNDW0m" role="jymVt" />
<node concept="312cEu" id="6_5E9TNDWWw" role="jymVt">
<property role="2bfB8j" value="true" />
<property role="TrG5h" value="OverriderRaw" />
<node concept="3clFb_" id="6_5E9TNE3PE" role="jymVt">
<property role="TrG5h" value="toList" />
<node concept="3clFbS" id="6_5E9TNE3PH" role="3clF47">
<node concept="3SKdUt" id="72cCUitZmAx" role="3cqZAp">
<node concept="1PaTwC" id="72cCUitZmAy" role="3ndbpf">
<node concept="3oM_SD" id="72cCUitZmAz" role="1PaTwD">
<property role="3oM_SC" value="NB:" />
</node>
<node concept="3oM_SD" id="72cCUitZmA$" role="1PaTwD">
<property role="3oM_SC" value="note" />
</node>
<node concept="3oM_SD" id="72cCUitZmA_" role="1PaTwD">
<property role="3oM_SC" value="inheritance" />
</node>
<node concept="3oM_SD" id="72cCUitZmAA" role="1PaTwD">
<property role="3oM_SC" value="from" />
</node>
<node concept="3oM_SD" id="72cCUitZmAB" role="1PaTwD">
<property role="3oM_SC" value="raw" />
</node>
<node concept="3oM_SD" id="72cCUitZmAC" role="1PaTwD">
<property role="3oM_SC" value="type" />
</node>
</node>
</node>
<node concept="3cpWs6" id="6_5E9TNFcdx" role="3cqZAp">
<node concept="10Nm6u" id="6_5E9TNFcdy" role="3cqZAk" />
</node>
</node>
<node concept="3uibUv" id="6_5E9TNE3m2" role="3clF45">
<ref role="3uigEE" to="33ny:~List" resolve="List" />
</node>
<node concept="37vLTG" id="6_5E9TNE4JD" role="3clF46">
<property role="TrG5h" value="col" />
<node concept="3uibUv" id="6_5E9TNE4JC" role="1tU5fm">
<ref role="3uigEE" to="33ny:~Collection" resolve="Collection" />
</node>
</node>
<node concept="3Tm1VV" id="6_5E9TNE6gV" role="1B3o_S" />
</node>
<node concept="3Tm1VV" id="6_5E9TNDWu$" role="1B3o_S" />
<node concept="3uibUv" id="6_5E9TNE0hj" role="1zkMxy">
<ref role="3uigEE" node="6_5E9TND_19" resolve="OverridingAndErasure.CollectionConverter" />
</node>
</node>
<node concept="2tJIrI" id="72cCUitZk$P" role="jymVt" />
<node concept="312cEu" id="72cCUitZkcr" role="jymVt">
<property role="2bfB8j" value="true" />
<property role="TrG5h" value="OverriderString1" />
<node concept="3clFb_" id="72cCUitZkcs" role="jymVt">
<property role="TrG5h" value="toList" />
<node concept="3clFbS" id="72cCUitZkct" role="3clF47">
<node concept="3cpWs6" id="72cCUitZkcu" role="3cqZAp">
<node concept="10Nm6u" id="72cCUitZkcv" role="3cqZAk" />
</node>
</node>
<node concept="3uibUv" id="72cCUitZkcw" role="3clF45">
<ref role="3uigEE" to="33ny:~List" resolve="List" />
<node concept="17QB3L" id="72cCUiu3Uv0" role="11_B2D" />
</node>
<node concept="37vLTG" id="72cCUitZkcx" role="3clF46">
<property role="TrG5h" value="col" />
<node concept="3uibUv" id="72cCUitZkcy" role="1tU5fm">
<ref role="3uigEE" to="33ny:~Collection" resolve="Collection" />
<node concept="17QB3L" id="72cCUiu3Ubq" role="11_B2D" />
</node>
</node>
<node concept="3Tm1VV" id="72cCUitZkcz" role="1B3o_S" />
<node concept="1U20sH" id="72cCUitZmx4" role="lGtFl">
<property role="1U20sK" value="error" />
</node>
</node>
<node concept="3Tm1VV" id="72cCUitZkc$" role="1B3o_S" />
<node concept="3uibUv" id="72cCUitZkc_" role="1zkMxy">
<ref role="3uigEE" node="6_5E9TND_19" resolve="OverridingAndErasure.CollectionConverter" />
</node>
</node>
<node concept="2tJIrI" id="6_5E9TNF19M" role="jymVt" />
<node concept="312cEu" id="6_5E9TNF1$Z" role="jymVt">
<property role="2bfB8j" value="true" />
<property role="TrG5h" value="OverriderString2" />
<node concept="3clFb_" id="6_5E9TNF1_0" role="jymVt">
<property role="TrG5h" value="toList" />
<node concept="3clFbS" id="6_5E9TNF1_1" role="3clF47">
<node concept="3cpWs6" id="6_5E9TNFaOL" role="3cqZAp">
<node concept="10Nm6u" id="6_5E9TNFbke" role="3cqZAk" />
</node>
</node>
<node concept="3uibUv" id="6_5E9TNF1_4" role="3clF45">
<ref role="3uigEE" to="33ny:~List" resolve="List" />
<node concept="17QB3L" id="72cCUiu3ULk" role="11_B2D" />
</node>
<node concept="37vLTG" id="6_5E9TNF1_5" role="3clF46">
<property role="TrG5h" value="col" />
<node concept="3uibUv" id="6_5E9TNF1_6" role="1tU5fm">
<ref role="3uigEE" to="33ny:~Collection" resolve="Collection" />
<node concept="17QB3L" id="72cCUiu3V3P" role="11_B2D" />
</node>
</node>
<node concept="3Tm1VV" id="6_5E9TNF1_7" role="1B3o_S" />
<node concept="1U20sH" id="6_5E9TNFg6A" role="lGtFl">
<property role="1U20sK" value="error" />
</node>
</node>
<node concept="3Tm1VV" id="6_5E9TNF1_8" role="1B3o_S" />
<node concept="3uibUv" id="6_5E9TNF4n5" role="1zkMxy">
<ref role="3uigEE" node="6_5E9TNDWWw" resolve="OverridingAndErasure.OverriderRaw" />
</node>
</node>
<node concept="2tJIrI" id="6_5E9TNF1aj" role="jymVt" />
<node concept="2tJIrI" id="72cCUitYqXZ" role="jymVt" />
<node concept="312cEu" id="72cCUitYoUH" role="jymVt">
<property role="2bfB8j" value="true" />
<property role="TrG5h" value="StringSorter" />
<node concept="3clFb_" id="72cCUitYoUI" role="jymVt">
<property role="TrG5h" value="toList" />
<node concept="37vLTG" id="72cCUitYoUJ" role="3clF46">
<property role="TrG5h" value="col" />
<node concept="3uibUv" id="72cCUitYoUK" role="1tU5fm">
<ref role="3uigEE" to="33ny:~Collection" resolve="Collection" />
<node concept="3uibUv" id="72cCUitYpFC" role="11_B2D">
<ref role="3uigEE" to="wyt6:~String" resolve="String" />
</node>
</node>
</node>
<node concept="3clFbS" id="72cCUitYoUM" role="3clF47">
<node concept="3cpWs6" id="72cCUitYoUN" role="3cqZAp">
<node concept="2YIFZM" id="72cCUitYoUO" role="3cqZAk">
<ref role="37wK5l" to="33ny:~List.copyOf(java.util.Collection)" resolve="copyOf" />
<ref role="1Pybhc" to="33ny:~List" resolve="List" />
<node concept="37vLTw" id="72cCUitYoUP" role="37wK5m">
<ref role="3cqZAo" node="72cCUitYoUJ" resolve="col" />
</node>
</node>
</node>
</node>
<node concept="3Tm1VV" id="72cCUitYoUQ" role="1B3o_S" />
<node concept="3uibUv" id="72cCUitYoUS" role="3clF45">
<ref role="3uigEE" to="33ny:~List" resolve="List" />
<node concept="3uibUv" id="72cCUitYpu0" role="11_B2D">
<ref role="3uigEE" to="wyt6:~String" resolve="String" />
</node>
</node>
</node>
<node concept="3Tm1VV" id="72cCUitYoUU" role="1B3o_S" />
</node>
<node concept="2tJIrI" id="6_5E9TNEaWJ" role="jymVt" />
<node concept="312cEu" id="72cCUitYpTO" role="jymVt">
<property role="2bfB8j" value="true" />
<property role="TrG5h" value="SorterOverriderRaw" />
<node concept="3clFb_" id="72cCUitYpTP" role="jymVt">
<property role="TrG5h" value="toList" />
<node concept="3clFbS" id="72cCUitYpTQ" role="3clF47">
<node concept="3SKdUt" id="72cCUitYqRK" role="3cqZAp">
<node concept="1PaTwC" id="72cCUitYqRL" role="3ndbpf">
<node concept="3oM_SD" id="72cCUitYqRN" role="1PaTwD">
<property role="3oM_SC" value="NB:" />
</node>
<node concept="3oM_SD" id="72cCUitYqWX" role="1PaTwD">
<property role="3oM_SC" value="javac" />
</node>
<node concept="3oM_SD" id="72cCUitYqX0" role="1PaTwD">
<property role="3oM_SC" value="fires" />
</node>
<node concept="3oM_SD" id="72cCUitYqXc" role="1PaTwD">
<property role="3oM_SC" value="only" />
</node>
<node concept="3oM_SD" id="72cCUitYqXh" role="1PaTwD">
<property role="3oM_SC" value="warning" />
</node>
<node concept="3oM_SD" id="72cCUitYrd2" role="1PaTwD">
<property role="3oM_SC" value="about" />
</node>
<node concept="3oM_SD" id="72cCUitYrdc" role="1PaTwD">
<property role="3oM_SC" value="unchecked/unsafe" />
</node>
<node concept="3oM_SD" id="72cCUitYrdB" role="1PaTwD">
<property role="3oM_SC" value="operations" />
</node>
<node concept="3oM_SD" id="72cCUitYqXn" role="1PaTwD">
<property role="3oM_SC" value="in" />
</node>
<node concept="3oM_SD" id="72cCUitYqXA" role="1PaTwD">
<property role="3oM_SC" value="this" />
</node>
<node concept="3oM_SD" id="72cCUitYqXI" role="1PaTwD">
<property role="3oM_SC" value="case" />
</node>
</node>
</node>
<node concept="3cpWs6" id="72cCUitYpTR" role="3cqZAp">
<node concept="10Nm6u" id="72cCUitYpTS" role="3cqZAk" />
</node>
</node>
<node concept="3uibUv" id="72cCUitYpTT" role="3clF45">
<ref role="3uigEE" to="33ny:~List" resolve="List" />
</node>
<node concept="37vLTG" id="72cCUitYpTU" role="3clF46">
<property role="TrG5h" value="col" />
<node concept="3uibUv" id="72cCUitYpTV" role="1tU5fm">
<ref role="3uigEE" to="33ny:~Collection" resolve="Collection" />
</node>
</node>
<node concept="3Tm1VV" id="72cCUitYpTW" role="1B3o_S" />
</node>
<node concept="3Tm1VV" id="72cCUitYpTX" role="1B3o_S" />
<node concept="3uibUv" id="72cCUitYqiv" role="1zkMxy">
<ref role="3uigEE" node="72cCUitYoUH" resolve="OverridingAndErasure.StringSorter" />
</node>
</node>
<node concept="2tJIrI" id="72cCUitYoJE" role="jymVt" />
<node concept="2tJIrI" id="6_5E9TNEaXe" role="jymVt" />
<node concept="3Tm1VV" id="6_5E9TNDqer" role="1B3o_S" />
</node>
</model>

View File

@ -642,6 +642,85 @@
<ref role="3uigEE" to="wyt6:~Exception" resolve="Exception" />
</node>
</node>
<node concept="1X3_iC" id="72cCUiu6jGm" role="lGtFl">
<property role="3V$3am" value="testMethods" />
<property role="3V$3ak" value="8585453e-6bfb-4d80-98de-b16074f1d86c/1216913645126/1217501895093" />
<node concept="1LZb2c" id="6_5E9TNFq_Y" role="8Wnug">
<property role="TrG5h" value="OverridingAndErasure" />
<node concept="3cqZAl" id="6_5E9TNFq_Z" role="3clF45" />
<node concept="3clFbS" id="6_5E9TNFqA0" role="3clF47">
<node concept="3SKdUt" id="72cCUiu6jSh" role="3cqZAp">
<node concept="1PaTwC" id="72cCUiu6jSi" role="3ndbpf">
<node concept="3oM_SD" id="72cCUiu6jSk" role="1PaTwD">
<property role="3oM_SC" value="fixme:" />
</node>
<node concept="3oM_SD" id="72cCUiu6jS$" role="1PaTwD">
<property role="3oM_SC" value="understand" />
</node>
<node concept="3oM_SD" id="72cCUiu6jSB" role="1PaTwD">
<property role="3oM_SC" value="whether" />
</node>
<node concept="3oM_SD" id="72cCUiu6jSF" role="1PaTwD">
<property role="3oM_SC" value="it" />
</node>
<node concept="3oM_SD" id="72cCUiu6jSK" role="1PaTwD">
<property role="3oM_SC" value="should" />
</node>
<node concept="3oM_SD" id="72cCUiu6jSQ" role="1PaTwD">
<property role="3oM_SC" value="be" />
</node>
<node concept="3oM_SD" id="72cCUiu6jSX" role="1PaTwD">
<property role="3oM_SC" value="checked" />
</node>
<node concept="3oM_SD" id="72cCUiu6jT5" role="1PaTwD">
<property role="3oM_SC" value="by" />
</node>
<node concept="3oM_SD" id="72cCUiu6jTe" role="1PaTwD">
<property role="3oM_SC" value="checking" />
</node>
<node concept="3oM_SD" id="72cCUiu6jTo" role="1PaTwD">
<property role="3oM_SC" value="rules" />
</node>
<node concept="3oM_SD" id="72cCUiu6jTz" role="1PaTwD">
<property role="3oM_SC" value="or" />
</node>
<node concept="3oM_SD" id="72cCUiu6jTJ" role="1PaTwD">
<property role="3oM_SC" value="by" />
</node>
<node concept="3oM_SD" id="72cCUiu6jTW" role="1PaTwD">
<property role="3oM_SC" value="coderules" />
</node>
</node>
</node>
<node concept="2Hmddi" id="6_5E9TNFqA1" role="3cqZAp">
<node concept="2OqwBi" id="6_5E9TNFqA2" role="2Hmdds">
<node concept="2YIFZM" id="6_5E9TNFqA3" role="2Oq$k0">
<ref role="1Pybhc" to="tj24:1N_0WA5JxZO" resolve="TypecheckingTestHelper" />
<ref role="37wK5l" to="tj24:27bTNFfaOo$" resolve="ofNode" />
<node concept="2OqwBi" id="6_5E9TNFqA4" role="37wK5m">
<node concept="2WthIp" id="6_5E9TNFqA5" role="2Oq$k0" />
<node concept="2XshWL" id="6_5E9TNFqA6" role="2OqNvi">
<ref role="2WH_rO" node="35YJGAJTxCf" resolve="resolve" />
<node concept="2tJFMh" id="6_5E9TNFqA7" role="2XxRq1">
<node concept="ZC_QK" id="6_5E9TNFtnf" role="2tJFKM">
<ref role="2aWVGs" to="wqtl:6_5E9TNDqeq" resolve="OverridingAndErasure" />
</node>
</node>
</node>
</node>
<node concept="1jxXqW" id="6_5E9TNFqA9" role="37wK5m" />
</node>
<node concept="liA8E" id="6_5E9TNFqAa" role="2OqNvi">
<ref role="37wK5l" to="tj24:27bTNFfaYS2" resolve="checkTypes" />
</node>
</node>
</node>
</node>
<node concept="3uibUv" id="6_5E9TNFqAb" role="Sfmx6">
<ref role="3uigEE" to="wyt6:~Exception" resolve="Exception" />
</node>
</node>
</node>
</node>
</model>