extension Int: Real {
    public static var zero: Int { return 0 }
}

extension Int8: Real {
    public static var zero: Int8 { return 0 }
}

extension Int16: Real {
    public static var zero: Int16 { return 0 }
}

extension Int32: Real {
    public static var zero: Int32 { return 0 }
}

extension Int64: Real {
    public static var zero: Int64 { return 0 }
}

extension Float: Real {
    public static var zero: Float { return 0 }
}

extension Double: Real {
    public static var zero: Double { return 0 }
}

extension Int: Real {
    public static var zero: Int { return 0 }
}

--- 
+++ 
@@ -1,3 +1,27 @@
 extension Int: Real {
     public static var zero: Int { return 0 }
 }
+
+extension Int8: Real {
+    public static var zero: Int8 { return 0 }
+}
+
+extension Int16: Real {
+    public static var zero: Int16 { return 0 }
+}
+
+extension Int32: Real {
+    public static var zero: Int32 { return 0 }
+}
+
+extension Int64: Real {
+    public static var zero: Int64 { return 0 }
+}
+
+extension Float: Real {
+    public static var zero: Float { return 0 }
+}
+
+extension Double: Real {
+    public static var zero: Double { return 0 }
+}
Support Int8, Int16, Int32, Int64, Float and Double.
