Jelajahi Sumber

Correct package docs parsing

gingerBill 3 tahun lalu
induk
melakukan
0d4642825f
1 mengubah file dengan 9 tambahan dan 0 penghapusan
  1. 9 0
      src/parser.cpp

+ 9 - 0
src/parser.cpp

@@ -5412,6 +5412,15 @@ bool parse_file(Parser *p, AstFile *f) {
 	if (f->package_token.kind != Token_package) {
 		return false;
 	}
+	if (docs != nullptr) {
+		TokenPos end = token_pos_end(docs->list[docs->list.count-1]);
+		if (end.line == f->package_token.pos.line || end.line+1 == f->package_token.pos.line) {
+			// Okay
+		} else {
+			docs = nullptr;
+		}
+	}
+
 	Token package_name = expect_token_after(f, Token_Ident, "package");
 	if (package_name.kind == Token_Ident) {
 		if (package_name.string == "_") {