Skip to content

Commit

Permalink
remove folding
Browse files Browse the repository at this point in the history
  • Loading branch information
tserg committed Dec 26, 2023
1 parent bce87d1 commit e4fb5d8
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 5 deletions.
14 changes: 11 additions & 3 deletions vyper/codegen/expr.py
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,14 @@ class Expr:
# TODO: Once other refactors are made reevaluate all inline imports

def __init__(self, node, context):
# use original node for better diagnostics
orig_node = node
if isinstance(node, vy_ast.VyperNode):
folded_node = node._metadata.get("folded_value")
if folded_node:
folded_node._metadata["type"] = node._metadata["type"]
node = folded_node

self.expr = node
self.context = context

Expand All @@ -80,13 +88,13 @@ def __init__(self, node, context):

fn = getattr(self, f"parse_{type(node).__name__}", None)
if fn is None:
raise TypeCheckFailure(f"Invalid statement node: {type(node).__name__}", node)
raise TypeCheckFailure(f"Invalid statement node: {type(node).__name__}", orig_node)

with tag_exceptions(node, fallback_exception_type=CodegenPanic):
with tag_exceptions(orig_node, fallback_exception_type=CodegenPanic):
self.ir_node = fn()

if self.ir_node is None:
raise TypeCheckFailure(f"{type(node).__name__} node did not produce IR.\n", node)
raise TypeCheckFailure(f"{type(node).__name__} node did not produce IR.\n", orig_node)

self.ir_node.annotation = self.expr.get("node_source_code")
self.ir_node.source_pos = getpos(self.expr)
Expand Down
2 changes: 1 addition & 1 deletion vyper/compiler/phases.py
Original file line number Diff line number Diff line change
Expand Up @@ -280,7 +280,7 @@ def generate_folded_ast(
symbol_tables = set_data_positions(vyper_module, storage_layout_overrides)

vyper_module_folded = copy.deepcopy(vyper_module)
vy_ast.folding.fold(vyper_module_folded)
#vy_ast.folding.fold(vyper_module_folded)

return vyper_module_folded, symbol_tables

Expand Down
2 changes: 1 addition & 1 deletion vyper/semantics/analysis/module.py
Original file line number Diff line number Diff line change
Expand Up @@ -495,7 +495,7 @@ def _parse_and_fold_ast(file: FileInput) -> vy_ast.VyperNode:
resolved_path=str(file.resolved_path),
)
vy_ast.validation.validate_literal_nodes(ret)
vy_ast.folding.fold(ret)
#vy_ast.folding.fold(ret)

return ret

Expand Down

0 comments on commit e4fb5d8

Please sign in to comment.