Let locations be ranges, not just specific indexes.

This commit is contained in:
2023-07-22 14:50:06 -07:00
parent a8d32a917f
commit 833c9d5350
9 changed files with 141 additions and 101 deletions

View File

@@ -53,7 +53,7 @@ fn convert_statement(
) -> Vec<ir::Statement> {
match statement {
syntax::Statement::Print(loc, name) => {
let iname = ArcIntern::new(name);
let iname = ArcIntern::new(name.to_string());
let final_name = renames
.get(&iname)
.map(Clone::clone)
@@ -71,7 +71,7 @@ fn convert_statement(
syntax::Statement::Binding(loc, name, expr) => {
let (mut prereqs, expr, ty) =
convert_expression(expr, constraint_db, renames, bindings);
let iname = ArcIntern::new(name);
let iname = ArcIntern::new(name.to_string());
let final_name = if bindings.contains_key(&iname) {
let new_name = ir::gensym(iname.as_str());
renames.insert(iname, new_name.clone());