guile-commits
[Top][All Lists]
Advanced

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

[Guile-commits] 01/01: Fix backtraces with call-with-values during boots


From: Andy Wingo
Subject: [Guile-commits] 01/01: Fix backtraces with call-with-values during bootstrap
Date: Fri, 26 Apr 2019 05:34:11 -0400 (EDT)

wingo pushed a commit to branch lightening
in repository guile.

commit 4e5329676bd24c4747cb1d0ca53b1dc3ec9d5641
Author: Andy Wingo <address@hidden>
Date:   Wed Apr 24 18:14:54 2019 +0200

    Fix backtraces with call-with-values during bootstrap
    
    * libguile/programs.c (scm_i_program_name): Use scm_i_primitive_name for
      primitives.  No functional change though.
    * libguile/vm.c (DEFINE_BUILTIN): Mark builtins as primitives.
---
 libguile/programs.c | 4 ++--
 libguile/vm.c       | 6 ++++--
 2 files changed, 6 insertions(+), 4 deletions(-)

diff --git a/libguile/programs.c b/libguile/programs.c
index a5f540a..6750357 100644
--- a/libguile/programs.c
+++ b/libguile/programs.c
@@ -1,4 +1,4 @@
-/* Copyright 2001,2009-2014,2017-2018
+/* Copyright 2001,2009-2014,2017-2019
      Free Software Foundation, Inc.
 
    This file is part of Guile.
@@ -60,7 +60,7 @@ scm_i_program_name (SCM program)
   static SCM program_name = SCM_BOOL_F;
 
   if (SCM_PRIMITIVE_P (program))
-    return SCM_SUBR_NAME (program);
+    return scm_i_primitive_name (SCM_PROGRAM_CODE (program));
 
   if (scm_is_false (program_name) && scm_module_system_booted_p)
     program_name =
diff --git a/libguile/vm.c b/libguile/vm.c
index d6b76f9..e9e6ad0 100644
--- a/libguile/vm.c
+++ b/libguile/vm.c
@@ -1,4 +1,4 @@
-/* Copyright 2001,2009-2015,2017-2018
+/* Copyright 2001,2009-2015,2017-2019
      Free Software Foundation, Inc.
 
    This file is part of Guile.
@@ -484,7 +484,9 @@ define_vm_builtins (void)
   {                                                                     \
     size_t sz = sizeof (builtin##_code);                                \
     vm_builtin_##builtin##_code = instrumented_code (builtin##_code, sz); \
-    vm_builtin_##builtin = scm_i_make_program (vm_builtin_##builtin##_code); \
+    vm_builtin_##builtin =                                              \
+      scm_cell (scm_tc7_program | SCM_F_PROGRAM_IS_PRIMITIVE,           \
+                (scm_t_bits)vm_builtin_##builtin##_code);               \
   }
   FOR_EACH_VM_BUILTIN (DEFINE_BUILTIN);
 #undef INDEX_TO_NAME



reply via email to

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