8000 Error on case statement parsing · Issue #1536 · lsegal/yard · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content
Error on case statement parsing #1536
Open
@kddnewton

Description

@kddnewton

Steps to reproduce

if foo
end

case
when :def
  if foo
  end
end

Actual Output

[debug]: Parsing ["doc", "test.rb"] with `ruby` parser
[debug]: Parsing test.rb
.../gems/yard-0.9.35/lib/yard/parser/ruby/ast_node.rb:274:in `first': cannot get the first element of beginless range (RangeError)
	from .../gems/yard-0.9.35/lib/yard/parser/ruby/ast_node.rb:274:in `line'
	from .../gems/yard-0.9.35/lib/yard/parser/ruby/ruby_parser.rb:630:in `block in insert_comments'
	from .../gems/yard-0.9.35/lib/yard/parser/ruby/ast_node.rb:212:in `traverse'
	from .../gems/yard-0.9.35/lib/yard/parser/ruby/ruby_parser.rb:621:in `insert_comments'
	from .../gems/yard-0.9.35/lib/yard/parser/ruby/ruby_parser.rb:60:in `parse'
	from .../gems/yard-0.9.35/lib/yard/parser/ruby/ruby_parser.rb:17:in `parse'
	from .../gems/yard-0.9.35/lib/yard/parser/source_parser.rb:442:in `parse'
	from .../gems/yard-0.9.35/lib/yard/parser/source_parser.rb:46:in `block in parse'
	from .../gems/yard-0.9.35/lib/yard/logging.rb:82:in `capture'
	from .../gems/yard-0.9.35/lib/yard/parser/source_parser.rb:45:in `parse'
	from .../gems/yard-0.9.35/lib/yard/parser/source_parser.rb:371:in `parse_in_order'
	from .../gems/yard-0.9.35/lib/yard/parser/source_parser.rb:114:in `block in parse'
	from .../gems/yard-0.9.35/lib/yard/logging.rb:182:in `enter_level'
	from .../gems/yard-0.9.35/lib/yard/parser/source_parser.rb:113:in `parse'
	from .../gems/yard-0.9.35/lib/yard.rb:20:in `parse'
	from .../gems/yard-0.9.35/lib/yard/cli/yardoc.rb:259:in `block in run'
	from .../gems/yard-0.9.35/lib/yard/serializers/yardoc_serializer.rb:56:in `lock_for_writing'
	from .../gems/yard-0.9.35/lib/yard/registry_store.rb:202:in `lock_for_writing'
	from .../gems/yard-0.9.35/lib/yard/registry.rb:210:in `lock_for_writing'
	from .../gems/yard-0.9.35/lib/yard/cli/yardoc.rb:258:in `run'
	from .../gems/yard-0.9.35/lib/yard/cli/command.rb:14:in `run'
	from .../gems/yard-0.9.35/lib/yard/cli/command_parser.rb:72:in `run'
	from .../gems/yard-0.9.35/lib/yard/cli/command_parser.rb:54:in `run'
	from .../gems/yard-0.9.35/bin/yard:13:in `<top (required)>'
	from .../bin/yard:25:in `load'
	from .../bin/yard:25:in `<main>'

Expected Output

Parses successfully.

Environment details:

  • OS: macOS
  • Ruby version (ruby -v): ruby 3.4.0dev (2024-02-07T11:34:48Z master 9ebaf7a8ef) [arm64-darwin23]
  • YARD version (yard -v): yard 0.9.35

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

      0