Update.
[glibc.git] / debug / execinfo.h
blobfa9927c71a33a8ce285056b47c083653c953c0d0
1 /* Copyright (C) 1998, 1999, 2004 Free Software Foundation, Inc.
2 This file is part of the GNU C Library.
4 The GNU C Library is free software; you can redistribute it and/or
5 modify it under the terms of the GNU Lesser General Public
6 License as published by the Free Software Foundation; either
7 version 2.1 of the License, or (at your option) any later version.
9 The GNU C Library is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 Lesser General Public License for more details.
14 You should have received a copy of the GNU Lesser General Public
15 License along with the GNU C Library; if not, write to the Free
16 Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
17 02111-1307 USA. */
19 #ifndef _EXECINFO_H
20 #define _EXECINFO_H 1
22 #include <features.h>
24 __BEGIN_DECLS
26 /* Store up to SIZE return address of the current program state in
27 ARRAY and return the exact number of values stored. */
28 extern int backtrace (void **__array, int __size) __nonnull ((1));
31 /* Return names of functions from the backtrace list in ARRAY in a newly
32 malloc()ed memory block. */
33 extern char **backtrace_symbols (void *__const *__array, int __size)
34 __THROW __nonnull ((1));
37 /* This function is similar to backtrace_symbols() but it writes the result
38 immediately to a file and can therefore also be used in situations where
39 malloc() is not usable anymore. */
40 extern void backtrace_symbols_fd (void *__const *__array, int __size, int __fd)
41 __THROW __nonnull ((1));
43 __END_DECLS
45 #endif /* execinfo.h */