src/compiler: Added fixint variants to compiler
[nit.git] / src / nitni / nitni_base.nit
index a64c3df..a43e1d7 100644 (file)
@@ -94,6 +94,11 @@ redef class MClassType
                if name == "Float" then return "double"
                if name == "Int" then return "long"
                if name == "Byte" then return "unsigned char"
+               if name == "Int8" then return "int8_t"
+               if name == "Int16" then return "int16_t"
+               if name == "UInt16" then return "uint16_t"
+               if name == "Int32" then return "int32_t"
+               if name == "UInt32" then return "uint32_t"
                if name == "NativeString" then return "char*"
                if mclass.kind == extern_kind then
                        var ctype = mclass.ctype
@@ -110,6 +115,11 @@ redef class MClassType
                if name == "Float" then return "double"
                if name == "Int" then return "long"
                if name == "Byte" then return "unsigned char"
+               if name == "Int8" then return "int8_t"
+               if name == "Int16" then return "int16_t"
+               if name == "UInt16" then return "uint16_t"
+               if name == "Int32" then return "int32_t"
+               if name == "UInt32" then return "uint32_t"
                if name == "NativeString" then return "char*"
                if mclass.kind == extern_kind then return "void*"
                return super
@@ -121,7 +131,8 @@ redef class MClassType
        redef fun mangled_cname do return mclass.name
 
        redef fun is_cprimitive do return mclass.kind == extern_kind or
-                       (once ["Bool", "Char", "Float", "Int", "NativeString", "Byte"]).has(mclass.name)
+                       (once ["Bool", "Char", "Float", "Int", "NativeString",
+                              "Byte", "Int8", "Int16", "UInt16", "Int32", "UInt32"]).has(mclass.name)
 end
 
 redef class MNullableType