<p dir="ltr">Will these be in 5.3.1?  Without this fix, the macro stepper is very broken.</p>
<p dir="ltr">Sam</p>
<div class="gmail_quote">On Oct 22, 2012 3:05 PM,  &lt;<a href="mailto:ryanc@racket-lang.org">ryanc@racket-lang.org</a>&gt; wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
ryanc has updated `master&#39; from f60d57a27f to 1137b444ad.<br>
  <a href="http://git.racket-lang.org/plt/f60d57a27f..1137b444ad" target="_blank">http://git.racket-lang.org/plt/f60d57a27f..1137b444ad</a><br>
<br>
=====[ 2 Commits ]======================================================<br>
Directory summary:<br>
  60.2% collects/macro-debugger/model/<br>
  39.7% collects/macro-debugger/<br>
<br>
~~~~~~~~~~<br>
<br>
5f15401 Ryan Culpepper &lt;<a href="mailto:ryanc@racket-lang.org">ryanc@racket-lang.org</a>&gt; 2012-10-22 17:09<br>
:<br>
| macro stepper: fix bug re taking over run button<br>
|   Closes PR 13019<br>
:<br>
  M collects/macro-debugger/tool.rkt | 9 ++++++---<br>
<br>
~~~~~~~~~~<br>
<br>
1137b44 Ryan Culpepper &lt;<a href="mailto:ryanc@racket-lang.org">ryanc@racket-lang.org</a>&gt; 2012-10-22 17:26<br>
:<br>
| macro-stepper: show errors in provide expansion<br>
|   closes PR 13018<br>
:<br>
  M collects/macro-debugger/model/reductions.rkt | 17 ++++++++++-------<br>
<br>
=====[ Overall Diff ]===================================================<br>
<br>
collects/macro-debugger/model/reductions.rkt<br>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~<br>
--- OLD/collects/macro-debugger/model/reductions.rkt<br>
+++ NEW/collects/macro-debugger/model/reductions.rkt<br>
@@ -222,12 +222,7 @@<br>
         [#:learn (list #&#39;?var)])]<br>
<br>
     [(Wrap p:provide (e1 e2 rs ?1 inners ?2))<br>
-     (let ([wrapped-inners<br>
-            (for/list ([inner (in-list inners)])<br>
-              (match inner<br>
-                [(Wrap deriv (e1 e2))<br>
-                 (make local-expansion e1 e2<br>
-                       #f e1 inner #f e2 #f)]))])<br>
+     (let ([wrapped-inners (map expr-&gt;local-action inners)])<br>
        (R [! ?1]<br>
           [#:pattern ?form]<br>
           [#:pass1]<br>
@@ -668,7 +663,9 @@<br>
         [#:do (DEBUG (printf &quot;** module begin pass 2\n&quot;))]<br>
         [ModulePass ?forms pass2]<br>
         ;; ignore pass3 for now: only provides<br>
-        )]))<br>
+        [#:new-local-context<br>
+         [#:pattern ?form]<br>
+         [LocalActions ?form (map expr-&gt;local-action (or pass3 null))]])]))<br>
<br>
 ;; ModulePass : (list-of MBRule) -&gt; RST<br>
 (define (ModulePass mbrules)<br>
@@ -796,6 +793,12 @@<br>
   (when #f<br>
     (apply error sym args)))<br>
<br>
+(define (expr-&gt;local-action d)<br>
+  (match d<br>
+    [(Wrap deriv (e1 e2))<br>
+     (make local-expansion e1 e2<br>
+           #f e1 d #f e2 #f)]))<br>
+<br>
 ;; opaque-table<br>
 ;; Weakly remembers assoc between opaque values and<br>
 ;; actual syntax, so that actual can be substituted in<br>
<br>
collects/macro-debugger/tool.rkt<br>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~<br>
--- OLD/collects/macro-debugger/tool.rkt<br>
+++ NEW/collects/macro-debugger/tool.rkt<br>
@@ -269,8 +269,12 @@<br>
             (set! user-custodian (current-custodian)))<br>
<br>
           (define (uncaught-exception-raised) ;; =user=<br>
-            ;; formerly shut down user custodian<br>
-            (void))<br>
+            (set! normal-termination? #t)<br>
+            (parameterize ([current-eventspace drs-eventspace])<br>
+              (queue-callback<br>
+               (λ ()<br>
+                  (cleanup)<br>
+                  (custodian-shutdown-all user-custodian)))))<br>
           (define (show-error-report/tab) ;; =drs=<br>
             (send the-tab turn-on-error-report)<br>
             (send (send the-tab get-error-report-text) scroll-to-position 0)<br>
@@ -294,7 +298,6 @@<br>
               (parameterize ([current-eventspace drs-eventspace])<br>
                 (queue-callback<br>
                  (λ ()<br>
-                    (send the-tab syncheck:clear-highlighting)<br>
                     (cleanup)<br>
                     (custodian-shutdown-all user-custodian))))))<br>
<br>
</blockquote></div>