From: Gurusamy Sarathy Date: Mon, 6 Jul 1998 21:58:52 +0000 (+0000) Subject: undo ck_sysread() changes#1319,1337 in preparation for a much X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=d1a002d40d48ad14d45b48c55fb113c8f8885a42;p=p5sagit%2Fp5-mst-13.2.git undo ck_sysread() changes#1319,1337 in preparation for a much simpler fix p4raw-link: @1337 on //depot/perl: 77808da1249dc49b6d1ea4171ebce9989b18ea3f p4raw-link: @1319 on //depot/perl: 5081475eefaf24307ce7eaf4c87aafd588b37e98 p4raw-id: //depot/perl@1345 --- diff --git a/ObjXSub.h b/ObjXSub.h index 7b81c60..6cb2baa 100644 --- a/ObjXSub.h +++ b/ObjXSub.h @@ -801,8 +801,6 @@ #define ck_subr pPerl->Perl_ck_subr #undef ck_svconst #define ck_svconst pPerl->Perl_ck_svconst -#undef ck_sysread -#define ck_sysread pPerl->Perl_ck_sysread #undef ck_trunc #define ck_trunc pPerl->Perl_ck_trunc #undef condpair_magic diff --git a/embed.h b/embed.h index 222dc93..01813c9 100644 --- a/embed.h +++ b/embed.h @@ -103,7 +103,6 @@ #define ck_split Perl_ck_split #define ck_subr Perl_ck_subr #define ck_svconst Perl_ck_svconst -#define ck_sysread Perl_ck_sysread #define ck_trunc Perl_ck_trunc #define compl_amg Perl_compl_amg #define concat_amg Perl_concat_amg diff --git a/global.sym b/global.sym index 2690ea8..44c8dbc 100644 --- a/global.sym +++ b/global.sym @@ -232,7 +232,6 @@ ck_spair ck_split ck_subr ck_svconst -ck_sysread ck_trunc condpair_magic convert diff --git a/globals.c b/globals.c index 217ac6d..1daf4f1 100644 --- a/globals.c +++ b/globals.c @@ -898,17 +898,17 @@ OP * (CPERLscope(*check)[]) _((OP *op)) = { ck_select, /* sselect */ ck_select, /* select */ ck_eof, /* getc */ - ck_sysread, /* read */ + ck_fun, /* read */ ck_fun, /* enterwrite */ ck_null, /* leavewrite */ ck_listiob, /* prtf */ ck_listiob, /* print */ ck_fun, /* sysopen */ ck_fun, /* sysseek */ - ck_sysread, /* sysread */ + ck_fun, /* sysread */ ck_fun, /* syswrite */ ck_fun, /* send */ - ck_sysread, /* recv */ + ck_fun, /* recv */ ck_eof, /* eof */ ck_fun, /* tell */ ck_fun, /* seek */ diff --git a/objpp.h b/objpp.h index 89551d4..469fefc 100644 --- a/objpp.h +++ b/objpp.h @@ -153,8 +153,6 @@ #define ck_subr CPerlObj::Perl_ck_subr #undef ck_svconst #define ck_svconst CPerlObj::Perl_ck_svconst -#undef ck_sysread -#define ck_sysread CPerlObj::Perl_ck_sysread #undef ck_trunc #define ck_trunc CPerlObj::Perl_ck_trunc #undef convert diff --git a/op.c b/op.c index f427b3b..b567c9a 100644 --- a/op.c +++ b/op.c @@ -4863,30 +4863,6 @@ ck_svconst(OP *o) } OP * -ck_sysread(OP *o) -{ - if (o->op_flags & OPf_KIDS) { - /* get past pushmark */ - OP *kid = cLISTOPo->op_first->op_sibling; - if (kid && (kid = kid->op_sibling)) { - switch (kid->op_type) { - case OP_THREADSV: - case OP_HELEM: - case OP_AELEM: - case OP_SASSIGN: - case OP_AELEMFAST: - case OP_RV2SV: - case OP_PADSV: - break; - default: - bad_type(2, "scalar", op_desc[o->op_type], kid); - } - } - } - return ck_fun(o); -} - -OP * ck_trunc(OP *o) { if (o->op_flags & OPf_KIDS) { @@ -4998,7 +4974,7 @@ peep(register OP *o) case OP_PADAV: if (o->op_next->op_type == OP_RV2AV - && (o->op_next->op_flags & OPf_REF)) + && (o->op_next->op_flags && OPf_REF)) { null(o->op_next); o->op_next = o->op_next->op_next; @@ -5007,7 +4983,7 @@ peep(register OP *o) case OP_PADHV: if (o->op_next->op_type == OP_RV2HV - && (o->op_next->op_flags & OPf_REF)) + && (o->op_next->op_flags && OPf_REF)) { null(o->op_next); o->op_next = o->op_next->op_next; diff --git a/opcode.h b/opcode.h index 435b7d2..47dd777 100644 --- a/opcode.h +++ b/opcode.h @@ -1095,7 +1095,6 @@ OP * ck_spair _((OP* o)); OP * ck_split _((OP* o)); OP * ck_subr _((OP* o)); OP * ck_svconst _((OP* o)); -OP * ck_sysread _((OP* o)); OP * ck_trunc _((OP* o)); OP * pp_null _((ARGSproto)); @@ -2010,17 +2009,17 @@ EXT OP * (CPERLscope(*check)[]) _((OP *op)) = { ck_select, /* sselect */ ck_select, /* select */ ck_eof, /* getc */ - ck_sysread, /* read */ + ck_fun, /* read */ ck_fun, /* enterwrite */ ck_null, /* leavewrite */ ck_listiob, /* prtf */ ck_listiob, /* print */ ck_fun, /* sysopen */ ck_fun, /* sysseek */ - ck_sysread, /* sysread */ + ck_fun, /* sysread */ ck_fun, /* syswrite */ ck_fun, /* send */ - ck_sysread, /* recv */ + ck_fun, /* recv */ ck_eof, /* eof */ ck_fun, /* tell */ ck_fun, /* seek */ diff --git a/opcode.pl b/opcode.pl index 6a1275d..5891139 100755 --- a/opcode.pl +++ b/opcode.pl @@ -496,7 +496,7 @@ sselect select system call ck_select t@ S S S S select select ck_select st@ F? getc getc ck_eof st% F? -read read ck_sysread imst@ F R S S? +read read ck_fun imst@ F R S S? enterwrite write ck_fun dis% F? leavewrite write exit ck_null 1 @@ -505,11 +505,11 @@ print print ck_listiob ims@ F? L sysopen sysopen ck_fun s@ F S S S? sysseek sysseek ck_fun s@ F S S -sysread sysread ck_sysread imst@ F R S S? +sysread sysread ck_fun imst@ F R S S? syswrite syswrite ck_fun imst@ F S S S? send send ck_fun imst@ F S S S? -recv recv ck_sysread imst@ F R S S +recv recv ck_fun imst@ F R S S eof eof ck_eof is% F? tell tell ck_fun st% F? diff --git a/proto.h b/proto.h index 933942f..a74dc60 100644 --- a/proto.h +++ b/proto.h @@ -1205,7 +1205,6 @@ OP *ck_sort _((OP *o)); OP *ck_split _((OP *o)); OP *ck_subr _((OP *o)); OP *ck_svconst _((OP *o)); -OP *ck_sysread _((OP *o)); OP *ck_trunc _((OP *o)); void unwind_handler_stack _((void *p)); void restore_magic _((void *p));