www

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs

commit 2fc13d178dd0180d1e3d9b517cc81dd24126d83c
parent d0712ceee237ee1469f4b4c19d4adbaf0a176bc0
Author: Ryan Culpepper <ryanc@racket-lang.org>
Date:   Mon, 22 Oct 2012 17:26:33 -0400

macro-stepper: show errors in provide expansion
  closes PR 13018

original commit: 1137b444ad8393cd01faff18602e3facc3322c89

Diffstat:
Mcollects/macro-debugger/model/reductions.rkt | 17++++++++++-------
1 file changed, 10 insertions(+), 7 deletions(-)

diff --git a/collects/macro-debugger/model/reductions.rkt b/collects/macro-debugger/model/reductions.rkt @@ -222,12 +222,7 @@ [#:learn (list #'?var)])] [(Wrap p:provide (e1 e2 rs ?1 inners ?2)) - (let ([wrapped-inners - (for/list ([inner (in-list inners)]) - (match inner - [(Wrap deriv (e1 e2)) - (make local-expansion e1 e2 - #f e1 inner #f e2 #f)]))]) + (let ([wrapped-inners (map expr->local-action inners)]) (R [! ?1] [#:pattern ?form] [#:pass1] @@ -668,7 +663,9 @@ [#:do (DEBUG (printf "** module begin pass 2\n"))] [ModulePass ?forms pass2] ;; ignore pass3 for now: only provides - )])) + [#:new-local-context + [#:pattern ?form] + [LocalActions ?form (map expr->local-action (or pass3 null))]])])) ;; ModulePass : (list-of MBRule) -> RST (define (ModulePass mbrules) @@ -796,6 +793,12 @@ (when #f (apply error sym args))) +(define (expr->local-action d) + (match d + [(Wrap deriv (e1 e2)) + (make local-expansion e1 e2 + #f e1 d #f e2 #f)])) + ;; opaque-table ;; Weakly remembers assoc between opaque values and ;; actual syntax, so that actual can be substituted in