| Age | Commit message (Collapse) | Author |
|
[Bug #20668]
The `dest` node is assumed to be a `CDECL`, so overwriting it with
a `LIT` cause a crash on the next iteration.
Co-authored-by: Jean Boussier <jean.boussier@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
For static analysis, it’s better to keep unused literal nodes.
If simply change `block_append` to fall through, both "unused literal ignored"
and "possibly useless use of a literal in void context" warnings
are shown for the same line. But it’s verbose then remove
"unused literal ignored" warning.
This kind of optimization is already implemented on compile.c.
`compile_block` calls `iseq_compile_each0` with `popped = 1` when NODE_BLOCK
has next.
|
|
condition
|
|
Use `peekc` or `nextc` to fetch the next character, instead of reading
from `lex.pcur` directly, for compilers that plain char is signed.
|
|
```
[24688/26146] TestParse#test_named_capture_in_block(eval at /home/chkbuild/chkbuild/tmp/build/20230926T063004Z/ruby/test/ruby/test_parse.rb:999):1: warning: unused literal ignored
(eval at /home/chkbuild/chkbuild/tmp/build/20230926T063004Z/ruby/test/ruby/test_parse.rb:999):1: warning: unused literal ignored
(eval at /home/chkbuild/chkbuild/tmp/build/20230926T063004Z/ruby/test/ruby/test_parse.rb:999):1: warning: unused literal ignored
(eval at /home/chkbuild/chkbuild/tmp/build/20230926T063004Z/ruby/test/ruby/test_parse.rb:999):1: warning: unused literal ignored
(eval at /home/chkbuild/chkbuild/tmp/build/20230926T063004Z/ruby/test/ruby/test_parse.rb:999):1: warning: unused literal ignored
(eval at /home/chkbuild/chkbuild/tmp/build/20230926T063004Z/ruby/test/ruby/test_parse.rb:999):1: warning: possibly useless use of + in void context
= 0.00 s
```
|
|
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/8440
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/8440
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/8440
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/7615
|
|
This fixes an infinite loop possible after ec3542229b29ec93062e9d90e877ea29d3c19472.
For \u{} escapes in regexps, skip validation in the parser, and rely on the regexp
code to handle validation. This is necessary so that invalid unicode escapes in
comments in extended regexps are allowed.
Fixes [Bug #19750]
Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>
Notes:
Merged: https://github.com/ruby/ruby/pull/8003
Merged-By: jeremyevans <code@jeremyevans.net>
|
|
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/7963
|
|
|
|
Not to ignore leading spaces in indented heredoc identifier.
Notes:
Merged: https://github.com/ruby/ruby/pull/7566
|
|
When rewinding looking ahead after newline token, also reset the last
line string, the pointers to it, and the location, not only the line
number.
Notes:
Merged: https://github.com/ruby/ruby/pull/7054
|
|
```
test/ruby/test_parse.rb:1384: warning: assigned but unused variable - obj
test/ruby/test_pattern_matching.rb:1162: warning: unused literal ignored
test/ruby/test_pattern_matching.rb:1165: warning: unused literal ignored
test/ruby/test_pattern_matching.rb:1161: warning: assigned but unused variable - a
test/ruby/test_pattern_matching.rb:1164: warning: assigned but unused variable - b
```
And a newline should be significant here.
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/6087
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/6065
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/6064
Merged-By: nobu <nobu@ruby-lang.org>
|
|
|
|
block to another method without having to provide a name for the
block parameter.
Implements [Feature #11256]
Co-authored-by: Yusuke Endoh mame@ruby-lang.org
Co-authored-by: Nobuyoshi Nakada nobu@ruby-lang.org
Notes:
Merged: https://github.com/ruby/ruby/pull/5051
|
|
|
|
|
|
|
|
This fixes https://bugs.ruby-lang.org/issues/18038. The provided
reproduction showed that this happens in heredocs with double
interpolation. In this case `DSTR` was getting returned but needs to be
convered to a `EVSTR` which is what is returned by the function. There
may be an additional bug here that we weren't able to produce. It seems
odd that `STR` returns `DSTR` while everything else should return
`EVSTR` since the function is `new_evstr`.
[Bug #18038][ruby-core:104597]
Co-authored-by: Aaron Patterson <tenderlove@ruby-lang.org>
Notes:
Merged: https://github.com/ruby/ruby/pull/4664
|
|
As well as `\u`, `\U` should be invalid there too.
And highlight including `u`/`U` not only the backslash before it.
|
|
|
|
|
|
|
|
"experimental_everything" makes the assigned value, it means
the assignment change the state of assigned value.
"experimental_copy" tries to make a deep copy and make copyied object
sharable.
Notes:
Merged: https://github.com/ruby/ruby/pull/3989
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/3950
|
|
* Fixed use of rb_ractor_shareable_p
* Raise Ractor::IsolationError
Notes:
Merged: https://github.com/ruby/ruby/pull/3950
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/3950
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/3950
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/3950
|
|
When `literal`, check if the literal about to be assigned to a
constant is ractor-shareable, otherwise raise `Ractor::Error` at
runtime instead of `SyntaxError`.
Notes:
Merged: https://github.com/ruby/ruby/pull/3950
|
|
Non-literal expression which is not a part of a literal expression
is not a subject of `shareable_literal_value: literal`.
|
|
Instead of suppressing all warnings wholly in each test scripts by
setting `$VERBOSE` to `nil` in `setup` methods.
Notes:
Merged: https://github.com/ruby/ruby/pull/3925
Merged-By: nobu <nobu@ruby-lang.org>
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/3681
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/3681
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/3681
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/3681
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/3681
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/3681
|