google/closure-compiler

Unknown type 'BeforeUnloadEvent'

Open

#3,987 opened on Aug 16, 2022

View on GitHub
 (3 comments) (0 reactions) (0 assignees)Java (1,197 forks)batch import
help wanted

Repository metrics

Stars
 (7,176 stars)
PR merge metrics
 (Avg merge 3d 4h) (1 merged PR in 30d)

Description

test.js:

/** @type {BeforeUnloadEvent} */
var a;

Compiled with closure-compiler -O ADVANCED --js test.js --js_output_file test.min.js version v20220601:

test.js:1:11: WARNING - [JSC_UNRECOGNIZED_TYPE_ERROR] Bad type annotation. Unknown type BeforeUnloadEvent
  1| /** @type {BeforeUnloadEvent} */
                ^

0 error(s), 1 warning(s)

That's strange, since the following executed in the browser:

onbeforeunload = function(e) {
    console.log(e);
    e.preventDefault();
    return "";
};

returns BeforeUnloadEvent in the console. Why does GCC not support it?

Contributor guide