diff options
author | Nobuyoshi Nakada <nobu@ruby-lang.org> | 2019-05-23 17:27:24 +0900 |
---|---|---|
committer | Nobuyoshi Nakada <nobu@ruby-lang.org> | 2019-05-23 17:36:26 +0900 |
commit | fe3ff5afb07e171fd950623c69abfbabbb2762a3 (patch) | |
tree | e7f285cf9cf0f84375e20c5d572e171b8af021e4 | |
parent | dc95b57a68da6999ce6a1542b3ad81c51429cc99 (diff) |
Suppress paranoid warnings for external/3rd-party libraries
[Feature #15665]
-rw-r--r-- | ext/socket/mkconstants.rb | 1 | ||||
-rw-r--r-- | include/ruby/ruby.h | 2 | ||||
-rw-r--r-- | internal.h | 8 | ||||
-rw-r--r-- | lib/mkmf.rb | 2 |
4 files changed, 8 insertions, 5 deletions
diff --git a/ext/socket/mkconstants.rb b/ext/socket/mkconstants.rb index 81b8224077..620a5f60ff 100644 --- a/ext/socket/mkconstants.rb +++ b/ext/socket/mkconstants.rb @@ -180,6 +180,7 @@ int % } default: + if (!str || !valp) {/* wrong argument */} return -1; } } diff --git a/include/ruby/ruby.h b/include/ruby/ruby.h index 0c6d7e3e63..86e01f64bf 100644 --- a/include/ruby/ruby.h +++ b/include/ruby/ruby.h @@ -2198,6 +2198,7 @@ rb_array_ptr_use_start(VALUE a, int allow_transient) } } #endif + (void)allow_transient; return rb_ary_ptr_use_start(a); } @@ -2208,6 +2209,7 @@ rb_array_ptr_use_end(VALUE a, int allow_transient) { void rb_ary_ptr_use_end(VALUE a); rb_ary_ptr_use_end(a); + (void)allow_transient; } #if defined(EXTLIB) && defined(USE_DLN_A_OUT) diff --git a/internal.h b/internal.h index 2511aff3ef..bf57094db0 100644 --- a/internal.h +++ b/internal.h @@ -117,10 +117,10 @@ extern "C" { #endif #if !__has_feature(memory_sanitizer) -# define __msan_allocated_memory(x, y) -# define __msan_poison(x, y) -# define __msan_unpoison(x, y) -# define __msan_unpoison_string(x) +# define __msan_allocated_memory(x, y) ((void)(x), (void)(y)) +# define __msan_poison(x, y) ((void)(x), (void)(y)) +# define __msan_unpoison(x, y) ((void)(x), (void)(y)) +# define __msan_unpoison_string(x) ((void)(x)) #endif /*! diff --git a/lib/mkmf.rb b/lib/mkmf.rb index ea5a8ac2ce..bf95484aa8 100644 --- a/lib/mkmf.rb +++ b/lib/mkmf.rb @@ -2735,7 +2735,7 @@ MESSAGE ## # A C main function which does no work - MAIN_DOES_NOTHING = config_string('MAIN_DOES_NOTHING') || "int main(int argc, char **argv)\n{\n return 0;\n}" + MAIN_DOES_NOTHING = config_string('MAIN_DOES_NOTHING') || "int main(int argc, char **argv)\n{\n return !!argv[argc];\n}" UNIVERSAL_INTS = config_string('UNIVERSAL_INTS') {|s| Shellwords.shellwords(s)} || %w[int short long long\ long] |