Skip to content

Commit

Permalink
Work around invalid gcc warning (explicit cast apparently lost).
Browse files Browse the repository at this point in the history
jasone committed May 13, 2016

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
1 parent 47d106f commit fbb1d85
Showing 2 changed files with 42 additions and 0 deletions.
32 changes: 32 additions & 0 deletions contrib/jemalloc/FREEBSD-diffs
Original file line number Diff line number Diff line change
@@ -46,6 +46,38 @@ index c4a44e3..4626e9b 100644
+ in FreeBSD 11.0.</para>
+ </refsect1>
</refentry>
diff --git a/include/jemalloc/internal/arena.h b/include/jemalloc/internal/arena.h
index b1de2b6..da6b6d2 100644
--- a/include/jemalloc/internal/arena.h
+++ b/include/jemalloc/internal/arena.h
@@ -718,8 +718,13 @@ arena_miscelm_get_mutable(arena_chunk_t *chunk, size_t pageind)
JEMALLOC_ALWAYS_INLINE const arena_chunk_map_misc_t *
arena_miscelm_get_const(const arena_chunk_t *chunk, size_t pageind)
{
+#if 1 /* Work around gcc bug. */
+ arena_chunk_t *mchunk = (arena_chunk_t *)chunk;

+ return (arena_miscelm_get_mutable(mchunk, pageind));
+#else
return (arena_miscelm_get_mutable((arena_chunk_t *)chunk, pageind));
+#endif
}

JEMALLOC_ALWAYS_INLINE size_t
@@ -778,8 +783,13 @@ arena_mapbitsp_get_mutable(arena_chunk_t *chunk, size_t pageind)
JEMALLOC_ALWAYS_INLINE const size_t *
arena_mapbitsp_get_const(const arena_chunk_t *chunk, size_t pageind)
{
+#if 1 /* Work around gcc bug. */
+ arena_chunk_t *mchunk = (arena_chunk_t *)chunk;

+ return (arena_mapbitsp_get_mutable(mchunk, pageind));
+#else
return (arena_mapbitsp_get_mutable((arena_chunk_t *)chunk, pageind));
+#endif
}

JEMALLOC_ALWAYS_INLINE size_t
diff --git a/include/jemalloc/internal/jemalloc_internal.h.in b/include/jemalloc/internal/jemalloc_internal.h.in
index 51bf897..7de22ea 100644
--- a/include/jemalloc/internal/jemalloc_internal.h.in
10 changes: 10 additions & 0 deletions contrib/jemalloc/include/jemalloc/internal/arena.h
Original file line number Diff line number Diff line change
@@ -718,8 +718,13 @@ arena_miscelm_get_mutable(arena_chunk_t *chunk, size_t pageind)
JEMALLOC_ALWAYS_INLINE const arena_chunk_map_misc_t *
arena_miscelm_get_const(const arena_chunk_t *chunk, size_t pageind)
{
#if 1 /* Work around gcc bug. */
arena_chunk_t *mchunk = (arena_chunk_t *)chunk;

return (arena_miscelm_get_mutable(mchunk, pageind));
#else
return (arena_miscelm_get_mutable((arena_chunk_t *)chunk, pageind));
#endif
}

JEMALLOC_ALWAYS_INLINE size_t
@@ -778,8 +783,13 @@ arena_mapbitsp_get_mutable(arena_chunk_t *chunk, size_t pageind)
JEMALLOC_ALWAYS_INLINE const size_t *
arena_mapbitsp_get_const(const arena_chunk_t *chunk, size_t pageind)
{
#if 1 /* Work around gcc bug. */
arena_chunk_t *mchunk = (arena_chunk_t *)chunk;

return (arena_mapbitsp_get_mutable(mchunk, pageind));
#else
return (arena_mapbitsp_get_mutable((arena_chunk_t *)chunk, pageind));
#endif
}

JEMALLOC_ALWAYS_INLINE size_t

0 comments on commit fbb1d85

Please sign in to comment.