I have the following node app containing an async function, awaiting an ES6 promise.

```
async function test(id){
    try {
        let val = await Promise.resolve(id);
        console.log("val: " + val);
    } catch (error) {
        console.log("error: " + error);
    }
}

test(1);

```

Result = val: undefined

Expected result: val: 1

I use gulp-babel to compile this to ES5.

I have the following set within the gulp task:

```
.pipe(babel({ optional: ["es7.asyncFunctions"] }))

```

I am also requiring in 'babel/polyfill' after npm installing babel.

Transpiled code:

```
function test(id) {
var val;
return regeneratorRuntime.async(function test$(context$1$0) {
    while (1) switch (context$1$0.prev = context$1$0.next) {
        case 0:
            context$1$0.prev = 0;
            context$1$0.next = 3;
            return Promise.resolve(id);

        case 3:
            val = context$1$0.sent;

            console.log('val: ' + val);
            context$1$0.next = 10;
            break;

        case 7:
            context$1$0.prev = 7;
            context$1$0.t0 = context$1$0['catch'](0);

            console.log('error: ' + context$1$0.t0);

        case 10:
        case 'end':
            return context$1$0.stop();
    }
}, null, this, [[0, 7]]);
}

test(1);

```