From 912b5bab6074d3bb2758c3d489009760d8c519d9 Mon Sep 17 00:00:00 2001 From: Miquel Sabaté Solà Date: Thu, 23 Jan 2025 08:07:54 +0100 Subject: Add support for a single equal sign operator MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Miquel Sabaté Solà --- lib/xixanta/src/parser.rs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'lib') diff --git a/lib/xixanta/src/parser.rs b/lib/xixanta/src/parser.rs index d508003..8672923 100644 --- a/lib/xixanta/src/parser.rs +++ b/lib/xixanta/src/parser.rs @@ -1332,7 +1332,10 @@ impl Parser { }, '=' => match second { '=' => Ok((Some(NodeType::Operation(OperationType::Equal)), 2)), - _ => Err(self.parser_error(format!("unknown operator '={}'", second).as_str())), + // 'ca65' allows a single '=' for comparison as well. This is in + // my humble opinion bad, but existing code uses this, so let's + // add support for it. + _ => Ok((Some(NodeType::Operation(OperationType::Equal)), 1)), }, '!' => match second { '=' => Ok((Some(NodeType::Operation(OperationType::NotEqual)), 2)), -- cgit v1.2.3