public static boolean compound_list(PsiBuilder b, int l) {
    if (!recursion_guard_(b, l, "compound_list")) return false;
    boolean r;
    Marker m = enter_section_(b, l, _NONE_, COMPOUND_LIST, "<compound list>");
    r = newlines(b, l + 1);
    r = r && compound_list_1(b, l + 1);
    exit_section_(b, l, m, r, false, ShParser::compound_list_recover);
    return r;
  }
public static boolean compound_list(PsiBuilder b, int l)