On Wed, Nov 28, 2018 at 07:25:33PM +0100, Mario Domenech Goulart wrote:
> It looks like this patch (79cf7427, master) has broken "make
> bootstrap".  Log attached (using CHICKEN 5.0.0 as CHICKEN).

Right you are.  The reason is that lfa2 is trying to unbox the arguments
to {f32,f64}_vector_ref, which are not flonums but srfi-4 vector and
integer arguments.  The return value is a flonum.

Attached is a patch to avoid unboxing the argument to accessor functions.

Cheers,
Peter
From f7fa7d3655ce7b8587beaa63e6f671ae5b06c597 Mon Sep 17 00:00:00 2001
From: Peter Bex <pe...@more-magic.net>
Date: Wed, 28 Nov 2018 21:50:18 +0100
Subject: [PATCH] Do not float-unbox arguments to srfi-4 vector accessors

The arguments aren't flonums, only the return value is!
---
 lfa2.scm | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/lfa2.scm b/lfa2.scm
index dffaee6f..1fba207c 100644
--- a/lfa2.scm
+++ b/lfa2.scm
@@ -563,7 +563,10 @@
 		      (set! count (add1 count))
 		      (let ((n (make-node '##core#inline
 					  (list ub)
-					  (map walk/unbox subs))))
+					  (map (if (eq? type 'acc)
+						   walk
+						   walk/unbox)
+					       subs))))
 			(case type
 			  ((pred) n)
 			  (else (make-node '##core#box_float '()
-- 
2.11.0

Attachment: signature.asc
Description: PGP signature

_______________________________________________
Chicken-hackers mailing list
Chicken-hackers@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-hackers

Reply via email to