40 columns                              |
>>> Break with comment after keyword.
while (true) {
  break // comment
  ;
}
<<<
while (true) {
  break // comment
  ;
}
>>> Break with comment after semicolon.
while (true) {
  break; // comment
}
<<<
while (true) {
  break; // comment
}
>>> Continue with comment after keyword.
while (true) {
  break // comment
  ;
}
<<<
while (true) {
  break // comment
  ;
}
>>> Continue with comment after semicolon.
while (true) {
  break; // comment
}
<<<
while (true) {
  break; // comment
}
>>> Yield with comment after semicolon.
Stream<String> i(String n) async* {
  yield   i   ;     // comment
}
<<<
Stream<String> i(String n) async* {
  yield i; // comment
}
>>> Yield* with comment after semicolon.
Stream<int> i(int n) async* {
  yield  *   i( x )    ;    // comment
}
<<<
Stream<int> i(int n) async* {
  yield* i(x); // comment
}
>>> Await with comment after semicolon.
foo() async {
  await i (  1 + 2   )   ;     // comment
}
<<<
foo() async {
  await i(1 + 2); // comment
}
