w6c: forrange bind cap loud; drain widen gates keyed on type-eq (#55)
Two silent seams in one sweep. The for-range destructure silently dropped the 9th+ binding in both stages (bind arrays are sized 8); the cap now hard-stops per the DEFER_MAX/LOOP_MAX discipline (the shape is unreachable today -- every wide-tuple construction path already loud-stops). argtaggedwidensz, the drain-side SSoT for widened call args, still keyed "natural push" on slot-size equality while pushargsrev flipped to type equality with #55 -- a same-slot subset was classified widen by push, natural by drain (counts coincide today; a classification reader desyncs, the #48 shape). Both sides now share the wsame key; the widen-branch tag miss for a concrete source joins the task-2 loud-stop family (tagged subset sources keep t=0 -- their widentag is never read, the scratch store remaps). Lead 17 (enum fold-failure prev+1) DISPROVED: enumvalfold gates every member init in the checker and its fold set is op-for-op equal to cgen's enumevalmember, so the fallback only runs inside already-failing compiles.
This commit is contained in:
@@ -1,13 +1,13 @@
|
||||
package wwfixture;
|
||||
|
||||
def protocolversion: i32 = 1;
|
||||
def corpuscount: i32 = 1750;
|
||||
def corpuscount: i32 = 1751;
|
||||
def errorcount: i32 = 349;
|
||||
def compilecount: i32 = 21;
|
||||
def runcount: i32 = 209;
|
||||
def runexitcount: i32 = 1171;
|
||||
def nativecount: i32 = 3500;
|
||||
def corpushash: str = "d52fa0df91c89bf51bca70045a2dbf39d5012ac03bf687e231240dc1c5b3fc53";
|
||||
def runexitcount: i32 = 1172;
|
||||
def nativecount: i32 = 3502;
|
||||
def corpushash: str = "0d0401f0d80ca682b0872343a62db4f91c0ff4c68e71f97cd5358cf92faffebc";
|
||||
|
||||
type directive = enum i32 {
|
||||
ERROR = 0,
|
||||
|
||||
Reference in New Issue
Block a user