1/* This file is automatically generated. DO NOT EDIT! */ 2/* Generated from: NetBSD: mknative-gdb,v 1.12 2020/09/17 16:54:31 christos Exp */ 3/* Generated from: NetBSD: mknative.common,v 1.16 2018/04/15 15:13:37 christos Exp */ 4 5/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ 6/* Memory allocation on the stack. 7 8 Copyright (C) 1995, 1999, 2001-2004, 2006-2020 Free Software Foundation, 9 Inc. 10 11 This program is free software; you can redistribute it and/or modify it 12 under the terms of the GNU General Public License as published 13 by the Free Software Foundation; either version 3, or (at your option) 14 any later version. 15 16 This program 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 GNU 19 General Public License for more details. 20 21 You should have received a copy of the GNU General Public 22 License along with this program; if not, see 23 <https://www.gnu.org/licenses/>. 24 */ 25 26/* Avoid using the symbol _ALLOCA_H here, as Bison assumes _ALLOCA_H 27 means there is a real alloca function. */ 28#ifndef _GL_ALLOCA_H 29#define _GL_ALLOCA_H 30 31/* alloca (N) returns a pointer to N bytes of memory 32 allocated on the stack, which will last until the function returns. 33 Use of alloca should be avoided: 34 - inside arguments of function calls - undefined behaviour, 35 - in inline functions - the allocation may actually last until the 36 calling function returns, 37 - for huge N (say, N >= 65536) - you never know how large (or small) 38 the stack is, and when the stack cannot fulfill the memory allocation 39 request, the program just crashes. 40 */ 41 42#ifndef alloca 43 /* Some version of mingw have an <alloca.h> that causes trouble when 44 included after 'alloca' gets defined as a macro. As a workaround, 45 include this <alloca.h> first and define 'alloca' as a macro afterwards 46 if needed. */ 47# if defined __GNUC__ && (defined _WIN32 && ! defined __CYGWIN__) && 0 48# include_next <alloca.h> 49# endif 50#endif 51#ifndef alloca 52# ifdef __GNUC__ 53# define alloca __builtin_alloca 54# elif defined _AIX 55# define alloca __alloca 56# elif defined _MSC_VER 57# include <malloc.h> 58# define alloca _alloca 59# elif defined __DECC && defined __VMS 60# define alloca __ALLOCA 61# elif defined __TANDEM && defined _TNS_E_TARGET 62# ifdef __cplusplus 63extern "C" 64# endif 65void *_alloca (unsigned short); 66# pragma intrinsic (_alloca) 67# define alloca _alloca 68# elif defined __MVS__ 69# include <stdlib.h> 70# else 71# include <stddef.h> 72# ifdef __cplusplus 73extern "C" 74# endif 75void *alloca (size_t); 76# endif 77#endif 78 79#endif /* _GL_ALLOCA_H */ 80