Skip to content

Instantly share code, notes, and snippets.

@jasongilman
Created August 28, 2012 13:13
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jasongilman/3497860 to your computer and use it in GitHub Desktop.
Save jasongilman/3497860 to your computer and use it in GitHub Desktop.
Demonstrates a JRuby parsing bug with long lines
list = [{"string0"=>"value0"}, {"string1"=>"value1"}, {"string2"=>"value2"}, {"string3"=>"value3"}, {"string4"=>"value4"}, {"string5"=>"value5"}, {"string6"=>"value6"}, {"string7"=>"value7"}, {"string8"=>"value8"}, {"string9"=>"value9"}, {"string10"=>"value10"}, {"string11"=>"value11"}, {"string12"=>"value12"}, {"string13"=>"value13"}, {"string14"=>"value14"}, {"string15"=>"value15"}, {"string16"=>"value16"}, {"string17"=>"value17"}, {"string18"=>"value18"}, {"string19"=>"value19"}, {"string20"=>"value20"}, {"string21"=>"value21"}, {"string22"=>"value22"}, {"string23"=>"value23"}, {"string24"=>"value24"}, {"string25"=>"value25"}, {"string26"=>"value26"}, {"string27"=>"value27"}, {"string28"=>"value28"}, {"string29"=>"value29"}, {"string30"=>"value30"}, {"string31"=>"value31"}, {"string32"=>"value32"}, {"string33"=>"value33"}, {"string34"=>"value34"}, {"string35"=>"value35"}, {"string36"=>"value36"}, {"string37"=>"value37"}, {"string38"=>"value38"}, {"string39"=>"value39"}, {"string40"=>"value40"}, {"string41"=>"value41"}, {"string42"=>"value42"}, {"string43"=>"value43"}, {"string44"=>"value44"}, {"string45"=>"value45"}, {"string46"=>"value46"}, {"string47"=>"value47"}, {"string48"=>"value48"}, {"string49"=>"value49"}, {"string50"=>"value50"}, {"string51"=>"value51"}, {"string52"=>"value52"}, {"string53"=>"value53"}, {"string54"=>"value54"}, {"string55"=>"value55"}, {"string56"=>"value56"}, {"string57"=>"value57"}, {"string58"=>"value58"}, {"string59"=>"value59"}, {"string60"=>"value60"}, {"string61"=>"value61"}, {"string62"=>"value62"}, {"string63"=>"value63"}, {"string64"=>"value64"}, {"string65"=>"value65"}, {"string66"=>"value66"}, {"string67"=>"value67"}, {"string68"=>"value68"}, {"string69"=>"value69"}, {"string70"=>"value70"}, {"string71"=>"value71"}, {"string72"=>"value72"}, {"string73"=>"value73"}, {"string74"=>"value74"}, {"string75"=>"value75"}, {"string76"=>"value76"}, {"string77"=>"value77"}, {"string78"=>"value78"}, {"string79"=>"value79"}, {"string80"=>"value80"}, {"string81"=>"value81"}, {"string82"=>"value82"}, {"string83"=>"value83"}, {"string84"=>"value84"}, {"string85"=>"value85"}, {"string86"=>"value86"}, {"string87"=>"value87"}, {"string88"=>"value88"}, {"string89"=>"value89"}, {"string90"=>"value90"}, {"string91"=>"value91"}, {"string92"=>"value92"}, {"string93"=>"value93"}, {"string94"=>"value94"}, {"string95"=>"value95"}, {"string96"=>"value96"}, {"string97"=>"value97"}, {"string98"=>"value98"}, {"string99"=>"value99"}, {"string100"=>"value100"}, {"string101"=>"value101"}, {"string102"=>"value102"}, {"string103"=>"value103"}, {"string104"=>"value104"}, {"string105"=>"value105"}, {"string106"=>"value106"}, {"string107"=>"value107"}, {"string108"=>"value108"}, {"string109"=>"value109"}, {"string110"=>"value110"}, {"string111"=>"value111"}, {"string112"=>"value112"}, {"string113"=>"value113"}, {"string114"=>"value114"}, {"string115"=>"value115"}, {"string116"=>"value116"}, {"string117"=>"value117"}, {"string118"=>"value118"}, {"string119"=>"value119"}, {"string120"=>"value120"}, {"string121"=>"value121"}, {"string122"=>"value122"}, {"string123"=>"value123"}, {"string124"=>"value124"}, {"string125"=>"value125"}, {"string126"=>"value126"}, {"string127"=>"value127"}, {"string128"=>"value128"}, {"string129"=>"value129"}, {"string130"=>"value130"}, {"string131"=>"value131"}, {"string132"=>"value132"}, {"string133"=>"value133"}, {"string134"=>"value134"}, {"string135"=>"value135"}, {"string136"=>"value136"}, {"string137"=>"value137"}, {"string138"=>"value138"}, {"string139"=>"value139"}, {"string140"=>"value140"}, {"string141"=>"value141"}, {"string142"=>"value142"}, {"string143"=>"value143"}, {"string144"=>"value144"}, {"string145"=>"value145"}, {"string146"=>"value146"}, {"string147"=>"value147"}, {"string148"=>"value148"}, {"string149"=>"value149"}, {"string150"=>"value150"}, {"string151"=>"value151"}, {"string152"=>"value152"}, {"string153"=>"value153"}, {"string154"=>"value154"}, {"string155"=>"value155"}, {"string156"=>"value156"}, {"string157"=>"value157"}, {"string158"=>"value158"}, {"string159"=>"value159"}, {"string160"=>"value160"}, {"string161"=>"value161"}, {"string162"=>"value162"}, {"string163"=>"value163"}, {"string164"=>"value164"}, {"string165"=>"value165"}, {"string166"=>"value166"}, {"string167"=>"value167"}, {"string168"=>"value168"}, {"string169"=>"value169"}, {"string170"=>"value170"}, {"string171"=>"value171"}, {"string172"=>"value172"}, {"string173"=>"value173"}, {"string174"=>"value174"}, {"string175"=>"value175"}, {"string176"=>"value176"}, {"string177"=>"value177"}, {"string178"=>"value178"}, {"string179"=>"value179"}, {"string180"=>"value180"}, {"string181"=>"value181"}, {"string182"=>"value182"}, {"string183"=>"value183"}, {"string184"=>"value184"}, {"string185"=>"value185"}, {"string186"=>"value186"}, {"string187"=>"value187"}, {"string188"=>"value188"}, {"string189"=>"value189"}, {"string190"=>"value190"}, {"string191"=>"value191"}, {"string192"=>"value192"}, {"string193"=>"value193"}, {"string194"=>"value194"}, {"string195"=>"value195"}, {"string196"=>"value196"}, {"string197"=>"value197"}, {"string198"=>"value198"}, {"string199"=>"value199"}, {"string200"=>"value200"}, {"string201"=>"value201"}, {"string202"=>"value202"}, {"string203"=>"value203"}, {"string204"=>"value204"}, {"string205"=>"value205"}, {"string206"=>"value206"}, {"string207"=>"value207"}, {"string208"=>"value208"}, {"string209"=>"value209"}, {"string210"=>"value210"}, {"string211"=>"value211"}, {"string212"=>"value212"}, {"string213"=>"value213"}, {"string214"=>"value214"}, {"string215"=>"value215"}, {"string216"=>"value216"}, {"string217"=>"value217"}, {"string218"=>"value218"}, {"string219"=>"value219"}, {"string220"=>"value220"}, {"string221"=>"value221"}, {"string222"=>"value222"}, {"string223"=>"value223"}, {"string224"=>"value224"}, {"string225"=>"value225"}, {"string226"=>"value226"}, {"string227"=>"value227"}, {"string228"=>"value228"}, {"string229"=>"value229"}, {"string230"=>"value230"}, {"string231"=>"value231"}, {"string232"=>"value232"}, {"string233"=>"value233"}, {"string234"=>"value234"}, {"string235"=>"value235"}, {"string236"=>"value236"}, {"string237"=>"value237"}, {"string238"=>"value238"}, {"string239"=>"value239"}, {"string240"=>"value240"}, {"string241"=>"value241"}, {"string242"=>"value242"}, {"string243"=>"value243"}, {"string244"=>"value244"}, {"string245"=>"value245"}, {"string246"=>"value246"}, {"string247"=>"value247"}, {"string248"=>"value248"}, {"string249"=>"value249"}, {"string250"=>"value250"}, {"string251"=>"value251"}, {"string252"=>"value252"}, {"string253"=>"value253"}, {"string254"=>"value254"}, {"string255"=>"value255"}, {"string256"=>"value256"}, {"string257"=>"value257"}, {"string258"=>"value258"}, {"string259"=>"value259"}, {"string260"=>"value260"}, {"string261"=>"value261"}, {"string262"=>"value262"}, {"string263"=>"value263"}, {"string264"=>"value264"}, {"string265"=>"value265"}, {"string266"=>"value266"}, {"string267"=>"value267"}, {"string268"=>"value268"}, {"string269"=>"value269"}, {"string270"=>"value270"}, {"string271"=>"value271"}, {"string272"=>"value272"}, {"string273"=>"value273"}, {"string274"=>"value274"}, {"string275"=>"value275"}, {"string276"=>"value276"}, {"string277"=>"value277"}, {"string278"=>"value278"}, {"string279"=>"value279"}, {"string280"=>"value280"}, {"string281"=>"value281"}, {"string282"=>"value282"}, {"string283"=>"value283"}, {"string284"=>"value284"}, {"string285"=>"value285"}, {"string286"=>"value286"}, {"string287"=>"value287"}, {"string288"=>"value288"}, {"string289"=>"value289"}, {"string290"=>"value290"}, {"string291"=>"value291"}, {"string292"=>"value292"}, {"string293"=>"value293"}, {"string294"=>"value294"}, {"string295"=>"value295"}, {"string296"=>"value296"}, {"string297"=>"value297"}, {"string298"=>"value298"}, {"string299"=>"value299"}, {"string300"=>"value300"}, {"string301"=>"value301"}, {"string302"=>"value302"}, {"string303"=>"value303"}, {"string304"=>"value304"}, {"string305"=>"value305"}, {"string306"=>"value306"}, {"string307"=>"value307"}, {"string308"=>"value308"}, {"string309"=>"value309"}, {"string310"=>"value310"}, {"string311"=>"value311"}]
# Removing this comment causes nothing to be printed. some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment some enormous comment
puts list.size
@jasongilman
Copy link
Author

Save this file then run "jruby jruby_long_line_parse.rb". It will fail with "NameError: undefined local variable or method `comment' for main:Object". Increasing the length of the first line or changing the comment changes the error. I've seen SyntaxError: Illegal octal digit and "SyntaxError: jruby_long_line_parse.rb:1: syntax error, unexpected tSTRING_BEG" depending on the actual length. If I use MRI I don't get any of those errors.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment