{"abstract":"A resumed reference uses point-count equality as lifetime validity.","category":"Borrow checking","checks":21,"contract":"Validate static generator suspension descriptors. Live borrowed stack origins must be stored in the frame; movable frames cannot retain self references; pinned self references require pinned projection; a saved unique loan cannot have external aliases; suspension-disallowed guards cannot cross yield; resumed references must survive every resume point; cancellation drop order releases borrowers before owners; references returned by a completed generator cannot target its frame; loans killed before yield must not be saved; mutually exclusive variants require variant-specific frame loans. Input is a fully explicit descriptor of the stated toy IR. Return rule identifiers in declaration order; absent optional obligations use the provided neutral defaults. No rule is an assertion about a production language.","evaluation_group":"s3-borrow-checking-suspension-borrows","failed_approach":"The partial repair uses if len(d['resume'])>len(d['valid']): errors.append('resume-lifetime'), which still violates the stipulated analysis contract.","family":"s3-borrow-checking-suspension-borrows-resume-lifetime","id":"FA-43216","implementations":{"attempt":{"sha256":"770b8cda8774fb6bb5f46b7c4e896721481989bd359cce265288a21232e4d11d","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(d):\n    errors=[]\n    if not set(d['live_origins'])<=set(d['frame_slots']): errors.append('frame-promotion')\n    if d['movable'] and bool(d['self_refs']): errors.append('self-move')\n    if not set(d['self_refs'])<=set(d['pinned']): errors.append('pin-projection')\n    if bool(set(d['unique_saved'])&set(d['external_aliases'])): errors.append('suspended-unique-alias')\n    if bool(set(d['guards'])&set(d['suspend_disallowed'])): errors.append('guard-yield')\n    if len(d['resume'])>len(d['valid']): errors.append('resume-lifetime')\n    if any(d['drop_order'].index(b)>d['drop_order'].index(o) for b,o in d['dependencies']): errors.append('cancel-drop-order')\n    if d['completed'] and bool(set(d['returned'])&set(d['frame_slots'])): errors.append('completed-frame-return')\n    if bool(set(d['saved'])&set(d['killed'])): errors.append('dead-loan-spill')\n    if any(v!=d['active_variant'] and bool(set(ls)&set(d['common_loans'])) for v,ls in d['variant_loans'].items()): errors.append('variant-separation')\n    return errors\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nbase={'live_origins': [], 'frame_slots': [], 'self_refs': [], 'movable': False, 'pinned': [], 'unique_saved': [], 'external_aliases': [], 'guards': [], 'suspend_disallowed': [], 'resume': [], 'valid': [], 'drop_order': [], 'dependencies': [], 'returned': [], 'completed': False, 'saved': [], 'killed': [], 'variant_loans': {}, 'active_variant': None, 'common_loans': []}\ncheck('well formed empty obligations',solve(base),[])\ncheck('frame-promotion regression 0', solve(dict(base, **({'live_origins':['a','b'],'frame_slots':['a']}))), ['frame-promotion'])\ncheck('frame-promotion regression 1', solve(dict(base, **({'live_origins':['a',N],'frame_slots':['a']}))), ['frame-promotion'])\ncheck('self-move regression 0', solve(dict(base, **({'movable':True,'self_refs':['r'],'pinned':['r']}))), ['self-move'])\ncheck('self-move regression 1', solve(dict(base, **({'movable':True,'self_refs':[N],'pinned':[N]}))), ['self-move'])\ncheck('pin-projection regression 0', solve(dict(base, **({'self_refs':['a','b'],'pinned':['a']}))), ['pin-projection'])\ncheck('pin-projection regression 1', solve(dict(base, **({'self_refs':[N],'pinned':[N+1]}))), ['pin-projection'])\ncheck('suspended-unique-alias regression 0', solve(dict(base, **({'unique_saved':['a'],'external_aliases':['a']}))), ['suspended-unique-alias'])\ncheck('suspended-unique-alias regression 1', solve(dict(base, **({'unique_saved':[N],'external_aliases':[N]}))), ['suspended-unique-alias'])\ncheck('guard-yield regression 0', solve(dict(base, **({'guards':['a','b'],'suspend_disallowed':['b']}))), ['guard-yield'])\ncheck('guard-yield regression 1', solve(dict(base, **({'guards':['a',N],'suspend_disallowed':[N]}))), ['guard-yield'])\ncheck('resume-lifetime regression 0', solve(dict(base, **({'resume':[N],'valid':[N+1]}))), ['resume-lifetime'])\ncheck('resume-lifetime regression 1', solve(dict(base, **({'resume':[N,N+1],'valid':[N+1,N+2]}))), ['resume-lifetime'])\ncheck('cancel-drop-order regression 0', solve(dict(base, **({'drop_order':['o','b'],'dependencies':[('b','o')]}))), ['cancel-drop-order'])\ncheck('cancel-drop-order regression 1', solve(dict(base, **({'drop_order':['x','o','b'],'dependencies':[('b','o')]}))), ['cancel-drop-order'])\ncheck('completed-frame-return regression 0', solve(dict(base, **({'completed':True,'returned':['x','r'],'frame_slots':['r']}))), ['completed-frame-return'])\ncheck('completed-frame-return regression 1', solve(dict(base, **({'completed':True,'returned':['x',N],'frame_slots':[N]}))), ['completed-frame-return'])\ncheck('dead-loan-spill regression 0', solve(dict(base, **({'saved':['a','b'],'killed':['b']}))), ['dead-loan-spill'])\ncheck('dead-loan-spill regression 1', solve(dict(base, **({'saved':[N,N+1],'killed':[N+1]}))), ['dead-loan-spill'])\ncheck('variant-separation regression 0', solve(dict(base, **({'active_variant':'a','variant_loans':{'b':['r']},'common_loans':['r']}))), ['variant-separation'])\ncheck('variant-separation regression 1', solve(dict(base, **({'active_variant':N,'variant_loans':{N+1:['r']},'common_loans':['r']}))), ['variant-separation'])\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"},"broken":{"sha256":"6c4e283d8f5b109f0313ba582bb32b9e36362c132018898da7e94053d1d1d19f","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(d):\n    errors=[]\n    if not set(d['live_origins'])<=set(d['frame_slots']): errors.append('frame-promotion')\n    if d['movable'] and bool(d['self_refs']): errors.append('self-move')\n    if not set(d['self_refs'])<=set(d['pinned']): errors.append('pin-projection')\n    if bool(set(d['unique_saved'])&set(d['external_aliases'])): errors.append('suspended-unique-alias')\n    if bool(set(d['guards'])&set(d['suspend_disallowed'])): errors.append('guard-yield')\n    if False: errors.append('resume-lifetime')\n    if any(d['drop_order'].index(b)>d['drop_order'].index(o) for b,o in d['dependencies']): errors.append('cancel-drop-order')\n    if d['completed'] and bool(set(d['returned'])&set(d['frame_slots'])): errors.append('completed-frame-return')\n    if bool(set(d['saved'])&set(d['killed'])): errors.append('dead-loan-spill')\n    if any(v!=d['active_variant'] and bool(set(ls)&set(d['common_loans'])) for v,ls in d['variant_loans'].items()): errors.append('variant-separation')\n    return errors\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nbase={'live_origins': [], 'frame_slots': [], 'self_refs': [], 'movable': False, 'pinned': [], 'unique_saved': [], 'external_aliases': [], 'guards': [], 'suspend_disallowed': [], 'resume': [], 'valid': [], 'drop_order': [], 'dependencies': [], 'returned': [], 'completed': False, 'saved': [], 'killed': [], 'variant_loans': {}, 'active_variant': None, 'common_loans': []}\ncheck('well formed empty obligations',solve(base),[])\ncheck('frame-promotion regression 0', solve(dict(base, **({'live_origins':['a','b'],'frame_slots':['a']}))), ['frame-promotion'])\ncheck('frame-promotion regression 1', solve(dict(base, **({'live_origins':['a',N],'frame_slots':['a']}))), ['frame-promotion'])\ncheck('self-move regression 0', solve(dict(base, **({'movable':True,'self_refs':['r'],'pinned':['r']}))), ['self-move'])\ncheck('self-move regression 1', solve(dict(base, **({'movable':True,'self_refs':[N],'pinned':[N]}))), ['self-move'])\ncheck('pin-projection regression 0', solve(dict(base, **({'self_refs':['a','b'],'pinned':['a']}))), ['pin-projection'])\ncheck('pin-projection regression 1', solve(dict(base, **({'self_refs':[N],'pinned':[N+1]}))), ['pin-projection'])\ncheck('suspended-unique-alias regression 0', solve(dict(base, **({'unique_saved':['a'],'external_aliases':['a']}))), ['suspended-unique-alias'])\ncheck('suspended-unique-alias regression 1', solve(dict(base, **({'unique_saved':[N],'external_aliases':[N]}))), ['suspended-unique-alias'])\ncheck('guard-yield regression 0', solve(dict(base, **({'guards':['a','b'],'suspend_disallowed':['b']}))), ['guard-yield'])\ncheck('guard-yield regression 1', solve(dict(base, **({'guards':['a',N],'suspend_disallowed':[N]}))), ['guard-yield'])\ncheck('resume-lifetime regression 0', solve(dict(base, **({'resume':[N],'valid':[N+1]}))), ['resume-lifetime'])\ncheck('resume-lifetime regression 1', solve(dict(base, **({'resume':[N,N+1],'valid':[N+1,N+2]}))), ['resume-lifetime'])\ncheck('cancel-drop-order regression 0', solve(dict(base, **({'drop_order':['o','b'],'dependencies':[('b','o')]}))), ['cancel-drop-order'])\ncheck('cancel-drop-order regression 1', solve(dict(base, **({'drop_order':['x','o','b'],'dependencies':[('b','o')]}))), ['cancel-drop-order'])\ncheck('completed-frame-return regression 0', solve(dict(base, **({'completed':True,'returned':['x','r'],'frame_slots':['r']}))), ['completed-frame-return'])\ncheck('completed-frame-return regression 1', solve(dict(base, **({'completed':True,'returned':['x',N],'frame_slots':[N]}))), ['completed-frame-return'])\ncheck('dead-loan-spill regression 0', solve(dict(base, **({'saved':['a','b'],'killed':['b']}))), ['dead-loan-spill'])\ncheck('dead-loan-spill regression 1', solve(dict(base, **({'saved':[N,N+1],'killed':[N+1]}))), ['dead-loan-spill'])\ncheck('variant-separation regression 0', solve(dict(base, **({'active_variant':'a','variant_loans':{'b':['r']},'common_loans':['r']}))), ['variant-separation'])\ncheck('variant-separation regression 1', solve(dict(base, **({'active_variant':N,'variant_loans':{N+1:['r']},'common_loans':['r']}))), ['variant-separation'])\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"},"fixed":{"sha256":"684d3fc28a8f7e28246833cdfe2fd0838ad7fbcf930d67ade0a7b02e8d3d2abb","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(d):\n    errors=[]\n    if not set(d['live_origins'])<=set(d['frame_slots']): errors.append('frame-promotion')\n    if d['movable'] and bool(d['self_refs']): errors.append('self-move')\n    if not set(d['self_refs'])<=set(d['pinned']): errors.append('pin-projection')\n    if bool(set(d['unique_saved'])&set(d['external_aliases'])): errors.append('suspended-unique-alias')\n    if bool(set(d['guards'])&set(d['suspend_disallowed'])): errors.append('guard-yield')\n    if not set(d['resume'])<=set(d['valid']): errors.append('resume-lifetime')\n    if any(d['drop_order'].index(b)>d['drop_order'].index(o) for b,o in d['dependencies']): errors.append('cancel-drop-order')\n    if d['completed'] and bool(set(d['returned'])&set(d['frame_slots'])): errors.append('completed-frame-return')\n    if bool(set(d['saved'])&set(d['killed'])): errors.append('dead-loan-spill')\n    if any(v!=d['active_variant'] and bool(set(ls)&set(d['common_loans'])) for v,ls in d['variant_loans'].items()): errors.append('variant-separation')\n    return errors\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nbase={'live_origins': [], 'frame_slots': [], 'self_refs': [], 'movable': False, 'pinned': [], 'unique_saved': [], 'external_aliases': [], 'guards': [], 'suspend_disallowed': [], 'resume': [], 'valid': [], 'drop_order': [], 'dependencies': [], 'returned': [], 'completed': False, 'saved': [], 'killed': [], 'variant_loans': {}, 'active_variant': None, 'common_loans': []}\ncheck('well formed empty obligations',solve(base),[])\ncheck('frame-promotion regression 0', solve(dict(base, **({'live_origins':['a','b'],'frame_slots':['a']}))), ['frame-promotion'])\ncheck('frame-promotion regression 1', solve(dict(base, **({'live_origins':['a',N],'frame_slots':['a']}))), ['frame-promotion'])\ncheck('self-move regression 0', solve(dict(base, **({'movable':True,'self_refs':['r'],'pinned':['r']}))), ['self-move'])\ncheck('self-move regression 1', solve(dict(base, **({'movable':True,'self_refs':[N],'pinned':[N]}))), ['self-move'])\ncheck('pin-projection regression 0', solve(dict(base, **({'self_refs':['a','b'],'pinned':['a']}))), ['pin-projection'])\ncheck('pin-projection regression 1', solve(dict(base, **({'self_refs':[N],'pinned':[N+1]}))), ['pin-projection'])\ncheck('suspended-unique-alias regression 0', solve(dict(base, **({'unique_saved':['a'],'external_aliases':['a']}))), ['suspended-unique-alias'])\ncheck('suspended-unique-alias regression 1', solve(dict(base, **({'unique_saved':[N],'external_aliases':[N]}))), ['suspended-unique-alias'])\ncheck('guard-yield regression 0', solve(dict(base, **({'guards':['a','b'],'suspend_disallowed':['b']}))), ['guard-yield'])\ncheck('guard-yield regression 1', solve(dict(base, **({'guards':['a',N],'suspend_disallowed':[N]}))), ['guard-yield'])\ncheck('resume-lifetime regression 0', solve(dict(base, **({'resume':[N],'valid':[N+1]}))), ['resume-lifetime'])\ncheck('resume-lifetime regression 1', solve(dict(base, **({'resume':[N,N+1],'valid':[N+1,N+2]}))), ['resume-lifetime'])\ncheck('cancel-drop-order regression 0', solve(dict(base, **({'drop_order':['o','b'],'dependencies':[('b','o')]}))), ['cancel-drop-order'])\ncheck('cancel-drop-order regression 1', solve(dict(base, **({'drop_order':['x','o','b'],'dependencies':[('b','o')]}))), ['cancel-drop-order'])\ncheck('completed-frame-return regression 0', solve(dict(base, **({'completed':True,'returned':['x','r'],'frame_slots':['r']}))), ['completed-frame-return'])\ncheck('completed-frame-return regression 1', solve(dict(base, **({'completed':True,'returned':['x',N],'frame_slots':[N]}))), ['completed-frame-return'])\ncheck('dead-loan-spill regression 0', solve(dict(base, **({'saved':['a','b'],'killed':['b']}))), ['dead-loan-spill'])\ncheck('dead-loan-spill regression 1', solve(dict(base, **({'saved':[N,N+1],'killed':[N+1]}))), ['dead-loan-spill'])\ncheck('variant-separation regression 0', solve(dict(base, **({'active_variant':'a','variant_loans':{'b':['r']},'common_loans':['r']}))), ['variant-separation'])\ncheck('variant-separation regression 1', solve(dict(base, **({'active_variant':N,'variant_loans':{N+1:['r']},'common_loans':['r']}))), ['variant-separation'])\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"}},"limitations":"The explicitly stated toy language is the complete scope; this is not a production compiler or a claim about Rust semantics. This reproducer isolates one failure mechanism. Results cover the supplied fixtures. Variants within a family share a test contract and should remain grouped when constructing evaluation splits. Related mechanisms with a shared evaluation_group must also remain together; these controlled models are not independent production incidents.","method":"Deterministic executable model with adversarial boundary fixtures.","provenance":{"created_by":"Failure Map","dependencies":"Python standard library","family":"s3-borrow-checking-suspension-borrows-resume-lifetime","generated_at":"2026-09-29T14:43:59.455109+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"A finite offline static-analysis model of ownership and borrowing; it does not execute the analyzed program.","repair":"Apply the specified transfer or inference rule at this site: if not set(d['resume'])<=set(d['valid']): errors.append('resume-lifetime').","root_cause":"The static analyzer mishandles resume lifetime: a resumed reference uses point-count equality as lifetime validity.","sha256":"53570af2cdc30fe2ca521f4da0150091e540a046e85a01edaf4eea8e3adc7f22","title":"A resumed reference uses point-count equality as lifetime validity · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":50.955,"exit_code":1,"observations":[{"actual":[],"check":"well formed empty obligations","expected":[],"passed":true},{"actual":["frame-promotion"],"check":"frame-promotion regression 0","expected":["frame-promotion"],"passed":true},{"actual":["frame-promotion"],"check":"frame-promotion regression 1","expected":["frame-promotion"],"passed":true},{"actual":["self-move"],"check":"self-move regression 0","expected":["self-move"],"passed":true},{"actual":["self-move"],"check":"self-move regression 1","expected":["self-move"],"passed":true},{"actual":["pin-projection"],"check":"pin-projection regression 0","expected":["pin-projection"],"passed":true},{"actual":["pin-projection"],"check":"pin-projection regression 1","expected":["pin-projection"],"passed":true},{"actual":["suspended-unique-alias"],"check":"suspended-unique-alias regression 0","expected":["suspended-unique-alias"],"passed":true},{"actual":["suspended-unique-alias"],"check":"suspended-unique-alias regression 1","expected":["suspended-unique-alias"],"passed":true},{"actual":["guard-yield"],"check":"guard-yield regression 0","expected":["guard-yield"],"passed":true},{"actual":["guard-yield"],"check":"guard-yield regression 1","expected":["guard-yield"],"passed":true},{"actual":[],"check":"resume-lifetime regression 0","expected":["resume-lifetime"],"passed":false},{"actual":[],"check":"resume-lifetime regression 1","expected":["resume-lifetime"],"passed":false},{"actual":["cancel-drop-order"],"check":"cancel-drop-order regression 0","expected":["cancel-drop-order"],"passed":true},{"actual":["cancel-drop-order"],"check":"cancel-drop-order regression 1","expected":["cancel-drop-order"],"passed":true},{"actual":["completed-frame-return"],"check":"completed-frame-return regression 0","expected":["completed-frame-return"],"passed":true},{"actual":["completed-frame-return"],"check":"completed-frame-return regression 1","expected":["completed-frame-return"],"passed":true},{"actual":["dead-loan-spill"],"check":"dead-loan-spill regression 0","expected":["dead-loan-spill"],"passed":true},{"actual":["dead-loan-spill"],"check":"dead-loan-spill regression 1","expected":["dead-loan-spill"],"passed":true},{"actual":["variant-separation"],"check":"variant-separation regression 0","expected":["variant-separation"],"passed":true},{"actual":["variant-separation"],"check":"variant-separation regression 1","expected":["variant-separation"],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"well formed empty obligations\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"frame-promotion regression 0\", \"actual\": [\"frame-promotion\"], \"expected\": [\"frame-promotion\"], \"passed\": true}, {\"check\": \"frame-promotion regression 1\", \"actual\": [\"frame-promotion\"], \"expected\": [\"frame-promotion\"], \"passed\": true}, {\"check\": \"self-move regression 0\", \"actual\": [\"self-move\"], \"expected\": [\"self-move\"], \"passed\": true}, {\"check\": \"self-move regression 1\", \"actual\": [\"self-move\"], \"expected\": [\"self-move\"], \"passed\": true}, {\"check\": \"pin-projection regression 0\", \"actual\": [\"pin-projection\"], \"expected\": [\"pin-projection\"], \"passed\": true}, {\"check\": \"pin-projection regression 1\", \"actual\": [\"pin-projection\"], \"expected\": [\"pin-projection\"], \"passed\": true}, {\"check\": \"suspended-unique-alias regression 0\", \"actual\": [\"suspended-unique-alias\"], \"expected\": [\"suspended-unique-alias\"], \"passed\": true}, {\"check\": \"suspended-unique-alias regression 1\", \"actual\": [\"suspended-unique-alias\"], \"expected\": [\"suspended-unique-alias\"], \"passed\": true}, {\"check\": \"guard-yield regression 0\", \"actual\": [\"guard-yield\"], \"expected\": [\"guard-yield\"], \"passed\": true}, {\"check\": \"guard-yield regression 1\", \"actual\": [\"guard-yield\"], \"expected\": [\"guard-yield\"], \"passed\": true}, {\"check\": \"resume-lifetime regression 0\", \"actual\": [], \"expected\": [\"resume-lifetime\"], \"passed\": false}, {\"check\": \"resume-lifetime regression 1\", \"actual\": [], \"expected\": [\"resume-lifetime\"], \"passed\": false}, {\"check\": \"cancel-drop-order regression 0\", \"actual\": [\"cancel-drop-order\"], \"expected\": [\"cancel-drop-order\"], \"passed\": true}, {\"check\": \"cancel-drop-order regression 1\", \"actual\": [\"cancel-drop-order\"], \"expected\": [\"cancel-drop-order\"], \"passed\": true}, {\"check\": \"completed-frame-return regression 0\", \"actual\": [\"completed-frame-return\"], \"expected\": [\"completed-frame-return\"], \"passed\": true}, {\"check\": \"completed-frame-return regression 1\", \"actual\": [\"completed-frame-return\"], \"expected\": [\"completed-frame-return\"], \"passed\": true}, {\"check\": \"dead-loan-spill regression 0\", \"actual\": [\"dead-loan-spill\"], \"expected\": [\"dead-loan-spill\"], \"passed\": true}, {\"check\": \"dead-loan-spill regression 1\", \"actual\": [\"dead-loan-spill\"], \"expected\": [\"dead-loan-spill\"], \"passed\": true}, {\"check\": \"variant-separation regression 0\", \"actual\": [\"variant-separation\"], \"expected\": [\"variant-separation\"], \"passed\": true}, {\"check\": \"variant-separation regression 1\", \"actual\": [\"variant-separation\"], \"expected\": [\"variant-separation\"], \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":47.772,"exit_code":1,"observations":[{"actual":[],"check":"well formed empty obligations","expected":[],"passed":true},{"actual":["frame-promotion"],"check":"frame-promotion regression 0","expected":["frame-promotion"],"passed":true},{"actual":["frame-promotion"],"check":"frame-promotion regression 1","expected":["frame-promotion"],"passed":true},{"actual":["self-move"],"check":"self-move regression 0","expected":["self-move"],"passed":true},{"actual":["self-move"],"check":"self-move regression 1","expected":["self-move"],"passed":true},{"actual":["pin-projection"],"check":"pin-projection regression 0","expected":["pin-projection"],"passed":true},{"actual":["pin-projection"],"check":"pin-projection regression 1","expected":["pin-projection"],"passed":true},{"actual":["suspended-unique-alias"],"check":"suspended-unique-alias regression 0","expected":["suspended-unique-alias"],"passed":true},{"actual":["suspended-unique-alias"],"check":"suspended-unique-alias regression 1","expected":["suspended-unique-alias"],"passed":true},{"actual":["guard-yield"],"check":"guard-yield regression 0","expected":["guard-yield"],"passed":true},{"actual":["guard-yield"],"check":"guard-yield regression 1","expected":["guard-yield"],"passed":true},{"actual":[],"check":"resume-lifetime regression 0","expected":["resume-lifetime"],"passed":false},{"actual":[],"check":"resume-lifetime regression 1","expected":["resume-lifetime"],"passed":false},{"actual":["cancel-drop-order"],"check":"cancel-drop-order regression 0","expected":["cancel-drop-order"],"passed":true},{"actual":["cancel-drop-order"],"check":"cancel-drop-order regression 1","expected":["cancel-drop-order"],"passed":true},{"actual":["completed-frame-return"],"check":"completed-frame-return regression 0","expected":["completed-frame-return"],"passed":true},{"actual":["completed-frame-return"],"check":"completed-frame-return regression 1","expected":["completed-frame-return"],"passed":true},{"actual":["dead-loan-spill"],"check":"dead-loan-spill regression 0","expected":["dead-loan-spill"],"passed":true},{"actual":["dead-loan-spill"],"check":"dead-loan-spill regression 1","expected":["dead-loan-spill"],"passed":true},{"actual":["variant-separation"],"check":"variant-separation regression 0","expected":["variant-separation"],"passed":true},{"actual":["variant-separation"],"check":"variant-separation regression 1","expected":["variant-separation"],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"well formed empty obligations\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"frame-promotion regression 0\", \"actual\": [\"frame-promotion\"], \"expected\": [\"frame-promotion\"], \"passed\": true}, {\"check\": \"frame-promotion regression 1\", \"actual\": [\"frame-promotion\"], \"expected\": [\"frame-promotion\"], \"passed\": true}, {\"check\": \"self-move regression 0\", \"actual\": [\"self-move\"], \"expected\": [\"self-move\"], \"passed\": true}, {\"check\": \"self-move regression 1\", \"actual\": [\"self-move\"], \"expected\": [\"self-move\"], \"passed\": true}, {\"check\": \"pin-projection regression 0\", \"actual\": [\"pin-projection\"], \"expected\": [\"pin-projection\"], \"passed\": true}, {\"check\": \"pin-projection regression 1\", \"actual\": [\"pin-projection\"], \"expected\": [\"pin-projection\"], \"passed\": true}, {\"check\": \"suspended-unique-alias regression 0\", \"actual\": [\"suspended-unique-alias\"], \"expected\": [\"suspended-unique-alias\"], \"passed\": true}, {\"check\": \"suspended-unique-alias regression 1\", \"actual\": [\"suspended-unique-alias\"], \"expected\": [\"suspended-unique-alias\"], \"passed\": true}, {\"check\": \"guard-yield regression 0\", \"actual\": [\"guard-yield\"], \"expected\": [\"guard-yield\"], \"passed\": true}, {\"check\": \"guard-yield regression 1\", \"actual\": [\"guard-yield\"], \"expected\": [\"guard-yield\"], \"passed\": true}, {\"check\": \"resume-lifetime regression 0\", \"actual\": [], \"expected\": [\"resume-lifetime\"], \"passed\": false}, {\"check\": \"resume-lifetime regression 1\", \"actual\": [], \"expected\": [\"resume-lifetime\"], \"passed\": false}, {\"check\": \"cancel-drop-order regression 0\", \"actual\": [\"cancel-drop-order\"], \"expected\": [\"cancel-drop-order\"], \"passed\": true}, {\"check\": \"cancel-drop-order regression 1\", \"actual\": [\"cancel-drop-order\"], \"expected\": [\"cancel-drop-order\"], \"passed\": true}, {\"check\": \"completed-frame-return regression 0\", \"actual\": [\"completed-frame-return\"], \"expected\": [\"completed-frame-return\"], \"passed\": true}, {\"check\": \"completed-frame-return regression 1\", \"actual\": [\"completed-frame-return\"], \"expected\": [\"completed-frame-return\"], \"passed\": true}, {\"check\": \"dead-loan-spill regression 0\", \"actual\": [\"dead-loan-spill\"], \"expected\": [\"dead-loan-spill\"], \"passed\": true}, {\"check\": \"dead-loan-spill regression 1\", \"actual\": [\"dead-loan-spill\"], \"expected\": [\"dead-loan-spill\"], \"passed\": true}, {\"check\": \"variant-separation regression 0\", \"actual\": [\"variant-separation\"], \"expected\": [\"variant-separation\"], \"passed\": true}, {\"check\": \"variant-separation regression 1\", \"actual\": [\"variant-separation\"], \"expected\": [\"variant-separation\"], \"passed\": true}], \"passed\": false}\n"},"fixed":{"elapsed_ms":49.865,"exit_code":0,"observations":[{"actual":[],"check":"well formed empty obligations","expected":[],"passed":true},{"actual":["frame-promotion"],"check":"frame-promotion regression 0","expected":["frame-promotion"],"passed":true},{"actual":["frame-promotion"],"check":"frame-promotion regression 1","expected":["frame-promotion"],"passed":true},{"actual":["self-move"],"check":"self-move regression 0","expected":["self-move"],"passed":true},{"actual":["self-move"],"check":"self-move regression 1","expected":["self-move"],"passed":true},{"actual":["pin-projection"],"check":"pin-projection regression 0","expected":["pin-projection"],"passed":true},{"actual":["pin-projection"],"check":"pin-projection regression 1","expected":["pin-projection"],"passed":true},{"actual":["suspended-unique-alias"],"check":"suspended-unique-alias regression 0","expected":["suspended-unique-alias"],"passed":true},{"actual":["suspended-unique-alias"],"check":"suspended-unique-alias regression 1","expected":["suspended-unique-alias"],"passed":true},{"actual":["guard-yield"],"check":"guard-yield regression 0","expected":["guard-yield"],"passed":true},{"actual":["guard-yield"],"check":"guard-yield regression 1","expected":["guard-yield"],"passed":true},{"actual":["resume-lifetime"],"check":"resume-lifetime regression 0","expected":["resume-lifetime"],"passed":true},{"actual":["resume-lifetime"],"check":"resume-lifetime regression 1","expected":["resume-lifetime"],"passed":true},{"actual":["cancel-drop-order"],"check":"cancel-drop-order regression 0","expected":["cancel-drop-order"],"passed":true},{"actual":["cancel-drop-order"],"check":"cancel-drop-order regression 1","expected":["cancel-drop-order"],"passed":true},{"actual":["completed-frame-return"],"check":"completed-frame-return regression 0","expected":["completed-frame-return"],"passed":true},{"actual":["completed-frame-return"],"check":"completed-frame-return regression 1","expected":["completed-frame-return"],"passed":true},{"actual":["dead-loan-spill"],"check":"dead-loan-spill regression 0","expected":["dead-loan-spill"],"passed":true},{"actual":["dead-loan-spill"],"check":"dead-loan-spill regression 1","expected":["dead-loan-spill"],"passed":true},{"actual":["variant-separation"],"check":"variant-separation regression 0","expected":["variant-separation"],"passed":true},{"actual":["variant-separation"],"check":"variant-separation regression 1","expected":["variant-separation"],"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"well formed empty obligations\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"frame-promotion regression 0\", \"actual\": [\"frame-promotion\"], \"expected\": [\"frame-promotion\"], \"passed\": true}, {\"check\": \"frame-promotion regression 1\", \"actual\": [\"frame-promotion\"], \"expected\": [\"frame-promotion\"], \"passed\": true}, {\"check\": \"self-move regression 0\", \"actual\": [\"self-move\"], \"expected\": [\"self-move\"], \"passed\": true}, {\"check\": \"self-move regression 1\", \"actual\": [\"self-move\"], \"expected\": [\"self-move\"], \"passed\": true}, {\"check\": \"pin-projection regression 0\", \"actual\": [\"pin-projection\"], \"expected\": [\"pin-projection\"], \"passed\": true}, {\"check\": \"pin-projection regression 1\", \"actual\": [\"pin-projection\"], \"expected\": [\"pin-projection\"], \"passed\": true}, {\"check\": \"suspended-unique-alias regression 0\", \"actual\": [\"suspended-unique-alias\"], \"expected\": [\"suspended-unique-alias\"], \"passed\": true}, {\"check\": \"suspended-unique-alias regression 1\", \"actual\": [\"suspended-unique-alias\"], \"expected\": [\"suspended-unique-alias\"], \"passed\": true}, {\"check\": \"guard-yield regression 0\", \"actual\": [\"guard-yield\"], \"expected\": [\"guard-yield\"], \"passed\": true}, {\"check\": \"guard-yield regression 1\", \"actual\": [\"guard-yield\"], \"expected\": [\"guard-yield\"], \"passed\": true}, {\"check\": \"resume-lifetime regression 0\", \"actual\": [\"resume-lifetime\"], \"expected\": [\"resume-lifetime\"], \"passed\": true}, {\"check\": \"resume-lifetime regression 1\", \"actual\": [\"resume-lifetime\"], \"expected\": [\"resume-lifetime\"], \"passed\": true}, {\"check\": \"cancel-drop-order regression 0\", \"actual\": [\"cancel-drop-order\"], \"expected\": [\"cancel-drop-order\"], \"passed\": true}, {\"check\": \"cancel-drop-order regression 1\", \"actual\": [\"cancel-drop-order\"], \"expected\": [\"cancel-drop-order\"], \"passed\": true}, {\"check\": \"completed-frame-return regression 0\", \"actual\": [\"completed-frame-return\"], \"expected\": [\"completed-frame-return\"], \"passed\": true}, {\"check\": \"completed-frame-return regression 1\", \"actual\": [\"completed-frame-return\"], \"expected\": [\"completed-frame-return\"], \"passed\": true}, {\"check\": \"dead-loan-spill regression 0\", \"actual\": [\"dead-loan-spill\"], \"expected\": [\"dead-loan-spill\"], \"passed\": true}, {\"check\": \"dead-loan-spill regression 1\", \"actual\": [\"dead-loan-spill\"], \"expected\": [\"dead-loan-spill\"], \"passed\": true}, {\"check\": \"variant-separation regression 0\", \"actual\": [\"variant-separation\"], \"expected\": [\"variant-separation\"], \"passed\": true}, {\"check\": \"variant-separation regression 1\", \"actual\": [\"variant-separation\"], \"expected\": [\"variant-separation\"], \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}