Skip to content

Commit 15d5697

Browse files
committed
Include location in error message
1 parent 56b8fe6 commit 15d5697

File tree

1 file changed

+21
-14
lines changed

1 file changed

+21
-14
lines changed

src/parser/mod.rs

Lines changed: 21 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -17239,10 +17239,12 @@ impl<'a> Parser<'a> {
1723917239
clause_kind,
1724017240
MergeClauseKind::NotMatched | MergeClauseKind::NotMatchedByTarget
1724117241
) {
17242-
return Err(ParserError::ParserError(format!(
17243-
"UPDATE is not allowed in a {clause_kind} merge clause"
17244-
)));
17242+
return parser_err!(
17243+
format_args!("UPDATE is not allowed in a {clause_kind} merge clause"),
17244+
self.get_current_token().span.start
17245+
);
1724517246
}
17247+
1724617248
let update_token = self.get_current_token().clone();
1724717249
self.expect_keyword_is(Keyword::SET)?;
1724817250
MergeAction::Update {
@@ -17255,10 +17257,12 @@ impl<'a> Parser<'a> {
1725517257
clause_kind,
1725617258
MergeClauseKind::NotMatched | MergeClauseKind::NotMatchedByTarget
1725717259
) {
17258-
return Err(ParserError::ParserError(format!(
17259-
"DELETE is not allowed in a {clause_kind} merge clause"
17260-
)));
17261-
}
17260+
return parser_err!(
17261+
format_args!("DELETE is not allowed in a {clause_kind} merge clause"),
17262+
self.get_current_token().span.start
17263+
);
17264+
};
17265+
1726217266
let delete_token = self.get_current_token().clone();
1726317267
MergeAction::Delete {
1726417268
delete_token: delete_token.into(),
@@ -17269,10 +17273,12 @@ impl<'a> Parser<'a> {
1726917273
clause_kind,
1727017274
MergeClauseKind::NotMatched | MergeClauseKind::NotMatchedByTarget
1727117275
) {
17272-
return Err(ParserError::ParserError(format!(
17273-
"INSERT is not allowed in a {clause_kind} merge clause"
17274-
)));
17275-
}
17276+
return parser_err!(
17277+
format_args!("INSERT is not allowed in a {clause_kind} merge clause"),
17278+
self.get_current_token().span.start
17279+
);
17280+
};
17281+
1727617282
let insert_token = self.get_current_token().clone();
1727717283
let is_mysql = dialect_of!(self is MySqlDialect);
1727817284

@@ -17295,9 +17301,10 @@ impl<'a> Parser<'a> {
1729517301
})
1729617302
}
1729717303
_ => {
17298-
return Err(ParserError::ParserError(
17299-
"expected UPDATE, DELETE or INSERT in merge clause".to_string(),
17300-
));
17304+
return parser_err!(
17305+
"expected UPDATE, DELETE or INSERT in merge clause",
17306+
self.peek_token_ref().span.start
17307+
);
1730117308
}
1730217309
};
1730317310
clauses.push(MergeClause {

0 commit comments

Comments
 (0)