srossross/Meta — pull request #17 by kichik (2013-10-15 17:33:18+00:00)
Title: Fix `return` in `except`

The following code tries to return a value from an `except` block but fails with an assertion.

```python
import meta

def f(x):
try:
return x
except:
return x + 1 # <== offender

f_ast = meta.decompiler.decompile_func(f)
meta.asttools.print_ast(f_ast)
print meta.dump_python_source(f_ast)
```

It results in the following assertion:

```python
AssertionError: 21 RETURN_VALUE
```

The suggested patch simply adds support for `return` and seems to work. It results in valid AST.