# Tenko parser autogenerated test case

- From: tests/testcases/try_statement/catch_arg/optional_catch_binding_supported_from_ES9_upward/autogen.md
- Path: tests/testcases/try_statement/catch_arg/optional_catch_binding_supported_from_ES9_upward/gen/try2fcatch_parenless_ident/9.md

> :: try statement : catch arg : optional catch binding supported from ES9 upward : gen : try2fcatch parenless ident
>
> ::> 9

## Input

- `es = 9`

`````js
try {} catch foo {}
`````

## Output

_Note: the whole output block is auto-generated.  Manual changes will be overwritten!_ 

Below follow outputs in five parsing modes: sloppy, sloppy+annexb, strict script, module, module+annexb. 

Note that the output parts are auto-generated by the test runner to reflect actual result. 

### Sloppy mode

Parsed with script goal and as if the code did not start with strict mode header. 

`````
throws: Parser error! 
  Missing start of catch clause (`(`) or start of catch body (`{`), found `foo` instead

start@1:0, error@1:13
╔══╦═════════════════
 1 ║ try {} catch foo {}
   ║              ^^^------- error
╚══╩═════════════════

`````

### Strict mode

Parsed with script goal but as if it was starting with `"use strict"` at the top. 

_Output same as sloppy mode._ 

### Module goal

Parsed with the module goal. 

_Output same as sloppy mode._ 

### Sloppy mode with AnnexB

Parsed with script goal with AnnexB rules enabled and as if the code did not start with strict mode header. 

_Output same as sloppy mode._ 

### Module goal with AnnexB

Parsed with the module goal with AnnexB rules enabled. 

_Output same as sloppy mode._