Changing error message to reflect changes with the 2018 edition
Signed-off-by: Adonis <adonis.settouf@gmail.com> Update src/libsyntax/ext/tt/quoted.rs Co-Authored-By: asettouf <adonis.settouf@gmail.com> Update src/libsyntax/ext/tt/quoted.rs Co-Authored-By: asettouf <adonis.settouf@gmail.com> Update src/libsyntax/ext/tt/quoted.rs Co-Authored-By: asettouf <adonis.settouf@gmail.com> Update src/libsyntax/ext/tt/quoted.rs Co-Authored-By: asettouf <adonis.settouf@gmail.com> Update src/libsyntax/ext/tt/quoted.rs Co-Authored-By: asettouf <adonis.settouf@gmail.com> Update src/libsyntax/ext/tt/quoted.rs Co-Authored-By: asettouf <adonis.settouf@gmail.com> Update src/test/ui/macros/macro-at-most-once-rep-2015-ques-rep.stderr Co-Authored-By: asettouf <adonis.settouf@gmail.com> Update src/test/ui/macros/macro-at-most-once-rep-2015-ques-rep.stderr Co-Authored-By: asettouf <adonis.settouf@gmail.com> Stabilize split_ascii_whitespace Tracking issue FCP to merge: https://github.com/rust-lang/rust/issues/48656#issuecomment-442372750 fix stabilization order of uniform_paths. hir: add HirId to main Hir nodes Fix `std::os::fortanix_sgx::usercalls::raw::UsercallNrs` Fixes https://github.com/fortanix/rust-sgx/issues/88 Update src/libsyntax/ext/tt/quoted.rs Co-Authored-By: asettouf <adonis.settouf@gmail.com> Revert "Merge remote-tracking branch 'upstream/master'" This reverts commit 751f05bd155e2c55d4177fe8211df634faf3a644, reversing changes made to 545a3e62b0cb473108869a61b271bc589afb49da.
This commit is contained in:
parent
3d35a9b1d2
commit
c1f3d1520e
2 changed files with 14 additions and 8 deletions
|
@ -474,11 +474,13 @@ where
|
||||||
// #1 is a separator and #2 should be a KleepeOp.
|
// #1 is a separator and #2 should be a KleepeOp.
|
||||||
// (N.B. We need to advance the input iterator.)
|
// (N.B. We need to advance the input iterator.)
|
||||||
match parse_kleene_op(input, span) {
|
match parse_kleene_op(input, span) {
|
||||||
// #2 is `?`, which is not allowed as a Kleene op in 2015 edition.
|
// #2 is `?`, which is not allowed as a Kleene op in 2015 edition,
|
||||||
|
// but is allowed in the 2018 edition.
|
||||||
Ok(Ok((op, op2_span))) if op == KleeneOp::ZeroOrOne => {
|
Ok(Ok((op, op2_span))) if op == KleeneOp::ZeroOrOne => {
|
||||||
sess.span_diagnostic
|
sess.span_diagnostic
|
||||||
.struct_span_err(op2_span, "expected `*` or `+`")
|
.struct_span_err(op2_span, "expected `*` or `+`")
|
||||||
.note("`?` is not a macro repetition operator")
|
.note("`?` is not a macro repetition operator in the 2015 edition, \
|
||||||
|
but is accepted in the 2018 edition")
|
||||||
.emit();
|
.emit();
|
||||||
|
|
||||||
// Return a dummy
|
// Return a dummy
|
||||||
|
@ -506,10 +508,12 @@ where
|
||||||
Err(_) => op1_span,
|
Err(_) => op1_span,
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
// `?` is not allowed as a Kleene op in 2015
|
// `?` is not allowed as a Kleene op in 2015,
|
||||||
|
// but is allowed in the 2018 edition
|
||||||
sess.span_diagnostic
|
sess.span_diagnostic
|
||||||
.struct_span_err(op1_span, "expected `*` or `+`")
|
.struct_span_err(op1_span, "expected `*` or `+`")
|
||||||
.note("`?` is not a macro repetition operator")
|
.note("`?` is not a macro repetition operator in the 2015 edition, \
|
||||||
|
but is accepted in the 2018 edition")
|
||||||
.emit();
|
.emit();
|
||||||
|
|
||||||
// Return a dummy
|
// Return a dummy
|
||||||
|
@ -519,11 +523,13 @@ where
|
||||||
|
|
||||||
// #1 is a separator followed by #2, a KleeneOp
|
// #1 is a separator followed by #2, a KleeneOp
|
||||||
Ok(Err((tok, span))) => match parse_kleene_op(input, span) {
|
Ok(Err((tok, span))) => match parse_kleene_op(input, span) {
|
||||||
// #2 is a `?`, which is not allowed as a Kleene op in 2015 edition.
|
// #2 is a `?`, which is not allowed as a Kleene op in 2015 edition,
|
||||||
|
// but is allowed in the 2018 edition
|
||||||
Ok(Ok((op, op2_span))) if op == KleeneOp::ZeroOrOne => {
|
Ok(Ok((op, op2_span))) if op == KleeneOp::ZeroOrOne => {
|
||||||
sess.span_diagnostic
|
sess.span_diagnostic
|
||||||
.struct_span_err(op2_span, "expected `*` or `+`")
|
.struct_span_err(op2_span, "expected `*` or `+`")
|
||||||
.note("`?` is not a macro repetition operator")
|
.note("`?` is not a macro repetition operator in the 2015 edition, \
|
||||||
|
but is accepted in the 2018 edition")
|
||||||
.emit();
|
.emit();
|
||||||
|
|
||||||
// Return a dummy
|
// Return a dummy
|
||||||
|
|
|
@ -4,7 +4,7 @@ error: expected `*` or `+`
|
||||||
LL | ($(a)?) => {} //~ERROR expected `*` or `+`
|
LL | ($(a)?) => {} //~ERROR expected `*` or `+`
|
||||||
| ^
|
| ^
|
||||||
|
|
|
|
||||||
= note: `?` is not a macro repetition operator
|
= note: `?` is not a macro repetition operator in the 2015 edition, but is accepted in the 2018 edition
|
||||||
|
|
||||||
error: expected `*` or `+`
|
error: expected `*` or `+`
|
||||||
--> $DIR/macro-at-most-once-rep-2015-ques-rep.rs:10:11
|
--> $DIR/macro-at-most-once-rep-2015-ques-rep.rs:10:11
|
||||||
|
@ -12,7 +12,7 @@ error: expected `*` or `+`
|
||||||
LL | ($(a),?) => {} //~ERROR expected `*` or `+`
|
LL | ($(a),?) => {} //~ERROR expected `*` or `+`
|
||||||
| ^
|
| ^
|
||||||
|
|
|
|
||||||
= note: `?` is not a macro repetition operator
|
= note: `?` is not a macro repetition operator in the 2015 edition, but is accepted in the 2018 edition
|
||||||
|
|
||||||
error: aborting due to 2 previous errors
|
error: aborting due to 2 previous errors
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue