Age | Commit message (Collapse) | Author |
|
Instructions for this code:
```ruby
# frozen_string_literal: true
[a].pack("C")
```
Before this commit:
```
== disasm: #<ISeq:<main>@test.rb:1 (1,0)-(3,13)>
0000 putself ( 3)[Li]
0001 opt_send_without_block <calldata!mid:a, argc:0, FCALL|VCALL|ARGS_SIMPLE>
0003 newarray 1
0005 putobject "C"
0007 opt_send_without_block <calldata!mid:pack, argc:1, ARGS_SIMPLE>
0009 leave
```
After this commit:
```
== disasm: #<ISeq:<main>@test.rb:1 (1,0)-(3,13)>
0000 putself ( 3)[Li]
0001 opt_send_without_block <calldata!mid:a, argc:0, FCALL|VCALL|ARGS_SIMPLE>
0003 putobject "C"
0005 opt_newarray_send 2, :pack
0008 leave
```
Co-authored-by: Maxime Chevalier-Boisvert <[email protected]>
Co-authored-by: Aaron Patterson <[email protected]>
|
|
https://github.com/ruby/prism/commit/0ae908b6ee
|
|
|
|
|
|
https://github.com/ruby/prism/commit/737f2c2117
|
|
Since 140512d2225e6fd046ba1bdbcd1a27450f55c233, `else` without
`rescue` has been a syntax error.
|
|
I think this fixes the following random test failure that could not be
fixed for a long time:
```
1) Failure:
TestSymbol#test_inspect_under_gc_compact_stress [/home/chkbuild/chkbuild/tmp/build/20240522T003003Z/ruby/test/ruby/test_symbol.rb:126]:
<":testing"> expected but was
<":\"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\"">.
```
The value passed to this function is the return value of `rb_id2str`, so
it is never collected. However, if auto_compact is enabled, the string
may move and `RSTRING_PTR(str)` became invalid.
This change prevents the string from being moved by RB_GC_GUARD.
|
|
|
|
Co-Authored-by: lish82 (Hiroki Katagiri)
|
|
Bumps [ruby/setup-ruby](https://github.com/ruby/setup-ruby) from 1.177.0 to 1.177.1.
- [Release notes](https://github.com/ruby/setup-ruby/releases)
- [Commits](https://github.com/ruby/setup-ruby/compare/7dc18ff0ca6e3630d3f29d2a85ebf6cc27ae9d6c...943103cae7d3f1bb1e4951d5fcc7928b40e4b742)
---
updated-dependencies:
- dependency-name: ruby/setup-ruby
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <[email protected]>
|
|
|
|
https://github.com/ruby/rdoc/commit/a667e616e1
|
|
|
|
https://github.com/ruby/prism/commit/53bbcfe513
|
|
|
|
https://github.com/rubygems/rubygems/commit/022eb473f8
|
|
https://github.com/rubygems/rubygems/commit/592a2fcd54
|
|
Xcode has its own version tools that may be incompatible with genuine
LLVM tools, use the tools in the same directory.
|
|
get_screen_size. Closes https://github.com/ruby/reline/pull/690
(https://github.com/ruby/reline/pull/702)
* Catches exceptions Errno::ENODEV and Errno::EBADF in get_screen_size. Closes https://github.com/ruby/reline/pull/690
* Just catching Errno::ENOTTY and Errno::ENODEV
https://github.com/ruby/reline/commit/a5b5298e4a
|
|
updated-dependencies:
- dependency-name: ruby/setup-ruby
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <[email protected]>
|
|
This reverts commit 8277cf0799145bed0c813bfcc187739f77b3102d.
This change break to build with `rbenv install ruby-dev` with the following error.
```
touch yjit/target/release/libyjit.a
transdb.h updated
./tool/darwin-ar: line 6: /nm: No such file or directory
./tool/darwin-ar: line 6: exec: /nm: cannot execute: No such file or directory
partial linking yjit/target/release/libyjit.a into yjit/target/release/libyjit.o
```
|
|
https://github.com/ruby/prism/commit/79cec4be22
|
|
https://github.com/ruby/prism/commit/77bf9038a2
|
|
|
|
This eliminates the subnode on RationalNode and replaces it with two
integer fields, which represent the ratio for the rational. It also
reduces those two integers if they both fit into 32 bits.
Importantly, this PR does not implement bignum reduction. That's something
I'd like to consider for the future, but it's simple enough for now to
leave them unreduced, which makes it more useful than it used to be.
https://github.com/ruby/prism/commit/86e06c7068
|
|
|
|
|
|
|
|
https://github.com/ruby/prism/commit/c386ba6d48
|
|
As Apple Xcode is relocatable and selectable with `xcode-select`, use
consistent versions of commands in the same location.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Prepare `lhs` as `$:$` before `assignable` and update it there.
Remove `ripper_assignable` which is no longer used.
|
|
Prepare `path` as `$:$` before `const_decl` and update it there.
Remove `ripper_const_decl` which is no longer used.
|
|
|
|
|
|
Now it is used only for wheter `opt_paren_args` is `none`. Introduce
a new special node to distinguish an empty parentheses from it .
|
|
|
|
|
|
Ripper DSL uses these values for callbacks, but does not need indexes.
|
|
|
|
updated-dependencies:
- dependency-name: github/codeql-action
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <[email protected]>
|
|
|
|
|
|
If the method being called does not have a positional splat
parameter, there is no point in allocating the array, as
decrementing given_argc is sufficient to ensure the empty keyword
hash is not considered an argument, assuming that we are calling
a method/lambda and not a regular proc.
|