- 2009 patch
[cparser] / adt / xmalloc.h
1 /*
2  * This file is part of cparser.
3  * Copyright (C) 2007-2009 Matthias Braun <matze@braunis.de>
4  *
5  * This program is free software; you can redistribute it and/or
6  * modify it under the terms of the GNU General Public License
7  * as published by the Free Software Foundation; either version 2
8  * of the License, or (at your option) any later version.
9  *
10  * This program is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13  * GNU General Public License for more details.
14  *
15  * You should have received a copy of the GNU General Public License
16  * along with this program; if not, write to the Free Software
17  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
18  * 02111-1307, USA.
19  */
20
21 /**
22  * @file
23  * @brief     More comfortable allocations.
24  * @author    Markus Armbruster
25  * @data      1999 by getting from fiasco
26  * @version   $Id$
27  * Copyright: (c) 1995, 1996 Markus Armbruster
28  * Licence:   This file protected by GPL -  GNU GENERAL PUBLIC LICENSE.
29  */
30 #ifndef _XMALLOC_H_
31 #define _XMALLOC_H_
32
33 #include <stdlib.h>
34 #include "config.h"
35
36 __attribute__((malloc))
37 void *xmalloc(size_t size);
38
39 __attribute__((malloc))
40 void *xcalloc(size_t num, size_t size);
41
42 void *xrealloc(void *ptr, size_t size);
43
44 __attribute__((malloc))
45 char *xstrdup(const char *str);
46
47 #define xfree(ptr)      free(ptr)
48
49 #endif