From: Stefan Rusterholz Date: 2007-07-11T20:53:28+09:00 Subject: Re: Problem with HERE document as first parameter (parser bu Ronald Fischer wrote: > I have problems passing a HERE document as the first parameter > to a function expecting more than 1 parameter. Example: > > # This is file here1.rb > def q(a,b) > end > q(<<-END > line1 > line2 > END > ,'x') > > > Executing this program yields the error messages > > ./here1.rb:9: syntax error, unexpected ',', expecting ')' > ,'x') > ^ > ./here1.rb:9: syntax error, unexpected ')', expecting $end > > > Using a temporary variable to hold the content of the HERE > string works fine though: > > temp=<<-END > line1 > line2 > END > q(temp,'x') > > > Bug in Ruby? Or do I misunderstand something in the workings of the > parser? > > Ronald Not a bug in the parser, just wrong usage. q(<<-END, 'x') line1 line2 END That will work. Regards Stefan -- Posted via http://www.ruby-forum.com/.