root/trunk/src/s/aix4-2.h

Revision 4184, 1.5 kB (checked in by miyoshi, 2 years ago)

Sync up with Emacs CVS HEAD.

  • Property svn:eol-style set to native
Line 
1 #include "aix4-1.h"
2
3 #undef ALIGN_DATA_RELOC
4
5 /* On AIX Emacs uses the gmalloc.c malloc implementation.  But given
6    the way this system works, libc functions that return malloced
7    memory use the libc malloc implementation. Calling xfree or
8    xrealloc on the results of such functions results in a crash.
9
10    One solution for this could be to define SYSTEM_MALLOC here, but
11    that does not currently work on this system.
12
13    It is possible to completely override the malloc implementation on
14    AIX, but that involves putting the malloc functions in a shared
15    library and setting the MALLOCTYPE environment variable to point to
16    tha shared library.
17   
18    Emacs currently calls xrealloc on the results of get_current_dir name,
19    to avoid a crash just use the Emacs implementation for that function.
20 */
21 #define BROKEN_GET_CURRENT_DIR_NAME 1
22
23 /* aix3-1.h defined _NO_PROTO, probably to work around an AIX compiler
24    that did not handle prototypes.  On (at least) AIX 5.2, this causes
25    the proper prototype to be thrown away for lseek64, so compiled
26    Lisp files do not load correctly and compilation fails.
27
28    The AIX compiler should have learned about function prototypes long
29    ago, so we can probably go ahead and undefine _NO_PROTO.  However,
30    if someone can demonstrate that this problem still exists for AIX
31    4, this should be moved into a new file (aix5.h).
32 */
33
34 #undef _NO_PROTO
35
36
37 /* arch-tag: 38fe75ea-6aef-42bd-8449-bc34d921a562
38    (do not change this comment) */
Note: See TracBrowser for help on using the browser.