@@ -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