@@ -3919,7 +3919,9 @@ impl<'a> Parser<'a> {
3919
3919
] ) {
3920
3920
Some ( Keyword :: UPDATE ) => {
3921
3921
if is_not_matched {
3922
- parser_err ! ( "UPDATE in NOT MATCHED merge clause" ) ?;
3922
+ return Err ( ParserError :: ParserError (
3923
+ "UPDATE in NOT MATCHED merge clause" . to_string ( ) ,
3924
+ ) ) ;
3923
3925
}
3924
3926
self . expect_keyword ( Keyword :: SET ) ?;
3925
3927
let assignments = self . parse_comma_separated ( Parser :: parse_assignment) ?;
@@ -3930,13 +3932,17 @@ impl<'a> Parser<'a> {
3930
3932
}
3931
3933
Some ( Keyword :: DELETE ) => {
3932
3934
if is_not_matched {
3933
- parser_err ! ( "DELETE in NOT MATCHED merge clause" ) ?;
3935
+ return Err ( ParserError :: ParserError (
3936
+ "DELETE in NOT MATCHED merge clause" . to_string ( ) ,
3937
+ ) ) ;
3934
3938
}
3935
3939
MergeClause :: MatchedDelete ( predicate)
3936
3940
}
3937
3941
Some ( Keyword :: INSERT ) => {
3938
3942
if !is_not_matched {
3939
- parser_err ! ( "INSERT in MATCHED merge clause" ) ?;
3943
+ return Err ( ParserError :: ParserError (
3944
+ "INSERT in MATCHED merge clause" . to_string ( ) ,
3945
+ ) ) ;
3940
3946
}
3941
3947
let columns = self . parse_parenthesized_column_list ( Optional ) ?;
3942
3948
self . expect_keyword ( Keyword :: VALUES ) ?;
@@ -3947,8 +3953,16 @@ impl<'a> Parser<'a> {
3947
3953
values,
3948
3954
}
3949
3955
}
3950
- Some ( _) => parser_err ! ( "expected UPDATE, DELETE or INSERT in merge clause" ) ?,
3951
- None => parser_err ! ( "expected UPDATE, DELETE or INSERT in merge clause" ) ?,
3956
+ Some ( _) => {
3957
+ return Err ( ParserError :: ParserError (
3958
+ "expected UPDATE, DELETE or INSERT in merge clause" . to_string ( ) ,
3959
+ ) )
3960
+ }
3961
+ None => {
3962
+ return Err ( ParserError :: ParserError (
3963
+ "expected UPDATE, DELETE or INSERT in merge clause" . to_string ( ) ,
3964
+ ) )
3965
+ }
3952
3966
} ,
3953
3967
) ;
3954
3968
}
0 commit comments