I've temporarely turned on [1] strict args/param count mismatch errors.
Doesn't look too good. WRT return/results count mismatch, I think, this
should be a little less strict and allow 'void' function calls of
functions that return something [2]. But that's a different issue.
Failed Test Stat Wstat Total Fail Failed List of
Failed
------------------------------------------------------------------------
-------
t/compilers/imcc/syn/objects.t 1 256 11 1 9.09% 5
t/compilers/imcc/syn/pcc.t 1 256 21 1 4.76% 7
t/compilers/tge/grammar.t 1 256 1 1 100.00% 1
t/examples/streams.t 7 1792 12 7 58.33% 1-3 5-8
t/library/dumper.t 2 512 27 2 7.41% 12-13
t/library/parrotlib.t 1 256 6 1 16.67% 6
t/library/streams.t 8 2048 20 8 40.00% 9-11
13-16 19
t/library/test_builder_tester.t 1 256 12 8 66.67% 9-12
t/library/test_more.t 1 256 20 40 200.00% 1-20
t/pmc/coroutine.t 1 256 10 1 10.00% 2
t/pmc/mmd.t 1 256 30 1 3.33% 11
t/pmc/object-meths.t 1 256 33 1 3.03% 12
9 tests and 710 subtests skipped.
Failed 12/228 test scripts, 94.74% okay. 48/4858 subtests failed,
99.01% okay.
Punie is failing almost half of it's tests. I didn't check other
languages.
Fixes welcome
leo
[1]
--- src/inter_create.c (Revision 11421)
+++ src/inter_create.c (Arbeitskopie)
@@ -175,9 +175,9 @@
PARROT_ERRORS_off(interpreter, PARROT_ERRORS_ALL_FLAG);
/* undefined globals are errors by default */
PARROT_ERRORS_on(interpreter, PARROT_ERRORS_GLOBALS_FLAG);
+ PARROT_ERRORS_on(interpreter, PARROT_ERRORS_PARAM_COUNT_FLAG );
#if 0
/* TODO not yet - too many test failures */
- PARROT_ERRORS_on(interpreter, PARROT_ERRORS_PARAM_COUNT_FLAG );
PARROT_ERRORS_on(interpreter, PARROT_ERRORS_RESULT_COUNT_FLAG );
#endif
[2] generalized: a function could be allowed to return more
(positionals?) than get_results is using.