From 19f38a38fde7da5fbcf29d0ebc4574e993210110 Mon Sep 17 00:00:00 2001 From: Andy Wingo Date: Wed, 28 Apr 2021 22:04:37 +0200 Subject: [PATCH] Fix duplicates handlers for interfaces that use interfaces * module/ice-9/boot-9.scm (duplicate-handlers): Use module-variable instead of module-local-variable in the warn-override-core, first, and last handlers. Fixes #47084 mostly, though relative to pre-3.0 there is still a difference in that a module needs to explicitly declare which bindings are intended as replacements -- a binding being a replacement is a property of the module in 3.0, rather than the variable as was the case before 3.0. --- module/ice-9/boot-9.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/module/ice-9/boot-9.scm b/module/ice-9/boot-9.scm index 165fa2590..251fedaa4 100644 --- a/module/ice-9/boot-9.scm +++ b/module/ice-9/boot-9.scm @@ -4152,13 +4152,13 @@ but it fails to load." (module-name module) (module-name int2) name) - (module-local-variable int2 name)))) + (module-variable int2 name)))) (define (first module name int1 val1 int2 val2 var val) - (or var (module-local-variable int1 name))) + (or var (module-variable int1 name))) (define (last module name int1 val1 int2 val2 var val) - (module-local-variable int2 name)) + (module-variable int2 name)) (define (noop module name int1 val1 int2 val2 var val) #f)