gcc32 fix
authorClaus Gittinger <cg@exept.de>
Mon, 14 Mar 2016 17:04:58 +0100
changeset 19357 3e007f7f1969
parent 19356 5ca3989a13f0
child 19358 f9e7a37cffd9
gcc32 fix
ExternalLibraryFunction.st
--- a/ExternalLibraryFunction.st	Mon Mar 14 15:46:43 2016 +0100
+++ b/ExternalLibraryFunction.st	Mon Mar 14 17:04:58 2016 +0100
@@ -957,6 +957,10 @@
 	__int64__ longLongVal;
 #  else
 	struct ll { long lo; long hi; } longLongVal;
+#   ifndef __LO32
+#    define __LO32(ll) (ll.lo)
+#    define __HI32(ll) (ll.hi)
+#   endif
 #  endif
 # endif
     };
@@ -1771,7 +1775,7 @@
 # else
 #  ifdef VERBOSE
 	if (@global(Verbose) == true) {
-	    printf("return sint64: %lx%08lx\n", __returnValue.longLongVal.hi, __returnValue.longLongVal.lo);
+	    printf("return sint64: %lx%08lx\n", __HI32(__returnValue.longLongVal), __LO32(__returnValue.longLongVal));
 	}
 #  endif
 	RETURN ( __MKINT64(&__returnValue.longLongVal) );
@@ -1788,7 +1792,7 @@
 # else
 #  ifdef VERBOSE
 	if (@global(Verbose) == true) {
-	    printf("return sint64: %lx%08lx\n", __returnValue.longLongVal.hi, __returnValue.longLongVal.lo);
+	    printf("return sint64: %lx%08lx\n", __HI32(__returnValue.longLongVal), __LO32(__returnValue.longLongVal));
 	}
 #  endif
 	RETURN ( __MKUINT64(&__returnValue.longLongVal) );