> Repair pushed. The problem was related to the bytecode format, so I > had to bump the version number.
Ah ok. This makes sense because I occasionally could not reproduce the crash unless I forced a recompile. Sorry, I should have mentioned this initially. Thanks. > > Thanks! > > At Tue, 21 Jul 2015 13:27:14 -0400, Stephen Chang wrote: >> The previous example now works. Thanks. >> >> But here is a variation that still seg faults: >> >> file1.rkt: >> >> #lang racket >> (require (for-syntax syntax/parse)) >> (provide (rename-out [my-define define])) >> (define-syntax my-define >> (syntax-parser >> [(_ x:id e) >> ;; undef is unbound identifier >> #:with y (local-expand #'undef 'expression null) >> #'(void)])) >> >> ; (my-define X 1) produces: "undef: unbound identifier in module in: undef" >> >> file2.rkt >> >> #lang racket >> (require "file1.rkt") >> (define X 1) >> >> Running file2.rkt in drracket with the new expander crashes drracket with: >> >> SIGSEGV MAPERR si_code 1 fault on addr 0x20 >> Aborted >> >> On Mon, Jul 20, 2015 at 3:49 PM, Matthew Flatt <[email protected]> wrote: >> > I've just pushed a repair for this bug. Thanks for the report! >> > >> > >> > >> >> On Jul 20, 2015, at 12:47 PM, Stephen Chang <[email protected]> wrote: >> >> >> >> The following code produces a seg fault with the new expander (today's >> >> build) in the scenario described below: >> >> >> >> file1.rkt: >> >> >> >> #lang racket >> >> (require (for-syntax syntax/parse)) >> >> >> >> (define-syntax (define-constructor stx) >> >> (syntax-parse stx >> >> [(_ X:id) >> >> #'(define-syntax X >> >> (syntax-parser >> >> [(_ x (... ...)) #'(void x (... ...))]))])) >> >> >> >> (define-constructor C) >> >> >> >> (define-syntax define-alias >> >> (syntax-parser >> >> [(_ alias:id e) >> >> #:with e+ (local-expand #'e 'expression null) >> >> #'(define-syntax alias >> >> (syntax-parser [x:id #'e+]))])) >> >> >> >> (define-alias D (C 1)) >> >> >> >> file2.rkt: >> >> (require "file1.rkt") >> >> >> >> A few notes: >> >> - running file2.rkt in DrRacket with the new expander crashes drracket >> >> with the error: >> >> >> >> SIGSEGV MAPERR si_code 1 fault on addr (nil) >> >> Aborted >> >> >> >> - running file2.rkt with racket (new expander) produces no error >> >> - running file2.rkt produced no error with the old expander >> >> - running file1.rkt with either racket or drracket, new expander or >> >> old expander, produces no error >> >> >> >> I'm not completely caught up with the new expander threads so >> >> apologies in advance if someone has already raised this issue. >> >> >> >> -- >> >> You received this message because you are subscribed to the Google Groups >> "Racket Developers" group. >> >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected]. >> >> To post to this group, send email to [email protected]. >> >> To view this discussion on the web visit >> https://groups.google.com/d/msgid/racket-dev/CAFfiA1LDBwHox-1iP9UdDQOKSLMU-TbhU >> Vtbsd-TLrNNO0eB_g%40mail.gmail.com. >> >> For more options, visit https://groups.google.com/d/optout. >> >> -- You received this message because you are subscribed to the Google Groups "Racket Developers" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/racket-dev/CAFfiA1KPG2%2Bk68tBPXPEwcWow2EwW3eJHfE4gYd8bapxtFKGhA%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.
