Merge pull request #19511 from snprajwal/fixmes

chore: clean up some FIXMEs
This commit is contained in:
Lukas Wirth 2025-04-07 10:30:46 +00:00 committed by GitHub
commit 33c3f67764
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 36 additions and 47 deletions

View file

@ -210,8 +210,11 @@ fn expand_subtree(
}
Op::Ignore { name, id } => {
// Expand the variable, but ignore the result. This registers the repetition count.
// FIXME: Any emitted errors are dropped.
let _ = ctx.bindings.get_fragment(name, *id, &mut ctx.nesting, marker);
let e = ctx.bindings.get_fragment(name, *id, &mut ctx.nesting, marker).err();
// FIXME: The error gets dropped if there were any previous errors.
// This should be reworked in a way where the errors can be combined
// and reported rather than storing the first error encountered.
err = err.or(e);
}
Op::Index { depth } => {
let index =
@ -239,9 +242,7 @@ fn expand_subtree(
let mut binding = match ctx.bindings.get(name, ctx.call_site) {
Ok(b) => b,
Err(e) => {
if err.is_none() {
err = Some(e);
}
err = err.or(Some(e));
continue;
}
};

View file

@ -378,7 +378,7 @@ mod tests {
use expect_test::expect;
use crate::{
AstNode, SyntaxKind,
AstNode,
ast::{self, make, syntax_factory::SyntaxFactory},
};
@ -624,20 +624,12 @@ mod tests {
}
if let Some(tail) = parent_fn.body().unwrap().tail_expr() {
// FIXME: We do this because `xtask tidy` will not allow us to have trailing whitespace in the expect string.
if let Some(SyntaxElement::Token(token)) = tail.syntax().prev_sibling_or_token() {
if let SyntaxKind::WHITESPACE = token.kind() {
editor.delete(token);
}
}
editor.delete(tail.syntax().clone());
}
let edit = editor.finish();
let expect = expect![[r#"
fn it() {
}"#]];
let expect = expect![["fn it() {\n \n}"]];
expect.assert_eq(&edit.new_root.to_string());
}
}