fix: Fix proc-macro API creating malformed negative literals

This commit is contained in:
Lukas Wirth 2025-05-05 13:56:24 +02:00
parent cb18ead726
commit 361a927a71
4 changed files with 83 additions and 27 deletions

View file

@ -248,13 +248,17 @@ fn test_fn_like_mk_literals() {
LITERAL Str string 1
LITERAL CStr cstring 1
LITERAL Float 3.14f64 1
LITERAL Float -3.14f64 1
PUNCH - [alone] 1
LITERAL Float 3.14f64 1
LITERAL Float 3.14 1
PUNCH - [alone] 1
LITERAL Float 3.14 1
LITERAL Float -3.14 1
LITERAL Integer 123i64 1
LITERAL Integer -123i64 1
PUNCH - [alone] 1
LITERAL Integer 123i64 1
LITERAL Integer 123 1
LITERAL Integer -123 1"#]],
PUNCH - [alone] 1
LITERAL Integer 123 1"#]],
expect![[r#"
SUBTREE $$ 42:2@0..100#ROOT2024 42:2@0..100#ROOT2024
@ -266,13 +270,17 @@ fn test_fn_like_mk_literals() {
LITERAL Str string 42:2@0..100#ROOT2024
LITERAL CStr cstring 42:2@0..100#ROOT2024
LITERAL Float 3.14f64 42:2@0..100#ROOT2024
LITERAL Float -3.14f64 42:2@0..100#ROOT2024
PUNCH - [alone] 42:2@0..100#ROOT2024
LITERAL Float 3.14f64 42:2@0..100#ROOT2024
LITERAL Float 3.14 42:2@0..100#ROOT2024
PUNCH - [alone] 42:2@0..100#ROOT2024
LITERAL Float 3.14 42:2@0..100#ROOT2024
LITERAL Float -3.14 42:2@0..100#ROOT2024
LITERAL Integer 123i64 42:2@0..100#ROOT2024
LITERAL Integer -123i64 42:2@0..100#ROOT2024
PUNCH - [alone] 42:2@0..100#ROOT2024
LITERAL Integer 123i64 42:2@0..100#ROOT2024
LITERAL Integer 123 42:2@0..100#ROOT2024
LITERAL Integer -123 42:2@0..100#ROOT2024"#]],
PUNCH - [alone] 42:2@0..100#ROOT2024
LITERAL Integer 123 42:2@0..100#ROOT2024"#]],
);
}
@ -400,7 +408,6 @@ fn test_fn_like_macro_clone_literals() {
);
}
#[test]
fn test_fn_like_macro_negative_literals() {
assert_expand(