diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/main.rs | 6 | ||||
| -rw-r--r-- | src/parse.rs | 3 |
2 files changed, 4 insertions, 5 deletions
diff --git a/src/main.rs b/src/main.rs index dcfd81b..8a51b8e 100644 --- a/src/main.rs +++ b/src/main.rs @@ -36,7 +36,7 @@ fn main() { let source = match std::fs::read(&filename) { Ok(source) => source, Err(error) => { - eprintln!("Error: {error}"); + eprintln!("Error while reading {filename}: {error}"); std::process::exit(1); } }; @@ -64,7 +64,7 @@ fn main() { .filter(|(_, (ctx, tokens))| { let failed = diagnostics::run_token_diagnostics(ctx, tokens).is_none(); has_failed |= failed; - failed + !failed }) .collect::<HashMap<_, _>>(); @@ -74,7 +74,7 @@ fn main() { .filter(|(_, (ctx, document))| { let failed = diagnostics::run_ast_diagnostics(ctx, document).is_none(); has_failed |= failed; - failed + !failed }) .collect::<HashMap<_, _>>(); diff --git a/src/parse.rs b/src/parse.rs index b2e5116..64bbd36 100644 --- a/src/parse.rs +++ b/src/parse.rs @@ -247,7 +247,6 @@ fn parse_element<'a>( lowercase_tag_name, .. } if is_end && stack.contains(&lowercase_tag_name) => { - tokens.next().expect("a token"); break; } TokenType::Tag { is_end, .. } if is_end => { @@ -255,7 +254,7 @@ fn parse_element<'a>( children.push(Node::StrayEndTag(*token)) } TokenType::Tag { .. } => { - children.push(parse_element(tokens, &[], arena).expect("an element")); + children.push(parse_element(tokens, &stack, arena).expect("an element")); } } } |
