diff --git a/clang/unittests/Format/FormatTestJS.cpp b/clang/unittests/Format/FormatTestJS.cpp --- a/clang/unittests/Format/FormatTestJS.cpp +++ b/clang/unittests/Format/FormatTestJS.cpp @@ -737,6 +737,22 @@ " function a() {\n" " return 1;\n" "} \n"); + // clang-format must not insert breaks between async and function, otherwise + // automatic semicolon insertion may trigger (in particular in a class body). + verifyFormat("async function\n" + "hello(\n" + " myparamnameiswaytooloooong) {\n" + "}", + "async function hello(myparamnameiswaytooloooong) {}", + getGoogleJSStyleWithColumns(10)); + verifyFormat("class C {\n" + " async hello(\n" + " myparamnameiswaytooloooong) {\n" + " }\n" + "}", + "class C {\n" + " async hello(myparamnameiswaytooloooong) {} }", + getGoogleJSStyleWithColumns(10)); verifyFormat("async function* f() {\n" " yield fetch(x);\n" "}");