summaryrefslogtreecommitdiff
path: root/eval.c
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2002-10-23 10:17:30 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2002-10-23 10:17:30 +0000
commitd4f2f6a7f708b010d9777f12bdcb84a449f61aa9 (patch)
tree87328c69b8296e0ecd38a456e2c4d74e40f28184 /eval.c
parent9562813d338b5f2870408e95747d71502590c14f (diff)
* eval.c (rb_eval): added NODE_DSYM, symbol literal with
interpolation. * node.h: ditto. * intern.h: prototypes; rb_is_junk_id, rb_str_dump, rb_str_intern * object.c (sym_inspect): escape and quote for non-alphanumeric symbols. * parse.y (dsym, tokadd_string, yylex): extended symbol literals. * parse.y (rb_is_junk_id): added. * string.c (rb_str_dump, rb_str_intern) : make extern. * lib/mkmf.rb (create_makefile): deffile should be removed by distclean, not clean. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2985 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'eval.c')
-rw-r--r--eval.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/eval.c b/eval.c
index 207e6b4..cadd420 100644
--- a/eval.c
+++ b/eval.c
@@ -3089,6 +3089,7 @@ rb_eval(self, n)
case NODE_DXSTR:
case NODE_DREGX:
case NODE_DREGX_ONCE:
+ case NODE_DSYM:
{
VALUE str, str2;
NODE *list = node->nd_next;
@@ -3123,6 +3124,9 @@ rb_eval(self, n)
case NODE_DXSTR:
result = rb_funcall(self, '`', 1, str);
break;
+ case NODE_DSYM:
+ result = rb_str_intern(str);
+ break;
default:
result = str;
break;