Simple fix for the "Redef Error" in mnit clients: do not redef virtual types, instead assert the types in the users methods.
Pull-Request: #1751
Reviewed-by: Romain Chanoir <chanoir.romain@courrier.uqam.ca>
Reviewed-by: Jean Privat <jean@pryen.org>
`}
redef class App
- redef type D: Opengles1Display
-
redef fun init_window
do
display = new Opengles1Display
`}
redef class App
- redef type D: Opengles1Display
- redef type I: Opengles1Image
-
redef fun setup
do
if "NIT_TESTING".environ == "true" then exit 0
redef fun generate_input
do
+ var display = display
+ assert display isa Opengles1Display
+
for event in display.sdl_display.events do
- input( event )
+ input event
end
end
end
+++ /dev/null
-../lib/mnit/linux/linux_app.nit:29,16--31: Redef Error: a virtual type cannot be refined.
-../lib/mnit/linux/linux_app.nit:30,16--29: Redef Error: a virtual type cannot be refined.
+++ /dev/null
-../lib/mnit/linux/linux_app.nit:29,16--31: Redef Error: a virtual type cannot be refined.
-../lib/mnit/linux/linux_app.nit:30,16--29: Redef Error: a virtual type cannot be refined.
+++ /dev/null
-../lib/mnit/linux/linux_app.nit:29,16--31: Redef Error: a virtual type cannot be refined.
-../lib/mnit/linux/linux_app.nit:30,16--29: Redef Error: a virtual type cannot be refined.