[ruby-cvs:71083] tenderlove:r63992 (trunk): Include the alternative malloc header instead of malloc.h

tenderlove at ruby-lang.org tenderlove at ruby-lang.org
Wed Jul 18 07:27:52 JST 2018


tenderlove	2018-07-18 07:27:52 +0900 (Wed, 18 Jul 2018)

  New Revision: 63992

  https://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=revision&revision=63992

  Log:
    Include the alternative malloc header instead of malloc.h
    
    This commit fixes a build error on systems that have
    `malloc_usable_size` but also enable jemalloc via `--with-jemalloc`.
    For example, Ubuntu Precise defines `malloc_usable_size` in malloc.h, so
    gc.c will include malloc.h.  This definition conflicts with jemalloc's
    definition, so the following error occurs:
    
    ```
    compiling gc.c
    compiling hash.c
    In file included from gc.c:50:0:
    /usr/include/malloc.h:152:15: error: conflicting types for 'malloc_usable_size'
    /usr/include/jemalloc/jemalloc.h:45:8: note: previous declaration of 'malloc_usable_size' was here
    cc1: warning: unrecognized command line option "-Wno-self-assign" [enabled by default]
    cc1: warning: unrecognized command line option "-Wno-constant-logical-operand" [enabled by default]
    cc1: warning: unrecognized command line option "-Wno-parentheses-equality" [enabled by default]
    cc1: warning: unrecognized command line option "-Wno-tautological-compare" [enabled by default]
    ```
    
    Since jemalloc always defines `malloc_usable_size`, this patch just
    includes the jemalloc header instead of malloc.h if it's available.

  Modified files:
    trunk/gc.c


More information about the ruby-cvs mailing list