Subversion Repositories Kolibri OS

Rev

Rev 5191 | Blame | Compare with Previous | Last modification | View Log | RSS feed

  1. /* Copyright (C) 2012-2015 Free Software Foundation, Inc.
  2.  
  3.    This program is free software: you can redistribute it and/or modify
  4.    it under the terms of the GNU General Public License as published by
  5.    the Free Software Foundation; either version 3 of the License, or
  6.    (at your option) any later version.
  7.  
  8.    This program is distributed in the hope that it will be useful,
  9.    but WITHOUT ANY WARRANTY; without even the implied warranty of
  10.    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  11.    GNU General Public License for more details.
  12.  
  13.    You should have received a copy of the GNU General Public License
  14.    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
  15.  
  16. #include "config.h"
  17.  
  18. /* This is a merge of code recommended in the autoconf-2.61 documentation
  19.    with that recommended in the autoconf-2.13 documentation, with added
  20.    tweaks to heed C_ALLOCA.  */
  21.  
  22. #if defined HAVE_ALLOCA_H && !defined C_ALLOCA
  23. # include <alloca.h>
  24. #else
  25. # if defined __GNUC__ && !defined C_ALLOCA
  26. #  if !defined alloca
  27. #   define alloca __builtin_alloca
  28. #  endif
  29. # else
  30. #  if defined _AIX
  31. /* Indented so that pre-ansi C compilers will ignore it, rather than
  32.    choke on it.  Some versions of AIX require this to be the first
  33.    thing seen by the compiler except for comments and preprocessor
  34.    directives.  */
  35.     #pragma alloca
  36. #  else
  37. #   if defined _MSC_VER && !defined C_ALLOCA
  38. #    include <malloc.h>
  39. #    define alloca _alloca
  40. #   else
  41. #    if !defined alloca
  42. #     if defined __STDC__ || defined __hpux
  43. #      if defined HAVE_STDDEF_H
  44. #       include <stddef.h>
  45. #       if defined  __cplusplus
  46. extern "C" void *alloca (size_t);
  47. #       else
  48. extern void *alloca (size_t);
  49. #       endif
  50. #      else
  51. extern void *alloca ();
  52. #      endif
  53. #     else
  54. extern char *alloca ();
  55. #     endif
  56. #    endif
  57. #   endif
  58. #  endif
  59. # endif
  60. #endif
  61.