diff --git a/slither/core/declarations/contract.py b/slither/core/declarations/contract.py index ced770c48..aba7ffdf8 100644 --- a/slither/core/declarations/contract.py +++ b/slither/core/declarations/contract.py @@ -836,15 +836,15 @@ class Contract(ChildSlither, SourceMapping): # pylint: disable=too-many-public- :return: list of string """ all_erc = [ - ("ERC20", lambda x: x.is_erc20()), - ("ERC165", lambda x: x.is_erc165()), - ("ERC1820", lambda x: x.is_erc1820()), - ("ERC223", lambda x: x.is_erc223()), - ("ERC721", lambda x: x.is_erc721()), - ("ERC777", lambda x: x.is_erc777()), + ("ERC20", self.is_erc20), + ("ERC165", self.is_erc165), + ("ERC1820", self.is_erc1820), + ("ERC223", self.is_erc223), + ("ERC721", self.is_erc721), + ("ERC777", self.is_erc777), ] - return [erc[0] for erc in all_erc if erc[1](self)] + return [erc for erc, is_erc in all_erc if is_erc()] def is_erc20(self) -> bool: """ @@ -854,7 +854,7 @@ class Contract(ChildSlither, SourceMapping): # pylint: disable=too-many-public- :return: Returns a true if the contract is an erc20 """ full_names = self.functions_signatures - return all((s in full_names for s in ERC20_signatures)) + return all(s in full_names for s in ERC20_signatures) def is_erc165(self) -> bool: """ @@ -864,7 +864,7 @@ class Contract(ChildSlither, SourceMapping): # pylint: disable=too-many-public- :return: Returns a true if the contract is an erc165 """ full_names = self.functions_signatures - return all((s in full_names for s in ERC165_signatures)) + return all(s in full_names for s in ERC165_signatures) def is_erc1820(self) -> bool: """ @@ -874,7 +874,7 @@ class Contract(ChildSlither, SourceMapping): # pylint: disable=too-many-public- :return: Returns a true if the contract is an erc165 """ full_names = self.functions_signatures - return all((s in full_names for s in ERC1820_signatures)) + return all(s in full_names for s in ERC1820_signatures) def is_erc223(self) -> bool: """ @@ -884,7 +884,7 @@ class Contract(ChildSlither, SourceMapping): # pylint: disable=too-many-public- :return: Returns a true if the contract is an erc223 """ full_names = self.functions_signatures - return all((s in full_names for s in ERC223_signatures)) + return all(s in full_names for s in ERC223_signatures) def is_erc721(self) -> bool: """ @@ -894,7 +894,7 @@ class Contract(ChildSlither, SourceMapping): # pylint: disable=too-many-public- :return: Returns a true if the contract is an erc721 """ full_names = self.functions_signatures - return all((s in full_names for s in ERC721_signatures)) + return all(s in full_names for s in ERC721_signatures) def is_erc777(self) -> bool: """ @@ -904,7 +904,7 @@ class Contract(ChildSlither, SourceMapping): # pylint: disable=too-many-public- :return: Returns a true if the contract is an erc165 """ full_names = self.functions_signatures - return all((s in full_names for s in ERC777_signatures)) + return all(s in full_names for s in ERC777_signatures) @property def is_token(self) -> bool: diff --git a/slither/core/solidity_types/elementary_type.py b/slither/core/solidity_types/elementary_type.py index d958c9bf9..abb7852d9 100644 --- a/slither/core/solidity_types/elementary_type.py +++ b/slither/core/solidity_types/elementary_type.py @@ -5,6 +5,7 @@ from slither.core.solidity_types.type import Type # see https://solidity.readthedocs.io/en/v0.4.24/miscellaneous.html?highlight=grammar +from slither.exceptions import SlitherException Int = [ "int", @@ -42,6 +43,9 @@ Int = [ "int256", ] +Max_Int = {k: 2 ** (8 * i - 1) - 1 if i > 0 else 2 ** 255 - 1 for i, k in enumerate(Int)} +Min_Int = {k: -(2 ** (8 * i - 1)) if i > 0 else -(2 ** 255) for i, k in enumerate(Int)} + Uint = [ "uint", "uint8", @@ -78,6 +82,12 @@ Uint = [ "uint256", ] +Max_Uint = {k: 2 ** (8 * i) - 1 if i > 0 else 2 ** 256 - 1 for i, k in enumerate(Uint)} +Min_Uint = {k: 0 for k in Uint} + +MaxValues = dict(Max_Int, **Max_Uint) +MinValues = dict(Min_Int, **Min_Uint) + Byte = [ "byte", "bytes", @@ -180,6 +190,18 @@ class ElementaryType(Type): return 32, True return int(self.size / 8), False + @property + def min(self) -> int: + if self.name in MinValues: + return MinValues[self.name] + raise SlitherException(f"{self.name} does not have a min value") + + @property + def max(self) -> int: + if self.name in MaxValues: + return MaxValues[self.name] + raise SlitherException(f"{self.name} does not have a max value") + def __str__(self): return self._type diff --git a/slither/slithir/convert.py b/slither/slithir/convert.py index e7441763f..2e174ef8f 100644 --- a/slither/slithir/convert.py +++ b/slither/slithir/convert.py @@ -428,6 +428,9 @@ def _convert_type_contract(ir, slither): assignment.lvalue.set_type(ElementaryType("string")) return assignment + if isinstance(contract, ElementaryType): + print(contract.type) + raise SlithIRError(f"type({contract.name}).{ir.variable_right} is unknown") @@ -1411,6 +1414,12 @@ def remove_unused(result): if not ins.lvalue.name in to_keep and ins != last_elem: to_remove.append(ins) removed = True + # Remove type(X) if X is an elementary type + # This assume that type(X) is only used with min/max + # If Solidity introduces other operation, we might remove this removal + if isinstance(ins, SolidityCall) and ins.function == SolidityFunction("type()"): + if isinstance(ins.arguments[0], ElementaryType): + to_remove.append(ins) result = [i for i in result if not i in to_remove] return result diff --git a/slither/visitors/slithir/expression_to_slithir.py b/slither/visitors/slithir/expression_to_slithir.py index eef7b23c5..1fc024fb8 100644 --- a/slither/visitors/slithir/expression_to_slithir.py +++ b/slither/visitors/slithir/expression_to_slithir.py @@ -4,11 +4,15 @@ from slither.core.declarations import ( Function, SolidityVariable, SolidityVariableComposed, + SolidityFunction, ) from slither.core.expressions import ( AssignmentOperationType, UnaryOperationType, BinaryOperationType, + ElementaryTypeNameExpression, + CallExpression, + Identifier, ) from slither.core.solidity_types import ArrayType, ElementaryType from slither.core.solidity_types.type import Type @@ -350,6 +354,29 @@ class ExpressionToSlithIR(ExpressionVisitor): def _post_member_access(self, expression): expr = get(expression.expression) + + # Look for type(X).max / min + # Because we looked at the AST structure, we need to look into the nested expression + # Hopefully this is always on a direct sub field, and there is no weird construction + if isinstance(expression.expression, CallExpression) and expression.member_name in [ + "min", + "max", + ]: + if isinstance(expression.expression.called, Identifier): + if expression.expression.called.value == SolidityFunction("type()"): + assert len(expression.expression.arguments) == 1 + val = TemporaryVariable(self._node) + type_expression_found = expression.expression.arguments[0] + assert isinstance(type_expression_found, ElementaryTypeNameExpression) + type_found = type_expression_found.type + if expression.member_name == "min:": + op = Assignment(val, Constant(str(type_found.min), type_found), type_found,) + else: + op = Assignment(val, Constant(str(type_found.max), type_found), type_found,) + self._result.append(op) + set_val(expression, val) + return + val = ReferenceVariable(self._node) member = Member(expr, Constant(expression.member_name), val) member.set_expression(expression) diff --git a/tests/ast-parsing/expected/minmax-0.4.0-legacy.json b/tests/ast-parsing/expected/minmax-0.4.0-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.4.0-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.4.1-legacy.json b/tests/ast-parsing/expected/minmax-0.4.1-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.4.1-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.4.10-legacy.json b/tests/ast-parsing/expected/minmax-0.4.10-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.4.10-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.4.11-legacy.json b/tests/ast-parsing/expected/minmax-0.4.11-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.4.11-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.4.12-compact.json b/tests/ast-parsing/expected/minmax-0.4.12-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.4.12-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.4.12-legacy.json b/tests/ast-parsing/expected/minmax-0.4.12-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.4.12-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.4.13-compact.json b/tests/ast-parsing/expected/minmax-0.4.13-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.4.13-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.4.13-legacy.json b/tests/ast-parsing/expected/minmax-0.4.13-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.4.13-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.4.14-compact.json b/tests/ast-parsing/expected/minmax-0.4.14-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.4.14-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.4.14-legacy.json b/tests/ast-parsing/expected/minmax-0.4.14-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.4.14-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.4.15-compact.json b/tests/ast-parsing/expected/minmax-0.4.15-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.4.15-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.4.15-legacy.json b/tests/ast-parsing/expected/minmax-0.4.15-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.4.15-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.4.16-compact.json b/tests/ast-parsing/expected/minmax-0.4.16-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.4.16-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.4.16-legacy.json b/tests/ast-parsing/expected/minmax-0.4.16-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.4.16-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.4.17-compact.json b/tests/ast-parsing/expected/minmax-0.4.17-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.4.17-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.4.17-legacy.json b/tests/ast-parsing/expected/minmax-0.4.17-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.4.17-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.4.18-compact.json b/tests/ast-parsing/expected/minmax-0.4.18-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.4.18-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.4.18-legacy.json b/tests/ast-parsing/expected/minmax-0.4.18-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.4.18-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.4.19-compact.json b/tests/ast-parsing/expected/minmax-0.4.19-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.4.19-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.4.19-legacy.json b/tests/ast-parsing/expected/minmax-0.4.19-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.4.19-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.4.2-legacy.json b/tests/ast-parsing/expected/minmax-0.4.2-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.4.2-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.4.20-compact.json b/tests/ast-parsing/expected/minmax-0.4.20-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.4.20-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.4.20-legacy.json b/tests/ast-parsing/expected/minmax-0.4.20-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.4.20-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.4.21-compact.json b/tests/ast-parsing/expected/minmax-0.4.21-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.4.21-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.4.21-legacy.json b/tests/ast-parsing/expected/minmax-0.4.21-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.4.21-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.4.22-compact.json b/tests/ast-parsing/expected/minmax-0.4.22-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.4.22-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.4.22-legacy.json b/tests/ast-parsing/expected/minmax-0.4.22-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.4.22-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.4.23-compact.json b/tests/ast-parsing/expected/minmax-0.4.23-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.4.23-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.4.23-legacy.json b/tests/ast-parsing/expected/minmax-0.4.23-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.4.23-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.4.24-compact.json b/tests/ast-parsing/expected/minmax-0.4.24-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.4.24-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.4.24-legacy.json b/tests/ast-parsing/expected/minmax-0.4.24-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.4.24-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.4.25-compact.json b/tests/ast-parsing/expected/minmax-0.4.25-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.4.25-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.4.25-legacy.json b/tests/ast-parsing/expected/minmax-0.4.25-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.4.25-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.4.26-compact.json b/tests/ast-parsing/expected/minmax-0.4.26-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.4.26-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.4.26-legacy.json b/tests/ast-parsing/expected/minmax-0.4.26-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.4.26-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.4.3-legacy.json b/tests/ast-parsing/expected/minmax-0.4.3-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.4.3-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.4.4-legacy.json b/tests/ast-parsing/expected/minmax-0.4.4-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.4.4-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.4.5-legacy.json b/tests/ast-parsing/expected/minmax-0.4.5-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.4.5-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.4.6-legacy.json b/tests/ast-parsing/expected/minmax-0.4.6-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.4.6-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.4.7-legacy.json b/tests/ast-parsing/expected/minmax-0.4.7-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.4.7-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.4.8-legacy.json b/tests/ast-parsing/expected/minmax-0.4.8-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.4.8-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.4.9-legacy.json b/tests/ast-parsing/expected/minmax-0.4.9-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.4.9-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.5.0-compact.json b/tests/ast-parsing/expected/minmax-0.5.0-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.5.0-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.5.0-legacy.json b/tests/ast-parsing/expected/minmax-0.5.0-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.5.0-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.5.1-compact.json b/tests/ast-parsing/expected/minmax-0.5.1-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.5.1-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.5.1-legacy.json b/tests/ast-parsing/expected/minmax-0.5.1-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.5.1-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.5.10-compact.json b/tests/ast-parsing/expected/minmax-0.5.10-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.5.10-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.5.10-legacy.json b/tests/ast-parsing/expected/minmax-0.5.10-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.5.10-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.5.11-compact.json b/tests/ast-parsing/expected/minmax-0.5.11-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.5.11-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.5.11-legacy.json b/tests/ast-parsing/expected/minmax-0.5.11-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.5.11-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.5.12-compact.json b/tests/ast-parsing/expected/minmax-0.5.12-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.5.12-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.5.12-legacy.json b/tests/ast-parsing/expected/minmax-0.5.12-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.5.12-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.5.13-compact.json b/tests/ast-parsing/expected/minmax-0.5.13-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.5.13-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.5.13-legacy.json b/tests/ast-parsing/expected/minmax-0.5.13-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.5.13-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.5.14-compact.json b/tests/ast-parsing/expected/minmax-0.5.14-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.5.14-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.5.14-legacy.json b/tests/ast-parsing/expected/minmax-0.5.14-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.5.14-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.5.15-compact.json b/tests/ast-parsing/expected/minmax-0.5.15-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.5.15-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.5.15-legacy.json b/tests/ast-parsing/expected/minmax-0.5.15-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.5.15-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.5.16-compact.json b/tests/ast-parsing/expected/minmax-0.5.16-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.5.16-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.5.16-legacy.json b/tests/ast-parsing/expected/minmax-0.5.16-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.5.16-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.5.17-compact.json b/tests/ast-parsing/expected/minmax-0.5.17-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.5.17-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.5.17-legacy.json b/tests/ast-parsing/expected/minmax-0.5.17-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.5.17-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.5.2-compact.json b/tests/ast-parsing/expected/minmax-0.5.2-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.5.2-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.5.2-legacy.json b/tests/ast-parsing/expected/minmax-0.5.2-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.5.2-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.5.3-compact.json b/tests/ast-parsing/expected/minmax-0.5.3-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.5.3-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.5.3-legacy.json b/tests/ast-parsing/expected/minmax-0.5.3-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.5.3-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.5.4-compact.json b/tests/ast-parsing/expected/minmax-0.5.4-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.5.4-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.5.4-legacy.json b/tests/ast-parsing/expected/minmax-0.5.4-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.5.4-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.5.5-compact.json b/tests/ast-parsing/expected/minmax-0.5.5-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.5.5-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.5.5-legacy.json b/tests/ast-parsing/expected/minmax-0.5.5-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.5.5-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.5.6-compact.json b/tests/ast-parsing/expected/minmax-0.5.6-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.5.6-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.5.6-legacy.json b/tests/ast-parsing/expected/minmax-0.5.6-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.5.6-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.5.7-compact.json b/tests/ast-parsing/expected/minmax-0.5.7-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.5.7-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.5.7-legacy.json b/tests/ast-parsing/expected/minmax-0.5.7-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.5.7-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.5.8-compact.json b/tests/ast-parsing/expected/minmax-0.5.8-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.5.8-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.5.8-legacy.json b/tests/ast-parsing/expected/minmax-0.5.8-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.5.8-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.5.9-compact.json b/tests/ast-parsing/expected/minmax-0.5.9-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.5.9-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.5.9-legacy.json b/tests/ast-parsing/expected/minmax-0.5.9-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.5.9-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.6.0-compact.json b/tests/ast-parsing/expected/minmax-0.6.0-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.6.0-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.6.0-legacy.json b/tests/ast-parsing/expected/minmax-0.6.0-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.6.0-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.6.1-compact.json b/tests/ast-parsing/expected/minmax-0.6.1-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.6.1-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.6.1-legacy.json b/tests/ast-parsing/expected/minmax-0.6.1-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.6.1-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.6.10-compact.json b/tests/ast-parsing/expected/minmax-0.6.10-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.6.10-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.6.10-legacy.json b/tests/ast-parsing/expected/minmax-0.6.10-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.6.10-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.6.11-compact.json b/tests/ast-parsing/expected/minmax-0.6.11-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.6.11-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.6.11-legacy.json b/tests/ast-parsing/expected/minmax-0.6.11-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.6.11-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.6.12-compact.json b/tests/ast-parsing/expected/minmax-0.6.12-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.6.12-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.6.12-legacy.json b/tests/ast-parsing/expected/minmax-0.6.12-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.6.12-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.6.2-compact.json b/tests/ast-parsing/expected/minmax-0.6.2-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.6.2-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.6.2-legacy.json b/tests/ast-parsing/expected/minmax-0.6.2-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.6.2-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.6.3-compact.json b/tests/ast-parsing/expected/minmax-0.6.3-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.6.3-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.6.3-legacy.json b/tests/ast-parsing/expected/minmax-0.6.3-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.6.3-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.6.4-compact.json b/tests/ast-parsing/expected/minmax-0.6.4-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.6.4-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.6.4-legacy.json b/tests/ast-parsing/expected/minmax-0.6.4-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.6.4-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.6.5-compact.json b/tests/ast-parsing/expected/minmax-0.6.5-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.6.5-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.6.5-legacy.json b/tests/ast-parsing/expected/minmax-0.6.5-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.6.5-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.6.6-compact.json b/tests/ast-parsing/expected/minmax-0.6.6-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.6.6-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.6.6-legacy.json b/tests/ast-parsing/expected/minmax-0.6.6-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.6.6-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.6.7-compact.json b/tests/ast-parsing/expected/minmax-0.6.7-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.6.7-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.6.7-legacy.json b/tests/ast-parsing/expected/minmax-0.6.7-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.6.7-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.6.8-compact.json b/tests/ast-parsing/expected/minmax-0.6.8-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.6.8-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.6.8-legacy.json b/tests/ast-parsing/expected/minmax-0.6.8-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.6.8-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.6.9-compact.json b/tests/ast-parsing/expected/minmax-0.6.9-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.6.9-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.6.9-legacy.json b/tests/ast-parsing/expected/minmax-0.6.9-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.6.9-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.7.0-compact.json b/tests/ast-parsing/expected/minmax-0.7.0-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.7.0-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.7.0-legacy.json b/tests/ast-parsing/expected/minmax-0.7.0-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.7.0-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.7.1-compact.json b/tests/ast-parsing/expected/minmax-0.7.1-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.7.1-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.7.1-legacy.json b/tests/ast-parsing/expected/minmax-0.7.1-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.7.1-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.7.2-compact.json b/tests/ast-parsing/expected/minmax-0.7.2-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.7.2-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.7.2-legacy.json b/tests/ast-parsing/expected/minmax-0.7.2-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.7.2-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.7.3-compact.json b/tests/ast-parsing/expected/minmax-0.7.3-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.7.3-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.7.3-legacy.json b/tests/ast-parsing/expected/minmax-0.7.3-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.7.3-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.7.4-compact.json b/tests/ast-parsing/expected/minmax-0.7.4-compact.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.7.4-compact.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/minmax-0.7.4-legacy.json b/tests/ast-parsing/expected/minmax-0.7.4-legacy.json new file mode 100644 index 000000000..228af371a --- /dev/null +++ b/tests/ast-parsing/expected/minmax-0.7.4-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f()": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.4.0-legacy.json b/tests/ast-parsing/expected/yul-0.4.0-legacy.json new file mode 100644 index 000000000..8f6ef922b --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.4.0-legacy.json @@ -0,0 +1,5 @@ +{ + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.4.1-legacy.json b/tests/ast-parsing/expected/yul-0.4.1-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.4.1-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.4.10-legacy.json b/tests/ast-parsing/expected/yul-0.4.10-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.4.10-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.4.11-legacy.json b/tests/ast-parsing/expected/yul-0.4.11-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.4.11-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.4.12-compact.json b/tests/ast-parsing/expected/yul-0.4.12-compact.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.4.12-compact.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.4.12-legacy.json b/tests/ast-parsing/expected/yul-0.4.12-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.4.12-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.4.13-compact.json b/tests/ast-parsing/expected/yul-0.4.13-compact.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.4.13-compact.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.4.13-legacy.json b/tests/ast-parsing/expected/yul-0.4.13-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.4.13-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.4.14-compact.json b/tests/ast-parsing/expected/yul-0.4.14-compact.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.4.14-compact.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.4.14-legacy.json b/tests/ast-parsing/expected/yul-0.4.14-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.4.14-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.4.15-compact.json b/tests/ast-parsing/expected/yul-0.4.15-compact.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.4.15-compact.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.4.15-legacy.json b/tests/ast-parsing/expected/yul-0.4.15-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.4.15-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.4.16-compact.json b/tests/ast-parsing/expected/yul-0.4.16-compact.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.4.16-compact.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.4.16-legacy.json b/tests/ast-parsing/expected/yul-0.4.16-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.4.16-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.4.17-compact.json b/tests/ast-parsing/expected/yul-0.4.17-compact.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.4.17-compact.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.4.17-legacy.json b/tests/ast-parsing/expected/yul-0.4.17-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.4.17-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.4.18-compact.json b/tests/ast-parsing/expected/yul-0.4.18-compact.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.4.18-compact.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.4.18-legacy.json b/tests/ast-parsing/expected/yul-0.4.18-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.4.18-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.4.19-compact.json b/tests/ast-parsing/expected/yul-0.4.19-compact.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.4.19-compact.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.4.19-legacy.json b/tests/ast-parsing/expected/yul-0.4.19-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.4.19-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.4.2-legacy.json b/tests/ast-parsing/expected/yul-0.4.2-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.4.2-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.4.20-compact.json b/tests/ast-parsing/expected/yul-0.4.20-compact.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.4.20-compact.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.4.20-legacy.json b/tests/ast-parsing/expected/yul-0.4.20-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.4.20-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.4.21-compact.json b/tests/ast-parsing/expected/yul-0.4.21-compact.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.4.21-compact.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.4.21-legacy.json b/tests/ast-parsing/expected/yul-0.4.21-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.4.21-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.4.22-compact.json b/tests/ast-parsing/expected/yul-0.4.22-compact.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.4.22-compact.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.4.22-legacy.json b/tests/ast-parsing/expected/yul-0.4.22-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.4.22-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.4.23-compact.json b/tests/ast-parsing/expected/yul-0.4.23-compact.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.4.23-compact.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.4.23-legacy.json b/tests/ast-parsing/expected/yul-0.4.23-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.4.23-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.4.24-compact.json b/tests/ast-parsing/expected/yul-0.4.24-compact.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.4.24-compact.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.4.24-legacy.json b/tests/ast-parsing/expected/yul-0.4.24-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.4.24-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.4.25-compact.json b/tests/ast-parsing/expected/yul-0.4.25-compact.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.4.25-compact.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.4.25-legacy.json b/tests/ast-parsing/expected/yul-0.4.25-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.4.25-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.4.26-compact.json b/tests/ast-parsing/expected/yul-0.4.26-compact.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.4.26-compact.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.4.26-legacy.json b/tests/ast-parsing/expected/yul-0.4.26-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.4.26-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.4.3-legacy.json b/tests/ast-parsing/expected/yul-0.4.3-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.4.3-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.4.4-legacy.json b/tests/ast-parsing/expected/yul-0.4.4-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.4.4-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.4.5-legacy.json b/tests/ast-parsing/expected/yul-0.4.5-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.4.5-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.4.6-legacy.json b/tests/ast-parsing/expected/yul-0.4.6-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.4.6-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.4.7-legacy.json b/tests/ast-parsing/expected/yul-0.4.7-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.4.7-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.4.8-legacy.json b/tests/ast-parsing/expected/yul-0.4.8-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.4.8-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.4.9-legacy.json b/tests/ast-parsing/expected/yul-0.4.9-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.4.9-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.5.0-compact.json b/tests/ast-parsing/expected/yul-0.5.0-compact.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.5.0-compact.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.5.0-legacy.json b/tests/ast-parsing/expected/yul-0.5.0-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.5.0-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.5.1-compact.json b/tests/ast-parsing/expected/yul-0.5.1-compact.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.5.1-compact.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.5.1-legacy.json b/tests/ast-parsing/expected/yul-0.5.1-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.5.1-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.5.10-compact.json b/tests/ast-parsing/expected/yul-0.5.10-compact.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.5.10-compact.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.5.10-legacy.json b/tests/ast-parsing/expected/yul-0.5.10-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.5.10-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.5.11-compact.json b/tests/ast-parsing/expected/yul-0.5.11-compact.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.5.11-compact.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.5.11-legacy.json b/tests/ast-parsing/expected/yul-0.5.11-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.5.11-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.5.12-compact.json b/tests/ast-parsing/expected/yul-0.5.12-compact.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.5.12-compact.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.5.12-legacy.json b/tests/ast-parsing/expected/yul-0.5.12-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.5.12-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.5.13-compact.json b/tests/ast-parsing/expected/yul-0.5.13-compact.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.5.13-compact.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.5.13-legacy.json b/tests/ast-parsing/expected/yul-0.5.13-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.5.13-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.5.14-compact.json b/tests/ast-parsing/expected/yul-0.5.14-compact.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.5.14-compact.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.5.14-legacy.json b/tests/ast-parsing/expected/yul-0.5.14-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.5.14-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.5.15-compact.json b/tests/ast-parsing/expected/yul-0.5.15-compact.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.5.15-compact.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.5.15-legacy.json b/tests/ast-parsing/expected/yul-0.5.15-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.5.15-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.5.16-compact.json b/tests/ast-parsing/expected/yul-0.5.16-compact.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.5.16-compact.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.5.16-legacy.json b/tests/ast-parsing/expected/yul-0.5.16-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.5.16-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.5.17-compact.json b/tests/ast-parsing/expected/yul-0.5.17-compact.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.5.17-compact.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.5.17-legacy.json b/tests/ast-parsing/expected/yul-0.5.17-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.5.17-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.5.2-compact.json b/tests/ast-parsing/expected/yul-0.5.2-compact.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.5.2-compact.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.5.2-legacy.json b/tests/ast-parsing/expected/yul-0.5.2-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.5.2-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.5.3-compact.json b/tests/ast-parsing/expected/yul-0.5.3-compact.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.5.3-compact.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.5.3-legacy.json b/tests/ast-parsing/expected/yul-0.5.3-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.5.3-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.5.4-compact.json b/tests/ast-parsing/expected/yul-0.5.4-compact.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.5.4-compact.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.5.4-legacy.json b/tests/ast-parsing/expected/yul-0.5.4-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.5.4-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.5.5-compact.json b/tests/ast-parsing/expected/yul-0.5.5-compact.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.5.5-compact.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.5.5-legacy.json b/tests/ast-parsing/expected/yul-0.5.5-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.5.5-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.5.6-compact.json b/tests/ast-parsing/expected/yul-0.5.6-compact.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.5.6-compact.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.5.6-legacy.json b/tests/ast-parsing/expected/yul-0.5.6-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.5.6-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.5.7-compact.json b/tests/ast-parsing/expected/yul-0.5.7-compact.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.5.7-compact.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.5.7-legacy.json b/tests/ast-parsing/expected/yul-0.5.7-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.5.7-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.5.8-compact.json b/tests/ast-parsing/expected/yul-0.5.8-compact.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.5.8-compact.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.5.8-legacy.json b/tests/ast-parsing/expected/yul-0.5.8-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.5.8-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.5.9-compact.json b/tests/ast-parsing/expected/yul-0.5.9-compact.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.5.9-compact.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.5.9-legacy.json b/tests/ast-parsing/expected/yul-0.5.9-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.5.9-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.6.0-legacy.json b/tests/ast-parsing/expected/yul-0.6.0-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.6.0-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.6.1-legacy.json b/tests/ast-parsing/expected/yul-0.6.1-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.6.1-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.6.10-legacy.json b/tests/ast-parsing/expected/yul-0.6.10-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.6.10-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.6.11-legacy.json b/tests/ast-parsing/expected/yul-0.6.11-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.6.11-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.6.12-legacy.json b/tests/ast-parsing/expected/yul-0.6.12-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.6.12-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.6.2-legacy.json b/tests/ast-parsing/expected/yul-0.6.2-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.6.2-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.6.3-legacy.json b/tests/ast-parsing/expected/yul-0.6.3-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.6.3-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.6.4-legacy.json b/tests/ast-parsing/expected/yul-0.6.4-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.6.4-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.6.5-legacy.json b/tests/ast-parsing/expected/yul-0.6.5-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.6.5-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.6.6-legacy.json b/tests/ast-parsing/expected/yul-0.6.6-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.6.6-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.6.7-legacy.json b/tests/ast-parsing/expected/yul-0.6.7-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.6.7-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.6.8-legacy.json b/tests/ast-parsing/expected/yul-0.6.8-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.6.8-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.6.9-legacy.json b/tests/ast-parsing/expected/yul-0.6.9-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.6.9-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.7.0-legacy.json b/tests/ast-parsing/expected/yul-0.7.0-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.7.0-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.7.1-legacy.json b/tests/ast-parsing/expected/yul-0.7.1-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.7.1-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/expected/yul-0.7.2-legacy.json b/tests/ast-parsing/expected/yul-0.7.2-legacy.json new file mode 100644 index 000000000..a9569a2fb --- /dev/null +++ b/tests/ast-parsing/expected/yul-0.7.2-legacy.json @@ -0,0 +1,6 @@ +{ + "L": {}, + "C": { + "f(uint256,uint256[])": "digraph{\n0[label=\"Node Type: ENTRY_POINT 0\n\"];\n0->1;\n1[label=\"Node Type: NEW VARIABLE 1\n\"];\n1->2;\n2[label=\"Node Type: NEW VARIABLE 2\n\"];\n2->3;\n3[label=\"Node Type: INLINE ASM 3\n\"];\n}\n" + } +} \ No newline at end of file diff --git a/tests/ast-parsing/minmax-0.4.0.sol b/tests/ast-parsing/minmax-0.4.0.sol new file mode 100644 index 000000000..6bcc0cae5 --- /dev/null +++ b/tests/ast-parsing/minmax-0.4.0.sol @@ -0,0 +1,9 @@ +contract C{ + + function f() public{ + + uint a = 0; // min/max not supported yet + + } + +} diff --git a/tests/ast-parsing/minmax-0.6.8.sol b/tests/ast-parsing/minmax-0.6.8.sol new file mode 100644 index 000000000..cb22b7d9b --- /dev/null +++ b/tests/ast-parsing/minmax-0.6.8.sol @@ -0,0 +1,9 @@ +contract C{ + + function f() public{ + + uint a = type(uint).max; + + } + +} diff --git a/tests/ast-parsing/yul-0.4.0.sol b/tests/ast-parsing/yul-0.4.0.sol new file mode 100644 index 000000000..01e696872 --- /dev/null +++ b/tests/ast-parsing/yul-0.4.0.sol @@ -0,0 +1,28 @@ +contract C { + uint storA; + uint[] storB; + bool storC; + + function f(uint paramA, uint[] memory paramB) public returns (uint retA, uint[] memory retB) { + uint localA; + uint[] memory localB; + + assembly { + let aParamA := paramA + let aRetA := retA + let aLocalA := localA + + paramA := 0 + retA := 0 + localA := 0 + + let aParamB := mload(paramB) + let aRetB := mload(retB) + let aLocalB := mload(localB) + + mstore(paramB, 0) + mstore(retB, 0) + mstore(localB, 0) + } + } +} \ No newline at end of file diff --git a/tests/ast-parsing/yul-0.4.1.sol b/tests/ast-parsing/yul-0.4.1.sol new file mode 100644 index 000000000..59024dd77 --- /dev/null +++ b/tests/ast-parsing/yul-0.4.1.sol @@ -0,0 +1,34 @@ +library L { + +} + +contract C { + uint storA; + uint[] storB; + bool storC; + + function f(uint paramA, uint[] memory paramB) public returns (uint retA, uint[] memory retB) { + uint localA; + uint[] memory localB; + + assembly { + let aParamA := paramA + let aRetA := retA + let aLocalA := localA + + paramA := 0 + retA := 0 + localA := 0 + + let aParamB := mload(paramB) + let aRetB := mload(retB) + let aLocalB := mload(localB) + + mstore(paramB, 0) + mstore(retB, 0) + mstore(localB, 0) + + let libAddr := L + } + } +} \ No newline at end of file diff --git a/tests/ast-parsing/yul-0.4.11.sol b/tests/ast-parsing/yul-0.4.11.sol new file mode 100644 index 000000000..e67f2b5bf --- /dev/null +++ b/tests/ast-parsing/yul-0.4.11.sol @@ -0,0 +1,40 @@ +library L { + +} + +contract C { + uint storA; + uint[] storB; + bool storC; + + function f(uint paramA, uint[] memory paramB) public returns (uint retA, uint[] memory retB) { + uint localA; + uint[] memory localB; + + assembly { + let aStorA := sload(storA_slot) + let aParamA := paramA + let aRetA := retA + let aLocalA := localA + + sstore(storA_slot, 0) + paramA := 0 + retA := 0 + localA := 0 + + let aStorB := sload(storB_slot) + let aParamB := mload(paramB) + let aRetB := mload(retB) + let aLocalB := mload(localB) + + sstore(storB_slot, 0) + mstore(paramB, 0) + mstore(retB, 0) + mstore(localB, 0) + + let aStoreC := mul(sload(storC_slot), storC_offset) + + let libAddr := L + } + } +} \ No newline at end of file diff --git a/tests/ast-parsing/yul-0.7.0.sol b/tests/ast-parsing/yul-0.7.0.sol new file mode 100644 index 000000000..eb5de4d88 --- /dev/null +++ b/tests/ast-parsing/yul-0.7.0.sol @@ -0,0 +1,40 @@ +library L { + +} + +contract C { + uint storA; + uint[] storB; + bool storC; + + function f(uint paramA, uint[] memory paramB) public returns (uint retA, uint[] memory retB) { + uint localA; + uint[] memory localB; + + assembly { + let aStorA := sload(storA.slot) + let aParamA := paramA + let aRetA := retA + let aLocalA := localA + + sstore(storA.slot, 0) + paramA := 0 + retA := 0 + localA := 0 + + let aStorB := sload(storB.slot) + let aParamB := mload(paramB) + let aRetB := mload(retB) + let aLocalB := mload(localB) + + sstore(storB.slot, 0) + mstore(paramB, 0) + mstore(retB, 0) + mstore(localB, 0) + + let aStoreC := mul(sload(storC.slot), storC.offset) + + let libAddr := L + } + } +} \ No newline at end of file diff --git a/tests/test_ast_parsing.py b/tests/test_ast_parsing.py index cddaf8673..0b9ca282c 100644 --- a/tests/test_ast_parsing.py +++ b/tests/test_ast_parsing.py @@ -387,6 +387,24 @@ XFAIL = [ "variabledeclaration_0.7.2_legacy", "variabledeclaration_0.7.3_legacy", "variabledeclaration_0.7.4_legacy", + "yul_0.6.0_compact", + "yul_0.6.1_compact", + "yul_0.6.2_compact", + "yul_0.6.3_compact", + "yul_0.6.4_compact", + "yul_0.6.5_compact", + "yul_0.6.6_compact", + "yul_0.6.7_compact", + "yul_0.6.8_compact", + "yul_0.6.9_compact", + "yul_0.6.10_compact", + "yul_0.6.11_compact", + "yul_0.6.12_compact", + "yul_0.7.0_compact", + "yul_0.7.1_compact", + "yul_0.7.2_compact", + "yul_0.7.3_compact", + "yul_0.7.4_compact", ] @@ -462,6 +480,7 @@ def get_all_test() -> List[Item]: base_ver_idx = 0 for solc_ver in solc_versions: + # if it's time to move to the next base version, do it now if base_ver_idx + 1 < len(base_vers) and base_vers[base_ver_idx + 1] == solc_ver: base_ver_idx += 1 @@ -559,7 +578,6 @@ def _generate_test(test_item: Item, skip_existing=False): return set_solc(test_item) - sl = Slither( test_file, solc_force_legacy_json=test_item.is_legacy, @@ -568,9 +586,9 @@ def _generate_test(test_item: Item, skip_existing=False): ) actual = generate_output(sl) - + print(f"Generate {expected_file}") with open(expected_file, "w") as f: - json.dump(actual, f, ident=" ") + json.dump(actual, f, indent=" ") if __name__ == "__main__":