We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Rubocop errors when attempting to lint a using a Array#<< and and next.
Array#<<
and next
Rubocop parses and lints the file.
/usr/src # bundle exec rubocop --debug sample.rb For /usr/src: configuration from /usr/src/.rubocop.yml configuration from /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-performance-1.11.5/config/default.yml configuration from /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-performance-1.11.5/config/default.yml Default configuration from /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/config/default.yml Inheriting configuration from /usr/src/.rubocop_todo.yml Use parallel by default. Running parallel inspection undefined method `>' for nil:NilClass /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cop/lint/ambiguous_operator_precedence.rb:90:in `greater_precedence?' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cop/lint/ambiguous_operator_precedence.rb:70:in `on_send' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cop/commissioner.rb:136:in `public_send' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cop/commissioner.rb:136:in `block (2 levels) in trigger_restricted_cops' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cop/commissioner.rb:160:in `with_cop_error_handling' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cop/commissioner.rb:135:in `block in trigger_restricted_cops' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cop/commissioner.rb:134:in `each' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cop/commissioner.rb:134:in `trigger_restricted_cops' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cop/commissioner.rb:70:in `on_send' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-ast-1.11.0/lib/rubocop/ast/traversal.rb:137:in `block in on_dstr' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-ast-1.11.0/lib/rubocop/ast/traversal.rb:137:in `each' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-ast-1.11.0/lib/rubocop/ast/traversal.rb:137:in `on_dstr' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cop/commissioner.rb:71:in `on_and' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-ast-1.11.0/lib/rubocop/ast/traversal.rb:155:in `on_if' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cop/commissioner.rb:71:in `on_if' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-ast-1.11.0/lib/rubocop/ast/traversal.rb:158:in `on_block' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cop/commissioner.rb:71:in `on_block' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-ast-1.11.0/lib/rubocop/ast/traversal.rb:137:in `block in on_dstr' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-ast-1.11.0/lib/rubocop/ast/traversal.rb:137:in `each' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-ast-1.11.0/lib/rubocop/ast/traversal.rb:137:in `on_dstr' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cop/commissioner.rb:71:in `on_begin' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-ast-1.11.0/lib/rubocop/ast/traversal.rb:20:in `walk' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cop/commissioner.rb:86:in `investigate' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cop/team.rb:155:in `investigate_partial' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cop/team.rb:83:in `investigate' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/runner.rb:309:in `inspect_file' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/runner.rb:253:in `block in do_inspection_loop' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/runner.rb:287:in `block in iterate_until_no_changes' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/runner.rb:280:in `loop' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/runner.rb:280:in `iterate_until_no_changes' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/runner.rb:249:in `do_inspection_loop' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/runner.rb:130:in `block in file_offenses' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/runner.rb:155:in `file_offense_cache' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/runner.rb:129:in `file_offenses' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/runner.rb:67:in `block in warm_cache' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/parallel-1.21.0/lib/parallel.rb:515:in `call_with_index' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/parallel-1.21.0/lib/parallel.rb:485:in `process_incoming_jobs' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/parallel-1.21.0/lib/parallel.rb:465:in `block in worker' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/parallel-1.21.0/lib/parallel.rb:456:in `fork' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/parallel-1.21.0/lib/parallel.rb:456:in `worker' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/parallel-1.21.0/lib/parallel.rb:447:in `block in create_workers' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/parallel-1.21.0/lib/parallel.rb:446:in `each' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/parallel-1.21.0/lib/parallel.rb:446:in `each_with_index' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/parallel-1.21.0/lib/parallel.rb:446:in `create_workers' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/parallel-1.21.0/lib/parallel.rb:386:in `work_in_processes' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/parallel-1.21.0/lib/parallel.rb:289:in `map' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/parallel-1.21.0/lib/parallel.rb:238:in `each' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/runner.rb:67:in `warm_cache' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/runner.rb:46:in `run' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cli/command/execute_runner.rb:26:in `block in execute_runner' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cli/command/execute_runner.rb:52:in `with_redirect' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cli/command/execute_runner.rb:25:in `execute_runner' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cli/command/execute_runner.rb:17:in `run' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cli/command.rb:11:in `run' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cli/environment.rb:18:in `run' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cli.rb:71:in `run_command' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cli.rb:78:in `execute_runners' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cli.rb:47:in `run' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/exe/rubocop:12:in `block in <top (required)>' /usr/local/lib/ruby/3.0.0/benchmark.rb:308:in `realtime' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/exe/rubocop:12:in `<top (required)>' /usr/src/vendor/ruby/gems/ruby/3.0.0/bin/rubocop:23:in `load' /usr/src/vendor/ruby/gems/ruby/3.0.0/bin/rubocop:23:in `<top (required)>' /usr/local/bundle/gems/bundler-2.2.27/lib/bundler/cli/exec.rb:58:in `load' /usr/local/bundle/gems/bundler-2.2.27/lib/bundler/cli/exec.rb:58:in `kernel_load' /usr/local/bundle/gems/bundler-2.2.27/lib/bundler/cli/exec.rb:23:in `run' /usr/local/bundle/gems/bundler-2.2.27/lib/bundler/cli.rb:477:in `exec' /usr/local/bundle/gems/bundler-2.2.27/lib/bundler/vendor/thor/lib/thor/command.rb:27:in `run' /usr/local/bundle/gems/bundler-2.2.27/lib/bundler/vendor/thor/lib/thor/invocation.rb:127:in `invoke_command' /usr/local/bundle/gems/bundler-2.2.27/lib/bundler/vendor/thor/lib/thor.rb:392:in `dispatch' /usr/local/bundle/gems/bundler-2.2.27/lib/bundler/cli.rb:31:in `dispatch' /usr/local/bundle/gems/bundler-2.2.27/lib/bundler/vendor/thor/lib/thor/base.rb:485:in `start' /usr/local/bundle/gems/bundler-2.2.27/lib/bundler/cli.rb:25:in `start' /usr/local/bundle/gems/bundler-2.2.27/exe/bundle:49:in `block in <top (required)>' /usr/local/bundle/gems/bundler-2.2.27/lib/bundler/friendly_errors.rb:128:in `with_friendly_errors' /usr/local/bundle/gems/bundler-2.2.27/exe/bundle:37:in `<top (required)>' /usr/local/bundle/bin/bundle:23:in `load' /usr/local/bundle/bin/bundle:23:in `<main>' Inspecting 1 file Scanning /usr/src/sample.rb undefined method `>' for nil:NilClass /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cop/lint/ambiguous_operator_precedence.rb:90:in `greater_precedence?' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cop/lint/ambiguous_operator_precedence.rb:70:in `on_send' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cop/commissioner.rb:136:in `public_send' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cop/commissioner.rb:136:in `block (2 levels) in trigger_restricted_cops' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cop/commissioner.rb:160:in `with_cop_error_handling' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cop/commissioner.rb:135:in `block in trigger_restricted_cops' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cop/commissioner.rb:134:in `each' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cop/commissioner.rb:134:in `trigger_restricted_cops' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cop/commissioner.rb:70:in `on_send' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-ast-1.11.0/lib/rubocop/ast/traversal.rb:137:in `block in on_dstr' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-ast-1.11.0/lib/rubocop/ast/traversal.rb:137:in `each' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-ast-1.11.0/lib/rubocop/ast/traversal.rb:137:in `on_dstr' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cop/commissioner.rb:71:in `on_and' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-ast-1.11.0/lib/rubocop/ast/traversal.rb:155:in `on_if' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cop/commissioner.rb:71:in `on_if' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-ast-1.11.0/lib/rubocop/ast/traversal.rb:158:in `on_block' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cop/commissioner.rb:71:in `on_block' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-ast-1.11.0/lib/rubocop/ast/traversal.rb:137:in `block in on_dstr' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-ast-1.11.0/lib/rubocop/ast/traversal.rb:137:in `each' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-ast-1.11.0/lib/rubocop/ast/traversal.rb:137:in `on_dstr' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cop/commissioner.rb:71:in `on_begin' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-ast-1.11.0/lib/rubocop/ast/traversal.rb:20:in `walk' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cop/commissioner.rb:86:in `investigate' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cop/team.rb:155:in `investigate_partial' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cop/team.rb:83:in `investigate' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/runner.rb:309:in `inspect_file' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/runner.rb:253:in `block in do_inspection_loop' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/runner.rb:287:in `block in iterate_until_no_changes' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/runner.rb:280:in `loop' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/runner.rb:280:in `iterate_until_no_changes' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/runner.rb:249:in `do_inspection_loop' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/runner.rb:130:in `block in file_offenses' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/runner.rb:155:in `file_offense_cache' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/runner.rb:129:in `file_offenses' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/runner.rb:120:in `process_file' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/runner.rb:101:in `block in each_inspected_file' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/runner.rb:100:in `each' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/runner.rb:100:in `reduce' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/runner.rb:100:in `each_inspected_file' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/runner.rb:86:in `inspect_files' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/runner.rb:47:in `run' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cli/command/execute_runner.rb:26:in `block in execute_runner' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cli/command/execute_runner.rb:52:in `with_redirect' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cli/command/execute_runner.rb:25:in `execute_runner' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cli/command/execute_runner.rb:17:in `run' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cli/command.rb:11:in `run' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cli/environment.rb:18:in `run' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cli.rb:71:in `run_command' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cli.rb:78:in `execute_runners' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/lib/rubocop/cli.rb:47:in `run' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/exe/rubocop:12:in `block in <top (required)>' /usr/local/lib/ruby/3.0.0/benchmark.rb:308:in `realtime' /usr/src/vendor/ruby/gems/ruby/3.0.0/gems/rubocop-1.21.0/exe/rubocop:12:in `<top (required)>' /usr/src/vendor/ruby/gems/ruby/3.0.0/bin/rubocop:23:in `load' /usr/src/vendor/ruby/gems/ruby/3.0.0/bin/rubocop:23:in `<top (required)>' /usr/local/bundle/gems/bundler-2.2.27/lib/bundler/cli/exec.rb:58:in `load' /usr/local/bundle/gems/bundler-2.2.27/lib/bundler/cli/exec.rb:58:in `kernel_load' /usr/local/bundle/gems/bundler-2.2.27/lib/bundler/cli/exec.rb:23:in `run' /usr/local/bundle/gems/bundler-2.2.27/lib/bundler/cli.rb:477:in `exec' /usr/local/bundle/gems/bundler-2.2.27/lib/bundler/vendor/thor/lib/thor/command.rb:27:in `run' /usr/local/bundle/gems/bundler-2.2.27/lib/bundler/vendor/thor/lib/thor/invocation.rb:127:in `invoke_command' /usr/local/bundle/gems/bundler-2.2.27/lib/bundler/vendor/thor/lib/thor.rb:392:in `dispatch' /usr/local/bundle/gems/bundler-2.2.27/lib/bundler/cli.rb:31:in `dispatch' /usr/local/bundle/gems/bundler-2.2.27/lib/bundler/vendor/thor/lib/thor/base.rb:485:in `start' /usr/local/bundle/gems/bundler-2.2.27/lib/bundler/cli.rb:25:in `start' /usr/local/bundle/gems/bundler-2.2.27/exe/bundle:49:in `block in <top (required)>' /usr/local/bundle/gems/bundler-2.2.27/lib/bundler/friendly_errors.rb:128:in `with_friendly_errors' /usr/local/bundle/gems/bundler-2.2.27/exe/bundle:37:in `<top (required)>' /usr/local/bundle/bin/bundle:23:in `load' /usr/local/bundle/bin/bundle:23:in `<main>' . 1 file inspected, no offenses detected 1 error occurred: An error occurred while Lint/AmbiguousOperatorPrecedence cop was inspecting /usr/src/sample.rb:3:2.
Attempt to lint
array = [] (1..10).each do |i| array << i and next if i.even? end
/usr/src # bundle exec rubocop -V 1.21.0 (using Parser 3.0.2.0, rubocop-ast 1.11.0, running on ruby 3.0.2 x86_64-linux-musl) - rubocop-performance 1.11.5
The text was updated successfully, but these errors were encountered:
[Fix rubocop#10096] Fix Lint/AmbiguousOperatorPrecedence with and…
Lint/AmbiguousOperatorPrecedence
and
1c20b60
…/`or` operators.
or
Merge pull request #10101 from dvandersluis/issue/10096
6107f79
[Fix #10096] Fix `Lint/AmbiguousOperatorPrecedence` with `and`/`or` operators
dvandersluis
Successfully merging a pull request may close this issue.
Rubocop errors when attempting to lint a using a
Array#<<
andand next
.Expected behavior
Rubocop parses and lints the file.
Actual behavior
Steps to reproduce the problem
Attempt to lint
RuboCop version
The text was updated successfully, but these errors were encountered: