diff options
author | Nobuyoshi Nakada <[email protected]> | 2023-10-30 21:21:50 +0900 |
---|---|---|
committer | Nobuyoshi Nakada <[email protected]> | 2023-11-07 23:19:51 +0900 |
commit | 8becc889dbbacbc774c069f9e3da94f41b81efc2 (patch) | |
tree | e4255a819a0e7da3f197d126b1ea582feee2c147 | |
parent | f2d6b41c8ebcd49debbc6902a9556324dff6c0f8 (diff) |
Suppress array-bounds warnings from gcc 13
-rw-r--r-- | internal/array.h | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/internal/array.h b/internal/array.h index 66017129c8..39f6fcbea6 100644 --- a/internal/array.h +++ b/internal/array.h @@ -136,9 +136,16 @@ RBIMPL_ATTR_ARTIFICIAL() static inline VALUE RARRAY_AREF(VALUE ary, long i) { + VALUE val; RBIMPL_ASSERT_TYPE(ary, RUBY_T_ARRAY); - return RARRAY_CONST_PTR(ary)[i]; + RBIMPL_WARNING_PUSH(); +#if defined(__GNUC__) && !defined(__clang__) && __GNUC__ == 13 + RBIMPL_WARNING_IGNORED(-Warray-bounds); +#endif + val = RARRAY_CONST_PTR(ary)[i]; + RBIMPL_WARNING_POP(); + return val; } #endif /* INTERNAL_ARRAY_H */ |