[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Guile-commits] GNU Guile branch, stable-2.0, updated. v2.0.5-171-gf3b31

From: Ludovic Courtès
Subject: [Guile-commits] GNU Guile branch, stable-2.0, updated. v2.0.5-171-gf3b312a
Date: Tue, 19 Jun 2012 23:12:12 +0000

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU Guile".

The branch, stable-2.0 has been updated
       via  f3b312a19d70293d7a3407fc4ef479183edd7cca (commit)
      from  6b5e918e4f3cf011713e699c6af1c4e364bfae36 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit f3b312a19d70293d7a3407fc4ef479183edd7cca
Author: Ludovic Courtès <address@hidden>
Date:   Wed Jun 20 01:11:44 2012 +0200

    Fix cross-compilation of GOOPS-using code.
    Fixes <>.
    Reported by Bogdan A. Marinescu <address@hidden>.
    * module/oop/goops/dispatch.scm (compute-dispatch-procedure)[comp]:
      Wrap `compile' call in (with-target %host-type ...).


Summary of changes:
 module/oop/goops/dispatch.scm |   15 ++++++++++-----
 1 files changed, 10 insertions(+), 5 deletions(-)

diff --git a/module/oop/goops/dispatch.scm b/module/oop/goops/dispatch.scm
index b12ab15..de5359f 100644
--- a/module/oop/goops/dispatch.scm
+++ b/module/oop/goops/dispatch.scm
@@ -25,6 +25,7 @@
   #:use-module (oop goops)
   #:use-module (oop goops util)
   #:use-module (oop goops compile)
+  #:use-module (system base target)
   #:export (memoize-method!)
@@ -178,11 +179,15 @@
                  (acons gf gf-sym '()))))
   (define (comp exp vals)
-    (let ((p ((@ (system base compile) compile) exp
-              #:env *dispatch-module*
-              #:opts '(#:partial-eval? #f #:cse? #f))))
-      (apply p vals)))
+    ;; When cross-compiling Guile itself, the native Guile must generate
+    ;; code for the host.
+    (with-target %host-type
+      (lambda ()
+        (let ((p ((@ (system base compile) compile) exp
+                  #:env *dispatch-module*
+                  #:opts '(#:partial-eval? #f #:cse? #f))))
+          (apply p vals)))))
   ;; kick it.

GNU Guile

reply via email to

[Prev in Thread] Current Thread [Next in Thread]