compiler: do not use the outnames of fictive modules
authorJean Privat <jean@pryen.org>
Fri, 10 Oct 2014 02:05:26 +0000 (22:05 -0400)
committerJean Privat <jean@pryen.org>
Fri, 10 Oct 2014 22:54:55 +0000 (18:54 -0400)
Signed-off-by: Jean Privat <jean@pryen.org>

src/compiler/abstract_compiler.nit

index c8fd126..40f645c 100644 (file)
@@ -310,7 +310,16 @@ class MakefileToolchain
 
        fun makefile_name(mainmodule: MModule): String do return "{mainmodule.name}.mk"
 
-       fun default_outname(mainmodule: MModule): String do return mainmodule.name
+       fun default_outname(mainmodule: MModule): String
+       do
+               # Search a non fictive module
+               var res = mainmodule.name
+               while mainmodule.is_fictive do
+                       mainmodule = mainmodule.in_importation.direct_greaters.first
+                       res = mainmodule.name
+               end
+               return res
+       end
 
        # Combine options and platform informations to get the final path of the outfile
        fun outfile(mainmodule: MModule): String