00001 /* wcecompat: Windows CE C Runtime Library "compatibility" library. 00002 * 00003 * Copyright (C) 2001-2002 Essemer Pty Ltd. All rights reserved. 00004 * http://www.essemer.com.au/ 00005 * 00006 * This library is free software; you can redistribute it and/or 00007 * modify it under the terms of the GNU Lesser General Public 00008 * License as published by the Free Software Foundation; either 00009 * version 2.1 of the License, or (at your option) any later version. 00010 * 00011 * This library is distributed in the hope that it will be useful, 00012 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00013 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00014 * Lesser General Public License for more details. 00015 * 00016 * You should have received a copy of the GNU Lesser General Public 00017 * License along with this library; if not, write to the Free Software 00018 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 00019 */ 00020 00021 00022 #ifndef __wcecompat__MALLOC_H__ 00023 #define __wcecompat__MALLOC_H__ 00024 00025 #include "stddef.h" 00026 00027 #ifdef __cplusplus 00028 extern "C" { 00029 #endif 00030 00031 _CRTIMP void __cdecl free(void *); 00032 _CRTIMP void * __cdecl malloc(size_t); 00033 _CRTIMP void * __cdecl calloc(size_t num, size_t size); 00034 size_t __cdecl _msize(void *); 00035 _CRTIMP void * __cdecl realloc(void *, size_t); 00036 00037 // implemented by compiler 00038 void * __cdecl _alloca(size_t); 00039 00040 // process exit functions 00041 void __cdecl exit (int code); 00042 void __cdecl _exit (int code); 00043 void __cdecl _cexit(void); 00044 void __cdecl _c_exit (void); 00045 00046 #if !__STDC__ 00047 /* Non-ANSI names for compatibility */ 00048 #define alloca _alloca 00049 #endif /* __STDC__*/ 00050 00051 #if defined(_M_MRX000) || defined(_M_PPC) || defined(_M_ALPHA) 00052 #pragma intrinsic(_alloca) 00053 #endif 00054 00055 #ifdef __cplusplus 00056 } 00057 #endif 00058 00059 #endif /* __wcecompat__MALLOC_H__ */