(root)/
gcc-13.2.0/
gcc/
ada/
raise.h
       1  /****************************************************************************
       2   *                                                                          *
       3   *                         GNAT COMPILER COMPONENTS                         *
       4   *                                                                          *
       5   *                                R A I S E                                 *
       6   *                                                                          *
       7   *                              C Header File                               *
       8   *                                                                          *
       9   *          Copyright (C) 1992-2023, Free Software Foundation, Inc.         *
      10   *                                                                          *
      11   * GNAT is free software;  you can  redistribute it  and/or modify it under *
      12   * terms of the  GNU General Public License as published  by the Free Soft- *
      13   * ware  Foundation;  either version 3,  or (at your option) any later ver- *
      14   * sion.  GNAT is distributed in the hope that it will be useful, but WITH- *
      15   * OUT ANY WARRANTY;  without even the  implied warranty of MERCHANTABILITY *
      16   * or FITNESS FOR A PARTICULAR PURPOSE.                                     *
      17   *                                                                          *
      18   * As a special exception under Section 7 of GPL version 3, you are granted *
      19   * additional permissions described in the GCC Runtime Library Exception,   *
      20   * version 3.1, as published by the Free Software Foundation.               *
      21   *                                                                          *
      22   * You should have received a copy of the GNU General Public License and    *
      23   * a copy of the GCC Runtime Library Exception along with this program;     *
      24   * see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see    *
      25   * <http://www.gnu.org/licenses/>.                                          *
      26   *                                                                          *
      27   * GNAT was originally developed  by the GNAT team at  New York University. *
      28   * Extensive contributions were provided by Ada Core Technologies Inc.      *
      29   *                                                                          *
      30   ****************************************************************************/
      31  
      32  #ifdef __cplusplus
      33  extern "C" {
      34  #endif
      35  
      36  /* C counterparts of what System.Standard_Library defines.  */
      37  
      38  struct Exception_Data
      39  {
      40    char Not_Handled_By_Others;
      41    char Lang;
      42    int Name_Length;
      43    __UINTPTR_TYPE__ Full_Name;
      44    void *HTable_Ptr;
      45    __UINTPTR_TYPE__ Foreign_Data;
      46    void (*Raise_Hook)(void);
      47  };
      48  
      49  typedef struct Exception_Data *Exception_Id;
      50  
      51  struct Exception_Occurrence;
      52  
      53  extern void __gnat_unhandled_terminate	(void);
      54  extern void *__gnat_malloc		(__SIZE_TYPE__);
      55  extern void __gnat_free			(void *);
      56  extern void *__gnat_realloc		(void *, __SIZE_TYPE__);
      57  extern void __gnat_finalize		(void);
      58  extern void __gnat_set_globals		(void);
      59  extern void __gnat_initialize		(void *);
      60  extern void __gnat_init_float		(void);
      61  extern void __gnat_install_handler	(void);
      62  extern void __gnat_install_SEH_handler  (void *);
      63  extern void __gnat_adjust_context_for_raise (int, void *);
      64  
      65  extern int gnat_exit_status;
      66  
      67  #ifdef __cplusplus
      68  }
      69  #endif