Silence a MSVC++-specific warning
authorSteve Hay <steve.m.hay@googlemail.com>
Tue, 15 Jan 2013 09:04:20 +0000 (09:04 +0000)
committerSteve Hay <steve.m.hay@googlemail.com>
Tue, 15 Jan 2013 09:04:20 +0000 (09:04 +0000)
("function declared with __declspec(noreturn) has non-void return type" /
"function declared with __declspec(noreturn) has a return statement".)

embed.fnc
embed.h
proto.h

index 1f38f6a..9495849 100644 (file)
--- a/embed.fnc
+++ b/embed.fnc
@@ -784,7 +784,11 @@ p  |int    |magic_getvec   |NN SV* sv|NN MAGIC* mg
 p      |int    |magic_nextpack |NN SV *sv|NN MAGIC *mg|NN SV *key
 p      |U32    |magic_regdata_cnt|NN SV* sv|NN MAGIC* mg
 p      |int    |magic_regdatum_get|NN SV* sv|NN MAGIC* mg
+#ifdef _MSC_VER
+p      |int    |magic_regdatum_set|NN SV* sv|NN MAGIC* mg
+#else
 pr     |int    |magic_regdatum_set|NN SV* sv|NN MAGIC* mg
+#endif
 p      |int    |magic_set      |NN SV* sv|NN MAGIC* mg
 p      |int    |magic_setarylen|NN SV* sv|NN MAGIC* mg
 p      |int    |magic_cleararylen_p|NN SV* sv|NN MAGIC* mg
diff --git a/embed.h b/embed.h
index 8e8279f..470805d 100644 (file)
--- a/embed.h
+++ b/embed.h
 #define magic_nextpack(a,b,c)  Perl_magic_nextpack(aTHX_ a,b,c)
 #define magic_regdata_cnt(a,b) Perl_magic_regdata_cnt(aTHX_ a,b)
 #define magic_regdatum_get(a,b)        Perl_magic_regdatum_get(aTHX_ a,b)
-#define magic_regdatum_set(a,b)        Perl_magic_regdatum_set(aTHX_ a,b)
 #define magic_scalarpack(a,b)  Perl_magic_scalarpack(aTHX_ a,b)
 #define magic_set(a,b)         Perl_magic_set(aTHX_ a,b)
 #define magic_set_all_env(a,b) Perl_magic_set_all_env(aTHX_ a,b)
 #define package(a)             Perl_package(aTHX_ a)
 #define utilize(a,b,c,d,e)     Perl_utilize(aTHX_ a,b,c,d,e)
 #  endif
+#  if !(defined(_MSC_VER))
+#define magic_regdatum_set(a,b)        Perl_magic_regdatum_set(aTHX_ a,b)
+#  endif
 #  if !defined(HAS_GETENV_LEN)
 #define getenv_len(a,b)                Perl_getenv_len(aTHX_ a,b)
 #  endif
 #define magic_setcollxfrm(a,b) Perl_magic_setcollxfrm(aTHX_ a,b)
 #define mem_collxfrm(a,b,c)    Perl_mem_collxfrm(aTHX_ a,b,c)
 #  endif
+#  if defined(_MSC_VER)
+#define magic_regdatum_set(a,b)        Perl_magic_regdatum_set(aTHX_ a,b)
+#  endif
 #endif
 
 #endif /* #ifndef PERL_NO_SHORT_NAMES */
diff --git a/proto.h b/proto.h
index 09a1532..e0c3279 100644 (file)
--- a/proto.h
+++ b/proto.h
@@ -2290,13 +2290,6 @@ PERL_CALLCONV int        Perl_magic_regdatum_get(pTHX_ SV* sv, MAGIC* mg)
 #define PERL_ARGS_ASSERT_MAGIC_REGDATUM_GET    \
        assert(sv); assert(mg)
 
-PERL_CALLCONV_NO_RET int       Perl_magic_regdatum_set(pTHX_ SV* sv, MAGIC* mg)
-                       __attribute__noreturn__
-                       __attribute__nonnull__(pTHX_1)
-                       __attribute__nonnull__(pTHX_2);
-#define PERL_ARGS_ASSERT_MAGIC_REGDATUM_SET    \
-       assert(sv); assert(mg)
-
 PERL_CALLCONV SV*      Perl_magic_scalarpack(pTHX_ HV *hv, MAGIC *mg)
                        __attribute__nonnull__(pTHX_1)
                        __attribute__nonnull__(pTHX_2);
@@ -4962,6 +4955,15 @@ PERL_CALLCONV void       Perl_utilize(pTHX_ int aver, I32 floor, OP* version, OP* idop
        assert(idop)
 
 #endif
+#if !(defined(_MSC_VER))
+PERL_CALLCONV_NO_RET int       Perl_magic_regdatum_set(pTHX_ SV* sv, MAGIC* mg)
+                       __attribute__noreturn__
+                       __attribute__nonnull__(pTHX_1)
+                       __attribute__nonnull__(pTHX_2);
+#define PERL_ARGS_ASSERT_MAGIC_REGDATUM_SET    \
+       assert(sv); assert(mg)
+
+#endif
 #if !defined(HAS_BZERO) && !defined(HAS_MEMSET)
 PERL_CALLCONV char*    Perl_my_bzero(char* loc, I32 len)
                        __attribute__nonnull__(1);
@@ -7900,6 +7902,14 @@ PERL_CALLCONV int        Perl_do_spawn_nowait(pTHX_ char* cmd)
        assert(cmd)
 
 #endif
+#if defined(_MSC_VER)
+PERL_CALLCONV int      Perl_magic_regdatum_set(pTHX_ SV* sv, MAGIC* mg)
+                       __attribute__nonnull__(pTHX_1)
+                       __attribute__nonnull__(pTHX_2);
+#define PERL_ARGS_ASSERT_MAGIC_REGDATUM_SET    \
+       assert(sv); assert(mg)
+
+#endif
 #ifdef PERL_CORE
 #  include "pp_proto.h"
 #endif