[前][次][番号順一覧][スレッド一覧]

ruby-changes:45295

From: nobu <ko1@a...>
Date: Thu, 19 Jan 2017 12:42:12 +0900 (JST)
Subject: [ruby-changes:45295] nobu:r57368 (trunk): compile.c: check err_info

nobu	2017-01-19 12:42:07 +0900 (Thu, 19 Jan 2017)

  New Revision: 57368

  https://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=revision&revision=57368

  Log:
    compile.c: check err_info
    
    * compile.c (iseq_setup): bail out if any errors found.
      [ruby-core:76531] [Bug #12613]

  Modified files:
    trunk/compile.c
Index: compile.c
===================================================================
--- compile.c	(revision 57367)
+++ compile.c	(revision 57368)
@@ -568,9 +568,6 @@ validate_labels(rb_iseq_t *iseq, st_tabl https://github.com/ruby/ruby/blob/trunk/compile.c#L568
 {
     st_foreach(labels_table, validate_label, (st_data_t)iseq);
     st_free_table(labels_table);
-    if (!NIL_P(ISEQ_COMPILE_DATA(iseq)->err_info)) {
-	rb_exc_raise(ISEQ_COMPILE_DATA(iseq)->err_info);
-    }
 }
 
 VALUE
@@ -1133,6 +1130,9 @@ new_child_iseq(rb_iseq_t *iseq, NODE *no https://github.com/ruby/ruby/blob/trunk/compile.c#L1130
 static int
 iseq_setup(rb_iseq_t *iseq, LINK_ANCHOR *const anchor)
 {
+    if (RTEST(ISEQ_COMPILE_DATA(iseq)->err_info))
+	return COMPILE_NG;
+
     /* debugs("[compile step 2] (iseq_array_to_linkedlist)\n"); */
 
     if (compile_debug > 5)

--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]