From d5f01a2668d647746a1cd39c7b19421003895072 Mon Sep 17 00:00:00 2001 From: inglorion Date: Tue, 23 Oct 2012 20:09:06 -0700 Subject: [PATCH] Changes for Ruby 1.9 compatibility --- lib/voodoo/parser.rb | 10 +++++++--- test/test | 9 +++++---- 2 files changed, 12 insertions(+), 7 deletions(-) diff --git a/lib/voodoo/parser.rb b/lib/voodoo/parser.rb index 1670f37..daee46c 100644 --- a/lib/voodoo/parser.rb +++ b/lib/voodoo/parser.rb @@ -305,7 +305,7 @@ module Voodoo def parse_symbol wrap_exceptions do name = '' - while true + while lookahead != :eof case lookahead when "\\" name << parse_escape @@ -525,6 +525,8 @@ module Voodoo # Else, nil is returned. def try_parse_token case lookahead + when :eof + nil when /\d|-/ # Digit; parse number parse_number @@ -606,8 +608,10 @@ module Voodoo raise rescue => e # Some other error; wrap in ParserInternalError. - raise ParserInternalError.new(e, @input_name, @line, - @column, @text) + wrapped = ParserInternalError.new(e, @input_name, @line, + @column, @text) + wrapped.set_backtrace e.backtrace + raise wrapped end end diff --git a/test/test b/test/test index 7619232..bded145 100755 --- a/test/test +++ b/test/test @@ -1,9 +1,10 @@ #! /usr/bin/env ruby -require File.dirname(__FILE__) + '/test' -require 'test_language_version' -require 'test_parser' -require 'test_validator' +dirname = File.dirname(__FILE__) +require "#{dirname}/test" +require "#{dirname}/test_language_version" +require "#{dirname}/test_parser" +require "#{dirname}/test_validator" require 'thread' test_language_version -- 2.11.4.GIT