bind: map Go's int type to Objective-C's long type
https://developer.apple.com/library/ios/documentation/General/Conceptual/CocoaTouch64BitGuide/Major64-BitChanges/Major64-BitChanges.html
Fixes golang/go#16182
Change-Id: I312749e8a7113bf9231eb3896f801e450f46a410
Reviewed-on: https://go-review.googlesource.com/24792
Reviewed-by: Elias Naur <elias.naur@gmail.com>
diff --git a/bind/genobjc.go b/bind/genobjc.go
index 219d5e0..d743c0e 100644
--- a/bind/genobjc.go
+++ b/bind/genobjc.go
@@ -982,7 +982,7 @@
case types.Bool, types.UntypedBool:
return "BOOL"
case types.Int:
- return "int"
+ return "long"
case types.Int8:
return "int8_t"
case types.Int16:
diff --git a/bind/testdata/basictypes.objc.h.golden b/bind/testdata/basictypes.objc.h.golden
index 637abc6..58b18e4 100644
--- a/bind/testdata/basictypes.objc.h.golden
+++ b/bind/testdata/basictypes.objc.h.golden
@@ -23,8 +23,8 @@
FOUNDATION_EXPORT BOOL GoBasictypesError(NSError** error);
-FOUNDATION_EXPORT BOOL GoBasictypesErrorPair(int* ret0_, NSError** error);
+FOUNDATION_EXPORT BOOL GoBasictypesErrorPair(long* ret0_, NSError** error);
-FOUNDATION_EXPORT void GoBasictypesInts(int8_t x, int16_t y, int32_t z, int64_t t, int u);
+FOUNDATION_EXPORT void GoBasictypesInts(int8_t x, int16_t y, int32_t z, int64_t t, long u);
#endif
diff --git a/bind/testdata/basictypes.objc.m.golden b/bind/testdata/basictypes.objc.m.golden
index b57aabd..2f8bff7 100644
--- a/bind/testdata/basictypes.objc.m.golden
+++ b/bind/testdata/basictypes.objc.m.golden
@@ -52,9 +52,9 @@
return (_error == nil);
}
-BOOL GoBasictypesErrorPair(int* ret0_, NSError** error) {
+BOOL GoBasictypesErrorPair(long* ret0_, NSError** error) {
struct proxybasictypes__ErrorPair_return res = proxybasictypes__ErrorPair();
- int _ret0_ = (int)res.r0;
+ long _ret0_ = (long)res.r0;
GoUniverseerror* _error = nil;
GoSeqRef* _error_ref = go_seq_from_refnum(res.r1);
if (_error_ref != NULL) {
@@ -70,7 +70,7 @@
return (_error == nil);
}
-void GoBasictypesInts(int8_t x, int16_t y, int32_t z, int64_t t, int u) {
+void GoBasictypesInts(int8_t x, int16_t y, int32_t z, int64_t t, long u) {
int8_t _x = (int8_t)x;
int16_t _y = (int16_t)y;
int32_t _z = (int32_t)z;
diff --git a/bind/testdata/issue10788.objc.h.golden b/bind/testdata/issue10788.objc.h.golden
index f93df41..7ef26c0 100644
--- a/bind/testdata/issue10788.objc.h.golden
+++ b/bind/testdata/issue10788.objc.h.golden
@@ -24,7 +24,7 @@
@protocol GoIssue10788TestInterface
- (void)doSomeWork:(GoIssue10788TestStruct*)s;
-- (void)multipleUnnamedParams:(int)p0 p1:(NSString*)p1 p2:(int64_t)p2;
+- (void)multipleUnnamedParams:(long)p0 p1:(NSString*)p1 p2:(int64_t)p2;
@end
@class GoIssue10788TestInterface;
@@ -35,7 +35,7 @@
- (id)initWithRef:(id)ref;
- (void)doSomeWork:(GoIssue10788TestStruct*)s;
-- (void)multipleUnnamedParams:(int)p0 p1:(NSString*)p1 p2:(int64_t)p2;
+- (void)multipleUnnamedParams:(long)p0 p1:(NSString*)p1 p2:(int64_t)p2;
@end
#endif
diff --git a/bind/testdata/issue10788.objc.m.golden b/bind/testdata/issue10788.objc.m.golden
index 1253a00..dfdf093 100644
--- a/bind/testdata/issue10788.objc.m.golden
+++ b/bind/testdata/issue10788.objc.m.golden
@@ -56,7 +56,7 @@
proxyissue10788_TestInterface_DoSomeWork(refnum, _s);
}
-- (void)multipleUnnamedParams:(int)p0 p1:(NSString*)p1 p2:(int64_t)p2 {
+- (void)multipleUnnamedParams:(long)p0 p1:(NSString*)p1 p2:(int64_t)p2 {
int32_t refnum = go_seq_go_to_refnum(self._ref);
nint _p0 = (nint)p0;
nstring _p1 = go_seq_from_objc_string(p1);
@@ -86,7 +86,7 @@
void cproxyissue10788_TestInterface_MultipleUnnamedParams(int32_t refnum, nint p0, nstring p1, int64_t p2) {
@autoreleasepool {
GoIssue10788TestInterface* o = go_seq_objc_from_refnum(refnum);
- int _p0 = (int)p0;
+ long _p0 = (long)p0;
NSString *_p1 = go_seq_to_objc_string(p1);
int64_t _p2 = (int64_t)p2;
[o multipleUnnamedParams:_p0 p1:_p1 p2:_p2];
diff --git a/bind/testdata/vars.objc.h.golden b/bind/testdata/vars.objc.h.golden
index 33bd824..e1f45b8 100644
--- a/bind/testdata/vars.objc.h.golden
+++ b/bind/testdata/vars.objc.h.golden
@@ -42,8 +42,8 @@
+ (GoVarsS*) aStructPtr;
+ (void) setAStructPtr:(GoVarsS*)v;
-+ (int) anInt;
-+ (void) setAnInt:(int)v;
++ (long) anInt;
++ (void) setAnInt:(long)v;
+ (int16_t) anInt16;
+ (void) setAnInt16:(int16_t)v;
diff --git a/bind/testdata/vars.objc.m.golden b/bind/testdata/vars.objc.m.golden
index 4bff376..7331d71 100644
--- a/bind/testdata/vars.objc.m.golden
+++ b/bind/testdata/vars.objc.m.golden
@@ -114,14 +114,14 @@
return _r0;
}
-+ (void) setAnInt:(int)v {
++ (void) setAnInt:(long)v {
nint _v = (nint)v;
var_setvars_AnInt(_v);
}
-+ (int) anInt {
++ (long) anInt {
nint r0 = var_getvars_AnInt();
- int _r0 = (int)r0;
+ long _r0 = (long)r0;
return _r0;
}