Changeset 37559 in project


Ignore:
Timestamp:
04/24/19 17:01:01 (5 months ago)
Author:
Kon Lovett
Message:

fix record-variant print issue by hardcoding export identifier (boo)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • release/5/mailbox/trunk/mailbox.scm

    r37282 r37559  
    101101            (name (if (pair? name-spec) (car name-spec) name-spec))
    102102            (t (if (pair? name-spec) (cadr name-spec) name-spec))
     103            ;FIXME (current-module) is #f
     104            (module-name 'mailbox)
     105            (struct-name
     106              (string->symbol
     107                (string-append (symbol->string module-name) "#" (symbol->string t))))
    103108            (variant? (lambda (type) (any (lambda (x) (c x (r type)))
    104109                                          (caddr form))))
     
    127132              `(,%define ,conser
    128133                         (##sys#make-structure
    129                           ',t
     134                          ',struct-name
    130135                          ,@(map (lambda (sname)
    131136                                   (if (memq sname vars)
     
    134139                                 slotnames)))
    135140              `(,%begin))
    136          (,%define (,pred ,x) (##sys#structure? ,x ',t))
     141         (,%define (,pred ,x) (##sys#structure? ,x ',struct-name))
    137142         ,(if checker
    138143              `(,%define (,checker ,x)
    139                          (##core#check (##sys#check-structure ,x ',t)))
     144                         (##core#check (##sys#check-structure ,x ',struct-name)))
    140145              `(,%begin))
    141146         ,@(let loop ([slots slots] [i 1])
     
    149154                                              `(,%begin)
    150155                                              `(##core#check
    151                                                 (##sys#check-structure ,x ',t)))
     156                                                (##sys#check-structure ,x ',struct-name)))
    152157                                         ,(if unsafe?
    153158                                              `(##sys#slot ,x ,i)
     
    158163                                            `(,%begin)
    159164                                            `(##core#check
    160                                               (##sys#check-structure ,x ',t)))
     165                                              (##sys#check-structure ,x ',struct-name)))
    161166                                       ,(if unsafe?
    162167                                            `(##sys#setslot ,x ,i ,y)
Note: See TracChangeset for help on using the changeset viewer.