diff options
-rw-r--r-- | cli/tests/integration_tests.rs | 5 | ||||
-rw-r--r-- | cli/tests/top_level_await.ts | 3 | ||||
-rw-r--r-- | js/compiler.ts | 3 |
3 files changed, 11 insertions, 0 deletions
diff --git a/cli/tests/integration_tests.rs b/cli/tests/integration_tests.rs index 99ab54a02..0e0407180 100644 --- a/cli/tests/integration_tests.rs +++ b/cli/tests/integration_tests.rs @@ -567,3 +567,8 @@ itest!(top_level_await { args: "--allow-read top_level_await.js", output: "top_level_await.out", }); + +itest!(top_level_await_ts { + args: "--allow-read top_level_await.ts", + output: "top_level_await.out", +}); diff --git a/cli/tests/top_level_await.ts b/cli/tests/top_level_await.ts new file mode 100644 index 000000000..65de253ea --- /dev/null +++ b/cli/tests/top_level_await.ts @@ -0,0 +1,3 @@ +const buf: Uint8Array = await Deno.readFile("hello.txt"); +const n: number = await Deno.stdout.write(buf); +console.log(`\n\nwrite ${n}`); diff --git a/js/compiler.ts b/js/compiler.ts index 1e1fe3dd3..56804ef9f 100644 --- a/js/compiler.ts +++ b/js/compiler.ts @@ -539,6 +539,9 @@ window.compilerMain = function compilerMain(): void { diagnostics = ts.getPreEmitDiagnostics(program).filter( ({ code }): boolean => { + // TS1308: 'await' expression is only allowed within an async + // function. + if (code === 1308) return false; // TS2691: An import path cannot end with a '.ts' extension. Consider // importing 'bad-module' instead. if (code === 2691) return false; |