From: ts Date: 2003-04-13T22:46:40+09:00 Subject: Re: ruby_script() >>>>> "S" == Simon Strandgaard <0bz63fz3m1qt3001@sneakemail.com> writes: >> ./a.out -e 'puts "hello"; raise "out"' When ruby compile a script (or a string) it store in each node the name of the file and the line number. These are these values that it display when it print an error. Because you have used -e the string 'puts "hello"; raise "out"' was compiled with the name '-e' and when it display the error it use this name. For example pigeon% cat b.rb #!/usr/bin/ruby raise "out" pigeon% pigeon% cat c.rb #!/usr/bin/ruby require 'b.rb' pigeon% pigeon% c.rb ./b.rb:2: out (RuntimeError) from ./c.rb:2:in `require' from ./c.rb:2 pigeon% See the first line with './b.rb' and not './c.rb' Guy Decoux