AbstractOperatingSystem.st
changeset 18303 3168be747a94
parent 18277 8c839dd755f4
child 18304 424139e100b2
child 18356 1312e3a2100b
--- a/AbstractOperatingSystem.st	Tue Apr 28 23:18:21 2015 +0200
+++ b/AbstractOperatingSystem.st	Tue Apr 28 23:22:13 2015 +0200
@@ -3474,12 +3474,21 @@
      returning an exit-code to the parent unix process."
 
 %{  /* NOCONTEXT */
+#ifdef __SCHTEAM__
+    int code = 1;
+
+    if (exitCode.isSmallInteger()) {
+	code = exitCode.intValue();
+    }
+    STMain.mainExit(code);
+#else
     int code = 1;
 
     if (__isSmallInteger(exitCode)) {
 	code = __intVal(exitCode);
     }
     __mainExit(code);
+#endif
 %}
     "OperatingSystem exit:1 - don't evaluate this"
 !
@@ -3495,7 +3504,10 @@
     extern void abort();
 
     abort();
-%}
+%}.
+    "/ fall back for systems without primitive C code
+    self exit:1
+
     "
      OperatingSystem exitWithCoreDump - don't evaluate this
     "
@@ -7728,11 +7740,11 @@
 !AbstractOperatingSystem class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libbasic/AbstractOperatingSystem.st,v 1.298 2015-04-24 08:12:43 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libbasic/AbstractOperatingSystem.st,v 1.299 2015-04-28 21:22:13 cg Exp $'
 !
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libbasic/AbstractOperatingSystem.st,v 1.298 2015-04-24 08:12:43 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libbasic/AbstractOperatingSystem.st,v 1.299 2015-04-28 21:22:13 cg Exp $'
 ! !