Merge: Contract implementation
[nit.git] / src / compiler / compiler_ffi / light.nit
index 01579b0..ce0f71b 100644 (file)
@@ -29,7 +29,7 @@ redef class MModule
                return v.compiler.modelbuilder.mmodule2node(self)
        end
 
-       redef fun finalize_ffi(compiler: AbstractCompiler)
+       redef fun finalize_ffi(compiler)
        do
                if not uses_ffi then return
 
@@ -43,6 +43,7 @@ redef class MModule
                ensure_compile_nitni_base(v)
 
                nitni_ccu.header_c_types.add("#include \"{c_name}._ffi.h\"\n")
+               nitni_ccu.header_c_types.add("#include <stdint.h>\n")
                nitni_ccu.header_c_types.add """
 extern void nitni_global_ref_incr(void*);
 extern void nitni_global_ref_decr(void*);
@@ -52,7 +53,7 @@ extern void nitni_global_ref_decr(void*);
                nitni_ccu.write_as_nitni(self, v.compiler.toolchain.compile_dir)
 
                for file in nitni_ccu.files do
-                       var f = new ExternCFile(file, cflags)
+                       var f = new ExternCFile(file.basename, cflags)
                        f.pkgconfigs.add_all pkgconfigs
                        v.compiler.extern_bodies.add(f)
                end