[gambit-list] port setting arguments with syntax-case enabled

Chris Vine chris at cvine.freeserve.co.uk
Sun Dec 7 06:10:04 EST 2014


The following works fine without the syntax-rules/syntax-case macro
expander enabled:

  (open-vector-pipe (list direction: 'input) 
                    (list direction: 'output))

However if the syntax-case expander is enabled, compilation generates
a warning that 'direction:' is undefined and runtime fails with:

  *** ERROR -- (Argument 1) VECTOR or port settings expected
  (open-vector-pipe '(#!unbound input) '(#!unbound output))

This also works without the syntax-case expander:

  (open-vector-pipe (list 'direction: 'input) 
                    (list 'direction: 'output))

but fails with the syntax-case expander enabled with a different error:

  *** ERROR -- (Argument 1) VECTOR or port settings expected
  (open-vector-pipe '(|direction:| input) '(|direction:| output))

I am using gambit-c 4.7.3.  Is there any workaround for this?

Chris



More information about the Gambit-list mailing list