https://redmine.ruby-lang.org/
https://redmine.ruby-lang.org/favicon.ico?1711330511
2019-06-15T15:58:23Z
Ruby Issue Tracking System
Ruby master - Bug #15924: Ripper::Lexer RuntimeError - Ripper FATAL - master/trunk
https://redmine.ruby-lang.org/issues/15924?journal_id=78602
2019-06-15T15:58:23Z
MSP-Greg (Greg L)
<ul></ul><p>Found the issue, below is a repo, which in MinGW master, generates RuntimeError...</p>
<pre><code class="ruby syntaxhl" data-language="ruby"><span class="nb">require</span> <span class="s1">'ripper'</span>
<span class="n">temp</span> <span class="o">=</span> <span class="s2">"<<</span><span class="se">\"</span><span class="s2">EOS</span><span class="se">\n\"</span><span class="s2"> # This has been warned since 2.4</span><span class="se">\n</span><span class="s2">EOS"</span>
<span class="nb">puts</span> <span class="s1">''</span><span class="p">,</span> <span class="n">temp</span><span class="p">,</span> <span class="s1">''</span>
<span class="n">lexer</span> <span class="o">=</span> <span class="no">Ripper</span><span class="o">::</span><span class="no">Lexer</span><span class="p">.</span><span class="nf">new</span> <span class="n">temp</span>
<span class="n">lexer</span><span class="p">.</span><span class="nf">lex</span><span class="p">.</span><span class="nf">each</span> <span class="p">{</span> <span class="o">|</span><span class="n">t</span><span class="o">|</span> <span class="n">pp</span> <span class="n">t</span> <span class="p">}</span>
<span class="nb">puts</span> <span class="s2">"lexer.error? </span><span class="si">#{</span><span class="n">lexer</span><span class="p">.</span><span class="nf">error?</span><span class="si">}</span><span class="s2">"</span>
</code></pre>
Ruby master - Bug #15924: Ripper::Lexer RuntimeError - Ripper FATAL - master/trunk
https://redmine.ruby-lang.org/issues/15924?journal_id=78603
2019-06-15T16:25:16Z
MSP-Greg (Greg L)
<ul><li><strong>Subject</strong> changed from <i>Ripper FATAL - master/trunk</i> to <i>Ripper::Lexer RuntimeError - Ripper FATAL - master/trunk</i></li></ul>
Ruby master - Bug #15924: Ripper::Lexer RuntimeError - Ripper FATAL - master/trunk
https://redmine.ruby-lang.org/issues/15924?journal_id=78617
2019-06-16T10:18:31Z
nobu (Nobuyoshi Nakada)
nobu@ruby-lang.org
<ul></ul><p>It is an example of syntax error, cannot be fallen back?</p>
<p>YARD itself just warns it but succeeds.</p>
<pre><code>$ echo $'<<\"EOS\n\"\nEOS' > yardtest.rb
$ ~/.gem/ruby/2.7.0/bin/yard doc yardtest.rb
[warn]: Syntax error in `yardtest.rb`:(1,0): unterminated here document identifier
Files: 0
Modules: 0 ( 0 undocumented)
Classes: 0 ( 0 undocumented)
Constants: 0 ( 0 undocumented)
Attributes: 0 ( 0 undocumented)
Methods: 0 ( 0 undocumented)
100.00% documented
</code></pre>
Ruby master - Bug #15924: Ripper::Lexer RuntimeError - Ripper FATAL - master/trunk
https://redmine.ruby-lang.org/issues/15924?journal_id=78624
2019-06-16T13:48:16Z
MSP-Greg (Greg L)
<ul></ul><p><a class="user active user-mention" href="https://redmine.ruby-lang.org/users/4">@nobu (Nobuyoshi Nakada)</a></p>
<p>Thanks. Actually, YARD doesn't use the Lexer, but I switched to using it a long time ago, and all the repos shown at <a href="https://msp-greg.github.io/" class="external">https://msp-greg.github.io/</a> are created using it. Conversely, Lexer is subclassed from Ripper. So what's using what is a little vague...</p>
<p>Until recently, all 'bad' code snippets have flipped Ripper#error? to true with no RuntimeError. I guess it is a edge case. Ok to close...</p>
Ruby master - Bug #15924: Ripper::Lexer RuntimeError - Ripper FATAL - master/trunk
https://redmine.ruby-lang.org/issues/15924?journal_id=80735
2019-08-14T03:52:52Z
jeremyevans0 (Jeremy Evans)
merch-redmine@jeremyevans.net
<ul><li><strong>Status</strong> changed from <i>Open</i> to <i>Closed</i></li></ul>