diff options
Diffstat (limited to 'ortho/agcc/c.adb')
-rw-r--r-- | ortho/agcc/c.adb | 55 |
1 files changed, 0 insertions, 55 deletions
diff --git a/ortho/agcc/c.adb b/ortho/agcc/c.adb deleted file mode 100644 index 1b8863600..000000000 --- a/ortho/agcc/c.adb +++ /dev/null @@ -1,55 +0,0 @@ --- Ada bindings for GCC internals. --- Copyright (C) 2002, 2003, 2004, 2005 Tristan Gingold --- --- GHDL is free software; you can redistribute it and/or modify it under --- the terms of the GNU General Public License as published by the Free --- Software Foundation; either version 2, or (at your option) any later --- version. --- --- GHDL is distributed in the hope that it will be useful, but WITHOUT ANY --- WARRANTY; without even the implied warranty of MERCHANTABILITY or --- FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License --- for more details. --- --- You should have received a copy of the GNU General Public License --- along with GCC; see the file COPYING. If not, write to the Free --- Software Foundation, 59 Temple Place - Suite 330, Boston, MA --- 02111-1307, USA. -with Ada.Unchecked_Conversion; -with System; - -package body C is - function C_String_Len (Str : C_String) return Natural is - begin - if Str = null then - return 0; - end if; - for I in Str'Range loop - if Str (I) = Character'Val (0) then - return I - 1; - end if; - end loop; - raise Program_Error; - end C_String_Len; - - function Image (Str : C_Str_Len) return String is - begin - if Str.Str = null then - return ''' & Character'Val (Str.Len) & '''; - else - return Str.Str (1 .. Str.Len); - end if; - end Image; - - function To_C_String (Acc : access String) return C_String - is - function Unchecked_Conversion is new Ada.Unchecked_Conversion - (Source => System.Address, Target => C_String); - begin - -- Check ACC is nul-terminated. - if Acc (Acc.all'Last) /= Character'Val (0) then - raise Program_Error; - end if; - return Unchecked_Conversion (Acc (Acc.all'First)'Address); - end To_C_String; -end C; |