Skip to content

C RVM fails to executes benchmarks properly with -f+ flat-closure #146

Description

@chouettevan

When using the C RVM with -f+ flat-closure, some benchmarks fail to execute correctly

Steps to reproduce

  1. clone the latest version of ribbit
  2. once in src, run HOST=c TEST_TAGS=bench TEST_FEATURES='-f+ flat-closure' make check

Expected behavior

The checks succeed, showing that ribbit is working correctly

Acutal behavior

make[1]: Entering directory '/tmp/ribbit/src/host/c'
Running tests with these options:
 - Host: c
 - Ribbit Compiler: ./rsc-gsc.exe
 - Host Compiler: 
 - Tags: bench
 - Options:
  1. (no option)
  2. '-f+ flat-closure'
Printed numbers are related to the current option being tested from the list above. Tests themselves can be run with different libraries causing numbers to appear multiple times.

-------------------- tests/05-benchmarks/ack.scm : \c
1\c
2\c
✅
-------------------- tests/05-benchmarks/array1.scm : \c
1\c
2\c
✅
-------------------- tests/05-benchmarks/boyer.scm : \c
1\c
2\c
✅
-------------------- tests/05-benchmarks/browse.scm : \c
1\c
2\c
❌
>>>>>> [run: '-l define-macro -l r4rs' features: '-f+ flat-closure' input: '' argv: '']
>>>>>> Error during test execution (see .tests/browse.scm.0.err)
>>>>>> Compile with : './rsc-gsc.exe -t c -l define-macro -l r4rs -f+ flat-closure -o .tests/browse.scm.c tests/05-benchmarks/browse.scm'
>>>>>> See error below.
*** Function called with an unexpected number of arguments
-> Number of expected argument by the function: 35075858044592
-> Number of applied argument by the caller: 1

-------------------- tests/05-benchmarks/cpstak.scm : \c
1\c
2\c
✅
-------------------- tests/05-benchmarks/ctak.scm : \c
1\c
2\c
✅
-------------------- tests/05-benchmarks/deriv.scm : \c
1\c
2\c
✅
-------------------- tests/05-benchmarks/destruc.scm : \c
1\c
2\c
❌
>>>>>> [run: '-l define-macro -l r4rs' features: '-f+ flat-closure' input: '' argv: '']
>>>>>> Error during test execution (see .tests/destruc.scm.0.err)
>>>>>> Compile with : './rsc-gsc.exe -t c -l define-macro -l r4rs -f+ flat-closure -o .tests/destruc.scm.c tests/05-benchmarks/destruc.scm'
>>>>>> See error below.
*** Function called with an unexpected number of arguments
-> Number of expected argument by the function: 35010415179702
-> Number of applied argument by the caller: 2

-------------------- tests/05-benchmarks/diviter.scm : \c
1\c
2\c
✅
-------------------- tests/05-benchmarks/divrec.scm : \c
1\c
2\c
✅
-------------------- tests/05-benchmarks/earley.scm : \c
1\c
2\c
❌
>>>>>> [run: '-l define-macro -l r4rs' features: '-f+ flat-closure' input: '' argv: '']
>>>>>> Error during test execution (see .tests/earley.scm.0.err)
>>>>>> Compile with : './rsc-gsc.exe -t c -l define-macro -l r4rs -f+ flat-closure -o .tests/earley.scm.c tests/05-benchmarks/earley.scm'
>>>>>> See error below.
*** Function called with an unexpected number of arguments
-> Number of expected argument by the function: 34968404495036
-> Number of applied argument by the caller: 2

-------------------- tests/05-benchmarks/equal.scm : \c
1\c
2\c
✅
-------------------- tests/05-benchmarks/fibc.scm : \c
1\c
2\c
✅
-------------------- tests/05-benchmarks/fib.scm : \c
1\c
2\c
✅
-------------------- tests/05-benchmarks/gcbench.scm : \c
1\c
2\c
✅
-------------------- tests/05-benchmarks/graphs.scm : \c
1\c
2\c
❌
>>>>>> [run: '-l define-macro -l r4rs' features: '-f+ flat-closure' input: '' argv: '']
>>>>>> Error during test execution (see .tests/graphs.scm.0.err)
>>>>>> Compile with : './rsc-gsc.exe -t c -l define-macro -l r4rs -f+ flat-closure -o .tests/graphs.scm.c tests/05-benchmarks/graphs.scm'
>>>>>> See error below.
*** Function called with an unexpected number of arguments
-> Number of expected argument by the function: 35132028060512
-> Number of applied argument by the caller: 5

-------------------- tests/05-benchmarks/lattice.scm : \c
1\c
2\c
✅
-------------------- tests/05-benchmarks/matrix.scm : \c
1\c
2\c
✅
-------------------- tests/05-benchmarks/mazefun.scm : \c
1\c
2\c
✅
-------------------- tests/05-benchmarks/maze.scm : \c
1\c
2\c
❌
>>>>>> [run: '-l define-macro -l r4rs' features: '-f+ flat-closure' input: '' argv: '']
>>>>>> Error during test execution (see .tests/maze.scm.0.err)
>>>>>> Compile with : './rsc-gsc.exe -t c -l define-macro -l r4rs -f+ flat-closure -o .tests/maze.scm.c tests/05-benchmarks/maze.scm'
>>>>>> See error below.
*** Function called with an unexpected number of arguments
-> Number of expected argument by the function: 35032303240974
-> Number of applied argument by the caller: 2

-------------------- tests/05-benchmarks/mperm.scm : \c
1\c
2\c
❌
>>>>>> [run: '-l define-macro -l r4rs' features: '-f+ flat-closure' input: '' argv: '']
>>>>>> Error during test execution (see .tests/mperm.scm.0.err)
>>>>>> Compile with : './rsc-gsc.exe -t c -l define-macro -l r4rs -f+ flat-closure -o .tests/mperm.scm.c tests/05-benchmarks/mperm.scm'
>>>>>> See error below.
*** Function called with an unexpected number of arguments
-> Number of expected argument by the function: 35101641875738
-> Number of applied argument by the caller: 2

-------------------- tests/05-benchmarks/nboyer.scm : \c
1\c
2\c
❌
>>>>>> [run: '-l define-macro -l r4rs' features: '-f+ flat-closure' input: '' argv: '']
>>>>>> Error during test execution (see .tests/nboyer.scm.0.err)
>>>>>> Compile with : './rsc-gsc.exe -t c -l define-macro -l r4rs -f+ flat-closure -o .tests/nboyer.scm.c tests/05-benchmarks/nboyer.scm'
>>>>>> See error below.
*** Function called with an unexpected number of arguments
-> Number of expected argument by the function: 34935094005882
-> Number of applied argument by the caller: 2

-------------------- tests/05-benchmarks/nqueens.scm : \c
1\c
2\c
✅
-------------------- tests/05-benchmarks/ntakl.scm : \c
1\c
2\c
✅
-------------------- tests/05-benchmarks/paraffins.scm : \c
1\c
2\c
✅
-------------------- tests/05-benchmarks/peval.scm : \c
1\c
2\c
✅
-------------------- tests/05-benchmarks/primes.scm : \c
1\c
2\c
✅
-------------------- tests/05-benchmarks/puzzle.scm : \c
1\c

Some tests pass while others fail to execute properly. Note that the output was truncated for brevity

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions