bugMIT/GNU Scheme - Bugs: bug #63507, Hygienic macro renaming loses...

 
 

bug #63507: Hygienic macro renaming loses original name in macro-expaneded output

Submitter:  Taylor R. Campbell <riastradh>
Submitted:  Sun 11 Dec 2022 12:25:43 PM UTC
   
 
Category:  runtime Severity:  2 - Minor
Priority:  5 - Normal Item Group:  Suboptimal behavior
Status:  Fixed Privacy:  Public
Assigned to:  cph Originator Name: 
Open/Closed:  Closed
Keywords: 
* Mandatory Fields

Add a New Comment Rich Markup
   

Sun 11 Dec 2022 12:25:43 PM UTC, original submission:  

(pp (syntax
     '(let ()
        (define-syntax foo
          (syntax-rules ()
            ((foo x)
             (let ((t x))
               t))))
        (foo 123))
     (nearest-repl/environment)))
(let ()
  (let ((|G3400| 123))
    |G3400|))

Expected something more like:

(let ()
  (let ((.t.9817324 123))
    .t.9817324))

even if we're not doing a clever minimal alpha-substitution that keeps the numbers small.

Taylor R. Campbell <riastradh>
Group Member

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach Files:
   
   
Comment:
   

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by cph (Updated the item)
  • -email is unavailable- added by riastradh (Submitted the item)
  •  

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

    Only logged-in users can vote.

     

    Follow 2 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2022-12-12 cph StatusNone Fixed
        Open/ClosedOpen Closed

    Back to the top

    Powered by Savane 3.13-4b48.
    Corresponding source code