VirtualBox

source: kBuild/trunk/src/kmk/electric.h@ 3068

Last change on this file since 3068 was 2798, checked in by bird, 9 years ago

electric.*: Made it work with recent gcc versions.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 1.7 KB
Line 
1/* $Id: electric.h 2798 2015-09-19 20:35:03Z bird $ */
2/** @file
3 * A simple electric heap implementation, wrapper header.
4 */
5
6/*
7 * Copyright (c) 2007-2010 knut st. osmundsen <[email protected]>
8 *
9 * This file is part of kBuild.
10 *
11 * kBuild is free software; you can redistribute it and/or modify
12 * it under the terms of the GNU General Public License as published by
13 * the Free Software Foundation; either version 3 of the License, or
14 * (at your option) any later version.
15 *
16 * kBuild is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 * GNU General Public License for more details.
20 *
21 * You should have received a copy of the GNU General Public License
22 * along with kBuild. If not, see <http://www.gnu.org/licenses/>
23 *
24 */
25
26#ifdef ELECTRIC_HEAP
27
28#include <stdlib.h>
29#ifdef WINDOWS32
30# include <malloc.h>
31#endif
32#include <string.h> /* strdup */
33
34void xfree (void *);
35void *xcalloc (unsigned int);
36void *xmalloc (unsigned int);
37void *xrealloc (void *, unsigned int);
38char *xstrdup (const char *);
39#ifdef __GNUC__
40void *xmalloc_size_t (size_t size);
41void *xcalloc_size_t (size_t size, size_t items);
42void *xrealloc_size_t (void *ptr, size_t size);
43#endif
44
45
46#undef free
47#define free(a) xfree(a)
48#undef strdup
49#define strdup(a) xstrdup(a)
50
51#undef calloc
52#undef malloc
53#undef realloc
54#ifdef __GNUC__
55# define calloc(a,b) xcalloc_size_t(a,b)
56# define malloc(a) xmalloc_size_t(a)
57# define realloc(a,b) xrealloc_size_t(a,b)
58#else
59# define calloc(a,b) xcalloc((a) * (b))
60# define malloc(a) xmalloc(a)
61# define realloc(a,b) xrealloc((a),(b))
62#endif
63
64#endif
65
Note: See TracBrowser for help on using the repository browser.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette