From: Nicholas Clark Date: Mon, 11 Feb 2008 19:22:18 +0000 (+0000) Subject: In Perl_sv_catpv(), Perl_sv_catpv_mg() the ptr can be not NULL. X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=cf684db655607eaaa00d57bcd72585cbdd05a7b4;p=p5sagit%2Fp5-mst-13.2.git In Perl_sv_catpv(), Perl_sv_catpv_mg() the ptr can be not NULL. In Perl_sv_inc() and Perl_sv_dec(), the sv can be not NULL. In Perl_parser_dup() the proto parser can be NULL. In Perl_ptr_table_find(), the sought-for pointer can be NULL. In Perl_save_set_svflags(), the saved SV can't be NULL. p4raw-id: //depot/perl@33283 --- diff --git a/embed.fnc b/embed.fnc index 6e1736b..27204a3 100644 --- a/embed.fnc +++ b/embed.fnc @@ -836,7 +836,7 @@ Apd |int |sv_backoff |NN SV *const sv Apd |SV* |sv_bless |NN SV* sv|NN HV* stash Afpd |void |sv_catpvf |NN SV* sv|NN const char* pat|... Apd |void |sv_vcatpvf |NN SV* sv|NN const char* pat|NULLOK va_list* args -Apd |void |sv_catpv |NN SV* sv|NN const char* ptr +Apd |void |sv_catpv |NN SV* sv|NULLOK const char* ptr Amdb |void |sv_catpvn |NN SV* sv|NN const char* ptr|STRLEN len Amdb |void |sv_catsv |NN SV* dsv|NULLOK SV* ssv Apd |void |sv_chop |NN SV* sv|NULLOK const char* ptr @@ -850,7 +850,7 @@ Apd |char* |sv_collxfrm |NN SV* sv|NN STRLEN* nxp #endif Ap |OP* |sv_compile_2op |NN SV* sv|NN OP** startp|NN const char* code|NN PAD** padp Apd |int |getcwd_sv |NN SV* sv -Apd |void |sv_dec |NN SV* sv +Apd |void |sv_dec |NULLOK SV* sv Ap |void |sv_dump |NN SV* sv ApdR |bool |sv_derived_from|NN SV* sv|NN const char *const name ApdR |bool |sv_does |NN SV* sv|NN const char *const name @@ -860,7 +860,7 @@ poMX |void |sv_free2 |NN SV* sv pd |void |sv_free_arenas Apd |char* |sv_gets |NN SV* sv|NN PerlIO* fp|I32 append Apd |char* |sv_grow |NN SV *const sv|STRLEN newlen -Apd |void |sv_inc |NN SV* sv +Apd |void |sv_inc |NULLOK SV* sv Apd |void |sv_insert |NN SV* bigsv|STRLEN offset|STRLEN len \ |NN const char* little|STRLEN littlelen Apd |int |sv_isa |NULLOK SV* sv|NN const char* name @@ -1011,7 +1011,7 @@ Ap |int |runops_standard Ap |int |runops_debug Afpd |void |sv_catpvf_mg |NN SV *sv|NN const char* pat|... Apd |void |sv_vcatpvf_mg |NN SV* sv|NN const char* pat|NULLOK va_list* args -Apd |void |sv_catpv_mg |NN SV *sv|NN const char *ptr +Apd |void |sv_catpv_mg |NN SV *sv|NULLOK const char *ptr Apdbm |void |sv_catpvn_mg |NN SV *sv|NN const char *ptr|STRLEN len Apdbm |void |sv_catsv_mg |NN SV *dstr|NULLOK SV *sstr Afpd |void |sv_setpvf_mg |NN SV *sv|NN const char* pat|... @@ -1093,7 +1093,7 @@ ApR |GP* |gp_dup |NULLOK GP* gp|NN CLONE_PARAMS* param ApR |MAGIC* |mg_dup |NULLOK MAGIC* mg|NN CLONE_PARAMS* param ApR |SV* |sv_dup |NULLOK const SV* sstr|NN CLONE_PARAMS* param Ap |void |rvpv_dup |NN SV* dstr|NN const SV *sstr|NN CLONE_PARAMS* param -Ap |yy_parser*|parser_dup |NN const yy_parser *proto|NN CLONE_PARAMS* param +Ap |yy_parser*|parser_dup |NULLOK const yy_parser *proto|NN CLONE_PARAMS* param #endif Apa |PTR_TBL_t*|ptr_table_new ApR |void* |ptr_table_fetch|NN PTR_TBL_t *tbl|NN const void *sv @@ -1531,7 +1531,7 @@ s |void * |more_bodies |const svtype sv_type s |bool |sv_2iuv_common |NN SV *const sv s |void |glob_assign_glob|NN SV *dstr|NN SV *sstr|const int dtype s |void |glob_assign_ref|NN SV *dstr|NN SV *sstr -sRn |PTR_TBL_ENT_t *|ptr_table_find|NN PTR_TBL_t *tbl|NN const void *sv +sRn |PTR_TBL_ENT_t *|ptr_table_find|NN PTR_TBL_t *tbl|NULLOK const void *sv #endif #if defined(PERL_IN_TOKE_C) || defined(PERL_DECL_PROT) @@ -1699,7 +1699,7 @@ p |void |free_tied_hv_pool #if defined(DEBUGGING) pR |int |get_debug_opts |NN const char **s|bool givehelp #endif -Ap |void |save_set_svflags|NULLOK SV* sv|U32 mask|U32 val +Ap |void |save_set_svflags|NN SV* sv|U32 mask|U32 val Apod |void |hv_assert |NN HV* tb ApdR |SV* |hv_scalar |NN HV* hv diff --git a/proto.h b/proto.h index ebdd866..7ee28c1 100644 --- a/proto.h +++ b/proto.h @@ -2245,8 +2245,7 @@ PERL_CALLCONV void Perl_sv_vcatpvf(pTHX_ SV* sv, const char* pat, va_list* args) __attribute__nonnull__(pTHX_2); PERL_CALLCONV void Perl_sv_catpv(pTHX_ SV* sv, const char* ptr) - __attribute__nonnull__(pTHX_1) - __attribute__nonnull__(pTHX_2); + __attribute__nonnull__(pTHX_1); /* PERL_CALLCONV void Perl_sv_catpvn(pTHX_ SV* sv, const char* ptr, STRLEN len) __attribute__nonnull__(pTHX_1) @@ -2286,9 +2285,7 @@ PERL_CALLCONV OP* Perl_sv_compile_2op(pTHX_ SV* sv, OP** startp, const char* cod PERL_CALLCONV int Perl_getcwd_sv(pTHX_ SV* sv) __attribute__nonnull__(pTHX_1); -PERL_CALLCONV void Perl_sv_dec(pTHX_ SV* sv) - __attribute__nonnull__(pTHX_1); - +PERL_CALLCONV void Perl_sv_dec(pTHX_ SV* sv); PERL_CALLCONV void Perl_sv_dump(pTHX_ SV* sv) __attribute__nonnull__(pTHX_1); @@ -2315,9 +2312,7 @@ PERL_CALLCONV char* Perl_sv_gets(pTHX_ SV* sv, PerlIO* fp, I32 append) PERL_CALLCONV char* Perl_sv_grow(pTHX_ SV *const sv, STRLEN newlen) __attribute__nonnull__(pTHX_1); -PERL_CALLCONV void Perl_sv_inc(pTHX_ SV* sv) - __attribute__nonnull__(pTHX_1); - +PERL_CALLCONV void Perl_sv_inc(pTHX_ SV* sv); PERL_CALLCONV void Perl_sv_insert(pTHX_ SV* bigsv, STRLEN offset, STRLEN len, const char* little, STRLEN littlelen) __attribute__nonnull__(pTHX_1) __attribute__nonnull__(pTHX_4); @@ -2711,8 +2706,7 @@ PERL_CALLCONV void Perl_sv_vcatpvf_mg(pTHX_ SV* sv, const char* pat, va_list* ar __attribute__nonnull__(pTHX_2); PERL_CALLCONV void Perl_sv_catpv_mg(pTHX_ SV *sv, const char *ptr) - __attribute__nonnull__(pTHX_1) - __attribute__nonnull__(pTHX_2); + __attribute__nonnull__(pTHX_1); /* PERL_CALLCONV void Perl_sv_catpvn_mg(pTHX_ SV *sv, const char *ptr, STRLEN len) __attribute__nonnull__(pTHX_1) @@ -2927,7 +2921,6 @@ PERL_CALLCONV void Perl_rvpv_dup(pTHX_ SV* dstr, const SV *sstr, CLONE_PARAMS* p __attribute__nonnull__(pTHX_3); PERL_CALLCONV yy_parser* Perl_parser_dup(pTHX_ const yy_parser *proto, CLONE_PARAMS* param) - __attribute__nonnull__(pTHX_1) __attribute__nonnull__(pTHX_2); #endif @@ -4036,8 +4029,7 @@ STATIC void S_glob_assign_ref(pTHX_ SV *dstr, SV *sstr) STATIC PTR_TBL_ENT_t * S_ptr_table_find(PTR_TBL_t *tbl, const void *sv) __attribute__warn_unused_result__ - __attribute__nonnull__(1) - __attribute__nonnull__(2); + __attribute__nonnull__(1); #endif @@ -4378,7 +4370,9 @@ PERL_CALLCONV int Perl_get_debug_opts(pTHX_ const char **s, bool givehelp) __attribute__nonnull__(pTHX_1); #endif -PERL_CALLCONV void Perl_save_set_svflags(pTHX_ SV* sv, U32 mask, U32 val); +PERL_CALLCONV void Perl_save_set_svflags(pTHX_ SV* sv, U32 mask, U32 val) + __attribute__nonnull__(pTHX_1); + PERL_CALLCONV void Perl_hv_assert(pTHX_ HV* tb) __attribute__nonnull__(pTHX_1);