-
-
Notifications
You must be signed in to change notification settings - Fork 829
Comparing changes
Open a pull request
base repository: vyperlang/vyper
base: v0.4.1b2
head repository: vyperlang/vyper
compare: v0.4.1b3
- 8 commits
- 33 files changed
- 7 contributors
Commits on Nov 26, 2024
-
fix[venom]: fix duplicate allocas (#4321)
this commit fixes a bug in the ir_node_to_venom translator. previously, `ir_node_to_venom` tried to detect unique allocas based on heuristics. this commit removes the heuristics and fixes the issue in the frontend by passing through a unique ID for each variable in the metadata. this ID is also passed into the `alloca` and `palloca` instructions to aid with debugging. note that this results in improved code, presumably due to more allocas being able to be reified. this commit makes a minor change to the `sqrt()`, builtin, which is to use `z_var.as_ir_node()` instead of `z_var.pos`, since `.as_ir_node()` correctly tags with the alloca metadata. to be maximally conservative, we could branch, only using `z_var.as_ir_node()` if we are using the venom pipeline, but the change should be correct for the legacy pipeline as well anyways. --------- Co-authored-by: Harry Kalogirou <harkal@nlogn.eu>
Configuration menu - View commit details
-
Copy full SHA for cda634d - Browse repository at this point
Copy the full SHA cda634dView commit details -
fix[venom]: add missing extcodesize+hash effects (#4373)
per title -- effects.py was missing extcodesize and extcodehash effects.
Configuration menu - View commit details
-
Copy full SHA for e98e004 - Browse repository at this point
Copy the full SHA e98e004View commit details
Commits on Dec 3, 2024
-
chore[ci]: enable Python
3.13
tests (#4386)python 3.13 was released on oct 7 2024 https://docs.python.org/3/whatsnew/3.13.html
Configuration menu - View commit details
-
Copy full SHA for 794022e - Browse repository at this point
Copy the full SHA 794022eView commit details
Commits on Dec 6, 2024
-
fix[ux]: fix validation for
abi_encode()
method_id
kwarg (#4369)code like in the test case (`abi_encode(..., method_id=b"123")`) will panic due to the assertion in `_parse_method_id()`, since the original typecheck only checked that the method_id is <=4 bytes. this adds a rule to validate that bytestring method ids are exactly 4 bytes directly in `abi_encode()`'s typecheck routine. --------- Co-authored-by: cyberthirst <cyberthirst.eth@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for c8691ac - Browse repository at this point
Copy the full SHA c8691acView commit details
Commits on Dec 9, 2024
-
fix[ux]: fix false positive for overflow in type checker (#4385)
this commit fixes a false positive for integer overflow in the typechecker involving nested pow operations by filtering `OverflowException` in `_validate_op`. the previous code assumed that `validate_numeric_op` could throw anything besides `InvalidOperation`, but for the `Pow` binop, it can throw `OverflowException`. --------- Co-authored-by: Charles Cooper <cooper.charles.m@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for 12ab491 - Browse repository at this point
Copy the full SHA 12ab491View commit details
Commits on Dec 13, 2024
-
fix[tool]: add missing user errors to error map (#4286)
This commit fixes a bug where not all errors are present in the error_map (in the `-f source_map` output). This could happen when the `IRnode` with an error message was optimized out, since the error message was not propagated to its descendants. To resolve this, two changes were made. In `set_error_msg`, the code now ensures that existing error messages are not overwritten if they have already been set. In `IRnode.from_list`, when an `error_msg` argument is provided, it is assigned to all nodes in the list unless a node already has an existing `error_msg`. Both changes were made, since both methods are used in the codebase to set `IRnode.error_msg`.
Configuration menu - View commit details
-
Copy full SHA for c4669d1 - Browse repository at this point
Copy the full SHA c4669d1View commit details -
fix[ux]: add missing filename to syntax exceptions (#4343)
this commit adds a filename to `SyntaxException`s. previously, they did not include filename information because that is typically added from the `Module` AST node fields. but, at the time a `SyntaxException` is thrown, the AST is not yet available, so the normal handler does not have the filename info. this commit adds the filename info in two places where the path is known, one in natspec.py and one in parse.py.
Configuration menu - View commit details
-
Copy full SHA for c951dea - Browse repository at this point
Copy the full SHA c951deaView commit details
Commits on Dec 14, 2024
-
feat[venom]: add venom parser (#4381)
this commit adds a frontend (parser) for venom. it uses the lark library to define a grammar for venom, and constructs an `IRContext` which can be used to emit bytecode. the entry point to the venom compiler is `vyper/cli/venom_main.py`. possible improvements in the future include: - make data section optional in the grammar - make the entry block optional in the grammar (a la llvm) - add asm and opcodes output formats --------- Co-authored-by: Harry Kalogirou <harkal@nlogn.eu> Co-authored-by: Charles Cooper <cooper.charles.m@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for 537313b - Browse repository at this point
Copy the full SHA 537313bView commit details
There are no files selected for viewing