[gambit-list] [BUG] six.infix test fails with latest commit on master

blake at reproduciblemedia.com blake at reproduciblemedia.com
Tue Aug 30 03:54:17 EDT 2022


Hi Gambiteers,

Just want to inform you of a bug that appears to have been introduced by recent 
extensions to the SIX reader.

Building the most recent commit e98430b7626286d536840d01e13537ad99e527f4 in an 
isolated guix container initiated with only the gcc-toolchain, and configured 
with:
 ./configure --enable-single-host --enable-march=native --enable-dynamic-clib
 --enable-targets=js --prefix=/home/scribble/state/work/gambit/install  

"make" succeeds without issue, but the following test fails during "make check"

>    *** FAILED 09-io/six.scm WITH EXIT CODE HI=1 LO=0
> "unit-tests/09-io/six.scm"@197.1: FAILED (check-equal? (str->obj "\\import 1") '((six.infix (six.import (six.literal 1))))) > GOT ((six.infix (six.import (six.identifier 1))))
> "unit-tests/09-io/six.scm"@198.1: FAILED (check-equal? (str->obj "\\import 1, 2") '((six.infix (six.import (|six.x,y| (six.literal 1) (six.literal 2)))))) GOT ((six.infix (six.import (|six.x,y| (six.identifier 1) (six.identifier 2)))))
> "unit-tests/09-io/six.scm"@199.1: FAILED (check-equal? (str->obj "\\import 1, 2;Z") '((six.infix (six.import (|six.x,y| (six.literal 1) (six.literal 2)))) Z)) GOT ((six.infix #!void) Z)
> "unit-tests/09-io/six.scm"@200.1: FAILED (check-equal? (str->obj "\\{ import 1 , 2 ; }") '((six.infix (six.compound (six.import (|six.x,y| (six.literal 1) (six.literal 2))))))) GOT #<datum-parsing-exception #2>
> "unit-tests/09-io/six.scm"@201.1: FAILED (check-equal? (str->obj "\\{ import 1 , 2 ; }Z") '((six.infix (six.compound (six.import (|six.x,y| (six.literal 1) (six.literal 2))))) Z)) GOT #<datum-parsing-exception #3>
> "unit-tests/09-io/six.scm"@203.1: FAILED (check-equal? (str->obj "\\from 0 import 1") '((six.infix (six.from-import (six.literal 0) (six.literal 1))))) GOT ((six.infix (six.from-import (six.identifier 0) (six.identifier 1))))
> "unit-tests/09-io/six.scm"@204.1: FAILED (check-equal? (str->obj "\\from 0 import 1, 2") '((six.infix (six.from-import (six.literal 0) (|six.x,y| (six.literal 1) (six.literal 2)))))) GOT ((six.infix (six.from-import (six.identifier 0) (|six.x,y| (six.identifier 1) (six.identifier 2)))))
> "unit-tests/09-io/six.scm"@205.1: FAILED (check-equal? (str->obj "\\from 0 import 1, 2;Z") '((six.infix (six.from-import (six.literal 0) (|six.x,y| (six.literal 1) (six.literal 2)))) Z)) GOT ((six.infix #!void) Z)
> "unit-tests/09-io/six.scm"@206.1: FAILED (check-equal? (str->obj "\\{ from 0 import 1, 2 ; }") '((six.infix (six.compound (six.from-import (six.literal 0) (|six.x,y| (six.literal 1) (six.literal 2))))))) GOT #<datum-parsing-exception #4>
> "unit-tests/09-io/six.scm"@207.1: FAILED (check-equal? (str->obj "\\{ from 0 import 1, 2 ; }Z") '((six.infix (six.compound (six.from-import (six.literal 0) (|six.x,y| (six.literal 1) (six.literal 2))))) Z)) GOT #<datum-parsing-exception #5>
> "unit-tests/09-io/six.scm"@209.1: FAILED (check-equal? (str->obj "\\from 0 import *") '((six.infix (six.from-import-* (six.literal 0))))) GOT ((six.infix (six.from-import-* (six.identifier 0))))
> "unit-tests/09-io/six.scm"@210.1: FAILED (check-equal? (str->obj "\\from 0 import *;Z") '((six.infix (six.from-import-* (six.literal 0))) Z)) GOT ((six.infix (six.from-import-* (six.identifier 0))))
> "unit-tests/09-io/six.scm"@211.1: FAILED (check-equal? (str->obj "\\{ from 0 import * ; }") '((six.infix (six.compound (six.from-import-* (six.literal 0)))))) GOT ((six.infix (six.from-import-* (six.identifier 0))))
> "unit-tests/09-io/six.scm"@212.1: FAILED (check-equal? (str->obj "\\{ from 0 import * ; }Z") '((six.infix (six.compound (six.from-import-* (six.literal 0)))) Z)) GOT ((six.infix (six.from-import-* (six.identifier 0))))
> [286|  1] 100% ################ 9.5s
> FAILED 1 UNIT TESTS OUT OF 287 (.3%)

After re-cloning and then reverting to commit 69fb3aa5a601524f2e88b522e3f14598e5d69625
(chosen because its the first in a series not mentioning SIX), everything builds 
and succeeds fine.

Happy hacking!
Blake



More information about the Gambit-list mailing list