]> gitweb.factorcode.org Git - factor.git/commitdiff
Fix Linux/x86-64 signal handler problem
authorSlava Pestov <slava@factorcode.org>
Sun, 9 Dec 2007 04:26:35 +0000 (23:26 -0500)
committerSlava Pestov <slava@factorcode.org>
Sun, 9 Dec 2007 04:26:35 +0000 (23:26 -0500)
core/compiler/test/curry.factor
core/compiler/test/simple.factor
vm/os-linux-x86-64.h
vm/platform.h

index 307c8adcdb31952d4791923fb4a99a08664e825e..0e840154ca2d57232ed4dbea4809f9c2cba84071 100755 (executable)
@@ -50,7 +50,7 @@ IN: temporary
     global keys =
 ] unit-test
 
-[ 3 ] [ 1 2 [ curry [ 3 ] [ 4 ] if ] compile-1 ] unit-test
+[ 3 ] [ 1 [ 2 ] [ curry [ 3 ] [ 4 ] if ] compile-1 ] unit-test
 
 [ 3 ] [ t [ 3 [ ] curry 4 [ ] curry if ] compile-1 ] unit-test
 
index 594bb844a12a7d013af538298d6c7587595fcbd0..cc446dee23dd46898436ca63e7c3dd053e5bb1ac 100644 (file)
@@ -56,3 +56,8 @@ IN: temporary
 \ recursive compile
 
 [ ] [ t recursive ] unit-test
+
+! Make sure error reporting works
+
+[ [ dup ] compile-1 ] unit-test-fails
+[ [ drop ] compile-1 ] unit-test-fails
index 2bbae86f6e110d4ece2cbdc680cc5af048158444..911c2f1749340e008ef448ab38581a60f79e2d96 100644 (file)
@@ -1,2 +1,10 @@
+#include <ucontext.h>
+
+INLINE void *ucontext_stack_pointer(void *uap)
+{
+        ucontext_t *ucontext = (ucontext_t *)uap;
+        return (void *)ucontext->uc_mcontext.gregs[15];
+}
+
 #define UAP_PROGRAM_COUNTER(ucontext) \
        (((ucontext_t *)(ucontext))->uc_mcontext.gregs[16])
index f181c93e2c9ba7136a3f8789545c87dcd4090322..75228726a9c3c6816982974df06595235d41648f 100644 (file)
@@ -70,7 +70,6 @@
                        #elif defined(FACTOR_ARM)
                                #include "os-linux-arm.h"
                        #elif defined(FACTOR_AMD64)
-                               #include "os-unix-ucontext.h"
                                #include "os-linux-x86-64.h"
                        #else
                                #error "Unsupported Linux flavor"