wcc: wwstage checks call arity at desugarcallargs
cstage rejects `add(1,2,3)` and `add(4)` (too many / not enough arguments); wwstage ran no count check at this seam, so both built -- a stray arg pushed silently, a missing one read garbage (cs-reject/ww-accept build-verdict divergence). Surplus errs when params exhaust with args left; missing errs on a leftover regular param (a leftover TK_ELLIPSIS or FFI "..." is a legal zero-arg variadic tail). fn-VALUE callees still bail at decl==nil -- their whole typecheck, arity included, stays task #51.
This commit is contained in:
@@ -1,13 +1,13 @@
|
||||
package wwfixture;
|
||||
|
||||
def protocolversion: i32 = 1;
|
||||
def corpuscount: i32 = 1752;
|
||||
def errorcount: i32 = 349;
|
||||
def corpuscount: i32 = 1754;
|
||||
def errorcount: i32 = 351;
|
||||
def compilecount: i32 = 21;
|
||||
def runcount: i32 = 209;
|
||||
def runexitcount: i32 = 1173;
|
||||
def nativecount: i32 = 3504;
|
||||
def corpushash: str = "d3c7b6a94918a9c9af14df029ef0cdf6d976a3f1351d41ff9db9a69b753cb016";
|
||||
def nativecount: i32 = 3508;
|
||||
def corpushash: str = "67a119b41fd78b1f2900c096e5b5670e98935d2965573f67bb21ab817931dffa";
|
||||
|
||||
type directive = enum i32 {
|
||||
ERROR = 0,
|
||||
|
||||
Reference in New Issue
Block a user