Upgrade to Encode 1.92.
[p5sagit/p5-mst-13.2.git] / op.c
diff --git a/op.c b/op.c
index f015618..2c6b675 100644 (file)
--- a/op.c
+++ b/op.c
@@ -1796,7 +1796,7 @@ Perl_newPROG(pTHX_ OP *o)
        CALL_PEEP(PL_eval_start);
     }
     else {
-       if (!o)
+       if (o->op_type == OP_STUB)
            return;
        PL_main_root = scope(sawparens(scalarvoid(o)));
        PL_curcop = &PL_compiling;
@@ -4718,10 +4718,9 @@ Perl_ck_eval(pTHX_ OP *o)
            o->op_flags &= ~OPf_KIDS;
            op_null(o);
        }
-       else if (kid->op_type == OP_LINESEQ) {
+       else if (kid->op_type == OP_LINESEQ || kid->op_type == OP_STUB) {
            LOGOP *enter;
 
-           kid->op_next = o->op_next;
            cUNOPo->op_first = 0;
            op_free(o);
 
@@ -5814,7 +5813,13 @@ Perl_ck_subr(pTHX_ OP *o)
                        if (PERLDB_ASSERTION && PL_curstash != PL_debstash)
                            o->op_private |= OPpENTERSUB_DB;
                    }
-                   else delete=1;
+                   else {
+                       delete=1;
+                       if (ckWARN(WARN_ASSERTIONS) && !(PL_hints & HINT_ASSERTIONSSEEN)) {
+                           Perl_warner(aTHX_ packWARN(WARN_ASSERTIONS),
+                                       "Impossible to activate assertion call");
+                       }
+                   }
                }
            }
        }