Changeset 35325 in project


Ignore:
Timestamp:
03/24/18 18:42:53 (5 weeks ago)
Author:
kon
Message:

fix record-synch & friends object eval (in other forms?)

Location:
release/4/synch/trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • release/4/synch/trunk/synch.scm

    r35167 r35325  
    364364  (er-macro-transformer
    365365    (lambda (frm rnm cmp)
    366       ;
    367366      (##sys#check-syntax 'record-synch frm '(_ _ symbol . _))
    368       ;
    369       (let ((_synch (rnm 'synch)))
    370         (let (
    371           (?rec (cadr frm) )
    372           (?sym (caddr frm) )
    373           (?body (cdddr frm) ) )
    374           ;
    375           `(,_synch (,(record-mutex-name ?sym) ,?rec) ,@?body) ) ) ) ) )
     367      (let (
     368        (_let (rnm 'let))
     369        (_recvar (rnm 'recvar))
     370        (_synch (rnm 'synch)) )
     371        (let (
     372          (?rec (cadr frm))
     373          (?sym (caddr frm))
     374          (?body (cdddr frm)) )
     375          `(,_let ((,_recvar ,?rec))
     376            (,_synch (,(record-mutex-name ?sym) ,_recvar) ,@?body) ) ) ) ) ) )
    376377
    377378(define-syntax record-synch-lock
    378379  (er-macro-transformer
    379380    (lambda (frm rnm cmp)
    380       ;
    381381      (##sys#check-syntax 'record-synch-lock frm '(_ _ symbol . _))
    382       ;
    383       (let ((_synch-lock (rnm 'synch-lock)))
    384         (let (
    385           (?rec (cadr frm) )
    386           (?sym (caddr frm) )
    387           (?body (cdddr frm) ) )
    388           ;
    389           `(,_synch-lock (,(record-mutex-name ?sym) ,?rec) ,@?body) ) ) ) ) )
     382      (let (
     383        (_let (rnm 'let))
     384        (_recvar (rnm 'recvar))
     385        (_synch-lock (rnm 'synch-lock)) )
     386        (let (
     387          (?rec (cadr frm))
     388          (?sym (caddr frm))
     389          (?body (cdddr frm)) )
     390          `(,_let ((,_recvar ,?rec))
     391            (,_synch-lock (,(record-mutex-name ?sym) ,_recvar) ,@?body) ) ) ) ) ) )
    390392
    391393(define-syntax record-synch-unlock
    392394  (er-macro-transformer
    393395    (lambda (frm rnm cmp)
    394       ;
    395396      (##sys#check-syntax 'record-synch-unlock frm '(_ _ symbol . _))
    396       ;
    397       (let ((_synch-unlock (rnm 'synch-unlock)))
    398         (let (
    399           (?rec (cadr frm) )
    400           (?sym (caddr frm) )
    401           (?body (cdddr frm) ) )
    402           ;
    403           `(,_synch-unlock (,(record-mutex-name ?sym) ,?rec) ,@?body) ) ) ) ) )
     397      (let (
     398        (_let (rnm 'let))
     399        (_recvar (rnm 'recvar))
     400        (_synch-unlock (rnm 'synch-unlock)) )
     401        (let (
     402          (?rec (cadr frm))
     403          (?sym (caddr frm))
     404          (?body (cdddr frm)) )
     405          `(,_let ((,_recvar ,?rec))
     406            (,_synch-unlock (,(record-mutex-name ?sym) ,_recvar) ,@?body) ) ) ) ) ) )
    404407
    405408;;; Unprotected
     
    625628  (er-macro-transformer
    626629    (lambda (frm rnm cmp)
    627       ;
    628630      (##sys#check-syntax '%record-synch frm '(_ _ symbol . _))
    629       ;
    630       (let ((_%synch (rnm '%synch)))
    631         (let (
    632           (?rec (cadr frm) )
    633           (?sym (caddr frm) )
    634           (?body (cdddr frm) ) )
    635           ;
    636           `(,_%synch (,(record-mutex-name ?sym) ,?rec) ,@?body) ) ) ) ) )
     631      (let (
     632        (_let (rnm 'let))
     633        (_recvar (rnm 'recvar))
     634        (_%synch (rnm '%synch)) )
     635        (let (
     636          (?rec (cadr frm))
     637          (?sym (caddr frm))
     638          (?body (cdddr frm)) )
     639          `(,_let ((,_recvar ,?rec))
     640            (,_%synch (,(record-mutex-name ?sym) ,_recvar) ,@?body) ) ) ) ) ) )
    637641
    638642(define-syntax %record-synch-lock
    639643  (er-macro-transformer
    640644    (lambda (frm rnm cmp)
    641       ;
    642645      (##sys#check-syntax '%record-synch-lock frm '(_ _ symbol . _))
    643       ;
    644       (let ((_%synch-lock (rnm '%synch-lock)))
    645         (let (
    646           (?rec (cadr frm) )
    647           (?sym (caddr frm) )
    648           (?body (cdddr frm) ) )
    649           ;
    650           `(,_%synch-lock (,(record-mutex-name ?sym) ,?rec) ,@?body) ) ) ) ) )
     646      (let (
     647        (_let (rnm 'let))
     648        (_recvar (rnm 'recvar))
     649        (_%synch-lock (rnm '%synch-lock)) )
     650        (let (
     651          (?rec (cadr frm))
     652          (?sym (caddr frm))
     653          (?body (cdddr frm)) )
     654          `(,_let ((,_recvar ,?rec))
     655            (,_%synch-lock (,(record-mutex-name ?sym) ,_recvar) ,@?body) ) ) ) ) ) )
    651656
    652657(define-syntax %record-synch-unlock
    653658  (er-macro-transformer
    654659    (lambda (frm rnm cmp)
    655       ;
    656660      (##sys#check-syntax '%record-synch-unlock frm '(_ _ symbol . _))
    657       ;
    658       (let ((_%synch-unlock (rnm '%synch-unlock)))
    659         (let (
    660           (?rec (cadr frm) )
    661           (?sym (caddr frm) )
    662           (?body (cdddr frm) ) )
    663           ;
    664           `(,_%synch-unlock (,(record-mutex-name ?sym) ,?rec) ,@?body) ) ) ) ) )
     661      (let (
     662        (_let (rnm 'let))
     663        (_recvar (rnm 'recvar))
     664        (_%synch-unlock (rnm '%synch-unlock)) )
     665        (let (
     666          (?rec (cadr frm))
     667          (?sym (caddr frm))
     668          (?body (cdddr frm)) )
     669          `(,_let ((,_recvar ,?rec))
     670            (,_%synch-unlock (,(record-mutex-name ?sym) ,_recvar) ,@?body) ) ) ) ) ) )
    665671
    666672;;; Synch Object
     
    839845    (lambda (frm rnm cmp)
    840846      (##sys#check-syntax 'record/synch frm '(_ symbol _ . _))
    841       (let ((_synch (rnm 'synch)))
    842         (let ((?sym (cadr frm))
    843               (?rec (caddr frm))
    844               (?body (cdddr frm)))
    845           `(,_synch (,(record-mutex-name ?sym) ,?rec) ,@?body) ) ) ) ) )
     847      (let (
     848        (_let (rnm 'let))
     849        (_recvar (rnm 'recvar))
     850        (_synch (rnm 'synch)) )
     851        (let (
     852          (?sym (cadr frm))
     853          (?rec (caddr frm))
     854          (?body (cdddr frm)) )
     855          `(,_let ((,_recvar ,?rec))
     856            (,_synch (,(record-mutex-name ?sym) ,_recvar) ,@?body) ) ) ) ) ) )
    846857
    847858(define-syntax record-synch/lock
     
    849860    (lambda (frm rnm cmp)
    850861      (##sys#check-syntax 'record-synch/lock frm '(_ symbol _ . _))
    851       (let ((_synch/lock (rnm 'synch/lock)))
    852         (let ((?sym (cadr frm))
    853               (?rec (caddr frm))
    854               (?body (cdddr frm)))
    855           `(,_synch/lock (,(record-mutex-name ?sym) ,?rec) ,@?body) ) ) ) ) )
     862      (let (
     863        (_let (rnm 'let))
     864        (_recvar (rnm 'recvar))
     865        (_synch/lock (rnm 'synch/lock)) )
     866        (let (
     867          (?sym (cadr frm))
     868          (?rec (caddr frm))
     869          (?body (cdddr frm)) )
     870          `(,_let ((,_recvar ,?rec))
     871            (,_synch/lock (,(record-mutex-name ?sym) ,_recvar) ,@?body) ) ) ) ) ) )
    856872
    857873(define-syntax record-synch/unlock
     
    859875    (lambda (frm rnm cmp)
    860876      (##sys#check-syntax 'record-synch/unlock frm '(_ symbol _ . _))
    861       (let ((_synch/unlock (rnm 'synch/unlock)))
    862         (let ((?sym (cadr frm))
    863               (?rec (caddr frm))
    864               (?body (cdddr frm)))
    865           `(,_synch/unlock (,(record-mutex-name ?sym) ,?rec) ,@?body) ) ) ) ) )
     877      (let (
     878        (_let (rnm 'let))
     879        (_recvar (rnm 'recvar))
     880        (_synch/unlock (rnm 'synch/unlock)) )
     881        (let (
     882          (?sym (cadr frm))
     883          (?rec (caddr frm))
     884          (?body (cdddr frm)) )
     885          `(,_let ((,_recvar ,?rec))
     886            (,_synch/unlock (,(record-mutex-name ?sym) ,_recvar) ,@?body) ) ) ) ) ) )
    866887
    867888(define-syntax %call/synch %call-synch-transformer)
     
    898919    (lambda (frm rnm cmp)
    899920      (##sys#check-syntax '%record/synch frm '(_ symbol _ . _))
    900       (let ((_%synch (rnm '%synch)))
    901         (let ((?sym (cadr frm))
    902               (?rec (caddr frm))
    903               (?body (cdddr frm)))
    904           `(,_%synch (,(record-mutex-name ?sym) ,?rec) ,@?body) ) ) ) ) )
     921      (let (
     922        (_let (rnm 'let))
     923        (_recvar (rnm 'recvar))
     924        (_%synch (rnm '%synch)))
     925        (let (
     926          (?sym (cadr frm))
     927          (?rec (caddr frm))
     928          (?body (cdddr frm)) )
     929          `(,_let ((,_recvar ,?rec))
     930            (,_%synch (,(record-mutex-name ?sym) ,_recvar) ,@?body) ) ) ) ) ) )
    905931
    906932(define-syntax %record-synch/lock
     
    908934  (lambda (frm rnm cmp)
    909935    (##sys#check-syntax '%record-synch/lock frm '(_ symbol _ . _))
    910     (let ((_%synch/lock (rnm '%synch/lock)))
    911       (let ((?sym (cadr frm))
    912             (?rec (caddr frm))
    913             (?body (cdddr frm)))
    914         `(,_%synch/lock (,(record-mutex-name ?sym) ,?rec) ,@?body) ) ) ) ) )
     936    (let (
     937        (_let (rnm 'let))
     938        (_recvar (rnm 'recvar))
     939        (_%synch/lock (rnm '%synch/lock)) )
     940      (let (
     941        (?sym (cadr frm))
     942        (?rec (caddr frm))
     943        (?body (cdddr frm)) )
     944          `(,_let ((,_recvar ,?rec))
     945            (,_%synch/lock (,(record-mutex-name ?sym) ,_recvar) ,@?body) ) ) ) ) ) )
    915946
    916947(define-syntax %record-synch/unlock
     
    918949    (lambda (frm rnm cmp)
    919950      (##sys#check-syntax '%record-synch/unlock frm '(_ symbol _ . _))
    920       (let ((_%synch/unlock (rnm '%synch/unlock)))
    921         (let ((?sym (cadr frm))
    922               (?rec (caddr frm))
    923               (?body (cdddr frm)))
    924           `(,_%synch/unlock (,(record-mutex-name ?sym) ,?rec) ,@?body) ) ) ) ) )
     951      (let (
     952        (_let (rnm 'let))
     953        (_recvar (rnm 'recvar))
     954        (_%synch/unlock (rnm '%synch/unlock)) )
     955        (let (
     956          (?sym (cadr frm))
     957          (?rec (caddr frm))
     958          (?body (cdddr frm)) )
     959          `(,_let ((,_recvar ,?rec))
     960            (,_%synch/unlock (,(record-mutex-name ?sym) ,_recvar) ,@?body) ) ) ) ) ) )
    925961
    926962(define make-object/synch make-synch-with-object)
  • release/4/synch/trunk/synch.setup

    r35162 r35325  
    55(verify-extension-name 'synch)
    66
    7 (setup-shared-extension-module 'synch (extension-version "2.3.0")
     7(setup-shared-extension-module 'synch (extension-version "2.3.1")
    88  #:inline? #t
    99  #:types? #t
     
    1111    -optimize-level 3 -debug-level 2))
    1212
    13 (setup-shared-extension-module 'critical-region (extension-version "2.3.0")
     13(setup-shared-extension-module 'critical-region (extension-version "2.3.1")
    1414  #:inline? #t
    1515  #:types? #t
Note: See TracChangeset for help on using the changeset viewer.