121439Sjdp/* This file is automatically generated. DO NOT EDIT! */ 221439Sjdp/* Generated from: NetBSD: mknative-gdb,v 1.12 2020/09/17 16:54:31 christos Exp */ 321439Sjdp/* Generated from: NetBSD: mknative.common,v 1.16 2018/04/15 15:13:37 christos Exp */ 421439Sjdp 521439Sjdp/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ 621439Sjdp/* Memory allocation on the stack. 721439Sjdp 821439Sjdp Copyright (C) 1995, 1999, 2001-2004, 2006-2020 Free Software Foundation, 921439Sjdp Inc. 1021439Sjdp 1121439Sjdp This program is free software; you can redistribute it and/or modify it 1221439Sjdp under the terms of the GNU General Public License as published 1321439Sjdp by the Free Software Foundation; either version 3, or (at your option) 1421439Sjdp any later version. 1521439Sjdp 1621439Sjdp This program is distributed in the hope that it will be useful, 1721439Sjdp but WITHOUT ANY WARRANTY; without even the implied warranty of 1821439Sjdp MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 1921439Sjdp General Public License for more details. 2021439Sjdp 2121439Sjdp You should have received a copy of the GNU General Public 2221439Sjdp License along with this program; if not, see 2321439Sjdp <https://www.gnu.org/licenses/>. 2421439Sjdp */ 2521439Sjdp 2699112Sobrien/* Avoid using the symbol _ALLOCA_H here, as Bison assumes _ALLOCA_H 2799112Sobrien means there is a real alloca function. */ 2899112Sobrien#ifndef _GL_ALLOCA_H 2921439Sjdp#define _GL_ALLOCA_H 3021439Sjdp 3121439Sjdp/* alloca (N) returns a pointer to N bytes of memory 3221439Sjdp allocated on the stack, which will last until the function returns. 3321439Sjdp Use of alloca should be avoided: 3421439Sjdp - inside arguments of function calls - undefined behaviour, 3521439Sjdp - in inline functions - the allocation may actually last until the 3621439Sjdp calling function returns, 3721439Sjdp - for huge N (say, N >= 65536) - you never know how large (or small) 3821462Sjdp the stack is, and when the stack cannot fulfill the memory allocation 3921439Sjdp request, the program just crashes. 4021439Sjdp */ 41172580Scsjp 4221439Sjdp#ifndef alloca 4321439Sjdp /* Some version of mingw have an <alloca.h> that causes trouble when 4421439Sjdp included after 'alloca' gets defined as a macro. As a workaround, 4521439Sjdp include this <alloca.h> first and define 'alloca' as a macro afterwards 46172580Scsjp if needed. */ 4721439Sjdp# if defined __GNUC__ && (defined _WIN32 && ! defined __CYGWIN__) && 0 4821439Sjdp# include_next <alloca.h> 49150977Scsjp# endif 5037493Sjdp#endif 5121439Sjdp#ifndef alloca 5221439Sjdp# ifdef __GNUC__ 5321439Sjdp# define alloca __builtin_alloca 5421439Sjdp# elif defined _AIX 5521439Sjdp# define alloca __alloca 5621439Sjdp# elif defined _MSC_VER 5721439Sjdp# include <malloc.h> 5821439Sjdp# define alloca _alloca 59250462Seadler# elif defined __DECC && defined __VMS 60151056Scsjp# define alloca __ALLOCA 6121439Sjdp# elif defined __TANDEM && defined _TNS_E_TARGET 62151056Scsjp# ifdef __cplusplus 63250462Seadlerextern "C" 64151056Scsjp# endif 65250462Seadlervoid *_alloca (unsigned short); 66151056Scsjp# pragma intrinsic (_alloca) 67151056Scsjp# define alloca _alloca 68151056Scsjp# elif defined __MVS__ 69151056Scsjp# include <stdlib.h> 70250462Seadler# else 71250462Seadler# include <stddef.h> 72250462Seadler# ifdef __cplusplus 73151056Scsjpextern "C" 74151056Scsjp# endif 75151056Scsjpvoid *alloca (size_t); 76151056Scsjp# endif 77151056Scsjp#endif 78151056Scsjp 79151056Scsjp#endif /* _GL_ALLOCA_H */ 80151056Scsjp