aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/libgnat/i-cstrin.adb
diff options
context:
space:
mode:
authorPat Bernardi <bernardi@adacore.com>2022-07-18 01:56:28 -0400
committerMarc Poulhiès <dkm@gcc.gnu.org>2024-11-12 14:05:47 +0100
commita1dfd384a961043c9b8930d14abb761451298620 (patch)
tree4b489e167224b2608508484f0b0c8d24eedc015f /gcc/ada/libgnat/i-cstrin.adb
parentab3106747e3c12405f754017a5441db45aa97e6a (diff)
downloadgcc-a1dfd384a961043c9b8930d14abb761451298620.zip
gcc-a1dfd384a961043c9b8930d14abb761451298620.tar.gz
gcc-a1dfd384a961043c9b8930d14abb761451298620.tar.bz2
ada: Include design documentation within runtime sources
The existing design documentation, required when generating the Software Architecture Design Specification and Software Component Design Specification documents for the light and light-tasking runtimes, has been included directly within runtime sources. gcc/ada/ChangeLog: * libgnarl/a-dynpri.ads: Add design annotations. * libgnarl/a-reatim.ads: Likewise. * libgnarl/a-synbar.ads: Likewise. * libgnarl/a-taside.ads: Likewise. * libgnarl/s-tarest.ads: Likewise. * libgnarl/s-tasinf.ads: Likewise. * libgnarl/s-taspri__posix.ads: Likewise. * libgnarl/s-tpobmu.ads: Likewise. * libgnat/a-assert.ads: Likewise. * libgnat/a-comlin.ads: Likewise. * libgnat/a-nbnbig.ads: Likewise. * libgnat/a-nubinu.ads: Likewise. * libgnat/a-numeri.ads: Likewise. * libgnat/a-unccon.ads: Likewise. * libgnat/a-uncdea.ads: Likewise. * libgnat/ada.ads: Likewise. * libgnat/g-debuti.ads: Likewise. * libgnat/g-sestin.ads: Likewise. * libgnat/g-souinf.ads: Likewise. * libgnat/gnat.ads: Likewise. * libgnat/i-cexten.ads: Likewise. * libgnat/i-cexten__128.ads: Likewise. * libgnat/i-cstrin.adb: Likewise. * libgnat/i-cstrin.ads: Likewise. * libgnat/interfac__2020.ads: Likewise. * libgnat/machcode.ads: Likewise. * libgnat/s-addope.ads: Likewise. * libgnat/s-aridou.ads: Likewise. * libgnat/s-arit32.ads: Likewise. * libgnat/s-arit64.ads: Likewise. * libgnat/s-assert.ads: Likewise. * libgnat/s-atacco.ads: Likewise. * libgnat/s-atocou.ads: Likewise. * libgnat/s-atocou__builtin.adb: Likewise. * libgnat/s-atopri.ads: Likewise. * libgnat/s-bitops.ads: Likewise. * libgnat/s-boarop.ads: Likewise. * libgnat/s-bytswa.ads: Likewise. * libgnat/s-carsi8.ads: Likewise. * libgnat/s-carun8.ads: Likewise. * libgnat/s-casi16.ads: Likewise. * libgnat/s-casi32.ads: Likewise. * libgnat/s-casi64.ads: Likewise. * libgnat/s-caun16.ads: Likewise. * libgnat/s-caun32.ads: Likewise. * libgnat/s-caun64.ads: Likewise. * libgnat/s-exnint.ads: Likewise. * libgnat/s-exnllf.ads: Likewise. * libgnat/s-exnlli.ads: Likewise. * libgnat/s-expint.ads: Likewise. * libgnat/s-explli.ads: Likewise. * libgnat/s-expllu.ads: Likewise. * libgnat/s-expmod.ads: Likewise. * libgnat/s-exponn.ads: Likewise. * libgnat/s-expont.ads: Likewise. * libgnat/s-exponu.ads: Likewise. * libgnat/s-expuns.ads: Likewise. * libgnat/s-fatflt.ads: Likewise. * libgnat/s-fatgen.ads: Likewise. * libgnat/s-fatlfl.ads: Likewise. * libgnat/s-fatllf.ads: Likewise. * libgnat/s-flocon.ads: Likewise. * libgnat/s-geveop.ads: Likewise. * libgnat/s-imageb.ads: Likewise. * libgnat/s-imaged.ads: Likewise. * libgnat/s-imagef.ads: Likewise. * libgnat/s-imagei.ads: Likewise. * libgnat/s-imagen.ads: Likewise. * libgnat/s-imageu.ads: Likewise. * libgnat/s-imagew.ads: Likewise. * libgnat/s-imde128.ads: Likewise. * libgnat/s-imde32.ads: Likewise. * libgnat/s-imde64.ads: Likewise. * libgnat/s-imen16.ads: Likewise. * libgnat/s-imen32.ads: Likewise. * libgnat/s-imenu8.ads: Likewise. * libgnat/s-imfi32.ads: Likewise. * libgnat/s-imfi64.ads: Likewise. * libgnat/s-imgbiu.ads: Likewise. * libgnat/s-imgboo.ads: Likewise. * libgnat/s-imgcha.ads: Likewise. * libgnat/s-imgint.ads: Likewise. * libgnat/s-imgllb.ads: Likewise. * libgnat/s-imglli.ads: Likewise. * libgnat/s-imgllu.ads: Likewise. * libgnat/s-imgllw.ads: Likewise. * libgnat/s-imgrea.ads: Likewise. * libgnat/s-imguns.ads: Likewise. * libgnat/s-imguti.ads: Likewise. * libgnat/s-imgwiu.ads: Likewise. * libgnat/s-maccod.ads: Likewise. * libgnat/s-multip.ads: Likewise. * libgnat/s-pack03.ads: Likewise. * libgnat/s-pack05.ads: Likewise. * libgnat/s-pack06.ads: Likewise. * libgnat/s-pack07.ads: Likewise. * libgnat/s-pack09.ads: Likewise. * libgnat/s-pack10.ads: Likewise. * libgnat/s-pack100.ads: Likewise. * libgnat/s-pack101.ads: Likewise. * libgnat/s-pack102.ads: Likewise. * libgnat/s-pack103.ads: Likewise. * libgnat/s-pack104.ads: Likewise. * libgnat/s-pack105.ads: Likewise. * libgnat/s-pack106.ads: Likewise. * libgnat/s-pack107.ads: Likewise. * libgnat/s-pack108.ads: Likewise. * libgnat/s-pack109.ads: Likewise. * libgnat/s-pack11.ads: Likewise. * libgnat/s-pack110.ads: Likewise. * libgnat/s-pack111.ads: Likewise. * libgnat/s-pack112.ads: Likewise. * libgnat/s-pack113.ads: Likewise. * libgnat/s-pack114.ads: Likewise. * libgnat/s-pack115.ads: Likewise. * libgnat/s-pack116.ads: Likewise. * libgnat/s-pack117.ads: Likewise. * libgnat/s-pack118.ads: Likewise. * libgnat/s-pack119.ads: Likewise. * libgnat/s-pack12.ads: Likewise. * libgnat/s-pack120.ads: Likewise. * libgnat/s-pack121.ads: Likewise. * libgnat/s-pack122.ads: Likewise. * libgnat/s-pack123.ads: Likewise. * libgnat/s-pack124.ads: Likewise. * libgnat/s-pack125.ads: Likewise. * libgnat/s-pack126.ads: Likewise. * libgnat/s-pack127.ads: Likewise. * libgnat/s-pack13.ads: Likewise. * libgnat/s-pack14.ads: Likewise. * libgnat/s-pack15.ads: Likewise. * libgnat/s-pack17.ads: Likewise. * libgnat/s-pack18.ads: Likewise. * libgnat/s-pack19.ads: Likewise. * libgnat/s-pack20.ads: Likewise. * libgnat/s-pack21.ads: Likewise. * libgnat/s-pack22.ads: Likewise. * libgnat/s-pack23.ads: Likewise. * libgnat/s-pack24.ads: Likewise. * libgnat/s-pack25.ads: Likewise. * libgnat/s-pack26.ads: Likewise. * libgnat/s-pack27.ads: Likewise. * libgnat/s-pack28.ads: Likewise. * libgnat/s-pack29.ads: Likewise. * libgnat/s-pack30.ads: Likewise. * libgnat/s-pack31.ads: Likewise. * libgnat/s-pack33.ads: Likewise. * libgnat/s-pack34.ads: Likewise. * libgnat/s-pack35.ads: Likewise. * libgnat/s-pack36.ads: Likewise. * libgnat/s-pack37.ads: Likewise. * libgnat/s-pack38.ads: Likewise. * libgnat/s-pack39.ads: Likewise. * libgnat/s-pack40.ads: Likewise. * libgnat/s-pack41.ads: Likewise. * libgnat/s-pack42.ads: Likewise. * libgnat/s-pack43.ads: Likewise. * libgnat/s-pack44.ads: Likewise. * libgnat/s-pack45.ads: Likewise. * libgnat/s-pack46.ads: Likewise. * libgnat/s-pack47.ads: Likewise. * libgnat/s-pack48.ads: Likewise. * libgnat/s-pack49.ads: Likewise. * libgnat/s-pack50.ads: Likewise. * libgnat/s-pack51.ads: Likewise. * libgnat/s-pack52.ads: Likewise. * libgnat/s-pack53.ads: Likewise. * libgnat/s-pack54.ads: Likewise. * libgnat/s-pack55.ads: Likewise. * libgnat/s-pack56.ads: Likewise. * libgnat/s-pack57.ads: Likewise. * libgnat/s-pack58.ads: Likewise. * libgnat/s-pack59.ads: Likewise. * libgnat/s-pack60.ads: Likewise. * libgnat/s-pack61.ads: Likewise. * libgnat/s-pack62.ads: Likewise. * libgnat/s-pack63.ads: Likewise. * libgnat/s-pack65.ads: Likewise. * libgnat/s-pack66.ads: Likewise. * libgnat/s-pack67.ads: Likewise. * libgnat/s-pack68.ads: Likewise. * libgnat/s-pack69.ads: Likewise. * libgnat/s-pack70.ads: Likewise. * libgnat/s-pack71.ads: Likewise. * libgnat/s-pack72.ads: Likewise. * libgnat/s-pack73.ads: Likewise. * libgnat/s-pack74.ads: Likewise. * libgnat/s-pack75.ads: Likewise. * libgnat/s-pack76.ads: Likewise. * libgnat/s-pack77.ads: Likewise. * libgnat/s-pack78.ads: Likewise. * libgnat/s-pack79.ads: Likewise. * libgnat/s-pack80.ads: Likewise. * libgnat/s-pack81.ads: Likewise. * libgnat/s-pack82.ads: Likewise. * libgnat/s-pack83.ads: Likewise. * libgnat/s-pack84.ads: Likewise. * libgnat/s-pack85.ads: Likewise. * libgnat/s-pack86.ads: Likewise. * libgnat/s-pack87.ads: Likewise. * libgnat/s-pack88.ads: Likewise. * libgnat/s-pack89.ads: Likewise. * libgnat/s-pack90.ads: Likewise. * libgnat/s-pack91.ads: Likewise. * libgnat/s-pack92.ads: Likewise. * libgnat/s-pack93.ads: Likewise. * libgnat/s-pack94.ads: Likewise. * libgnat/s-pack95.ads: Likewise. * libgnat/s-pack96.ads: Likewise. * libgnat/s-pack97.ads: Likewise. * libgnat/s-pack98.ads: Likewise. * libgnat/s-pack99.ads: Likewise. * libgnat/s-parame.ads: Likewise. * libgnat/s-rident.ads: Likewise. * libgnat/s-spark.ads: Likewise. * libgnat/s-spcuop.ads: Likewise. * libgnat/s-stoele.ads: Likewise. * libgnat/s-traent.ads: Likewise. * libgnat/s-unstyp.ads: Likewise. * libgnat/s-vaispe.ads: Likewise. * libgnat/s-valspe.ads: Likewise. * libgnat/s-vauspe.ads: Likewise. * libgnat/s-veboop.ads: Likewise. * libgnat/s-vector.ads: Likewise. * libgnat/s-vs_int.ads: Likewise. * libgnat/s-vs_lli.ads: Likewise. * libgnat/s-vs_llu.ads: Likewise. * libgnat/s-vs_uns.ads: Likewise. * libgnat/s-vsllli.ads: Likewise. * libgnat/text_io.ads: Likewise. * libgnat/unchconv.ads: Likewise. * libgnat/unchdeal.ads: Likewise. * s-pack.ads.tmpl: Likewise.
Diffstat (limited to 'gcc/ada/libgnat/i-cstrin.adb')
-rw-r--r--gcc/ada/libgnat/i-cstrin.adb4
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/ada/libgnat/i-cstrin.adb b/gcc/ada/libgnat/i-cstrin.adb
index 494b949..b76f736 100644
--- a/gcc/ada/libgnat/i-cstrin.adb
+++ b/gcc/ada/libgnat/i-cstrin.adb
@@ -43,6 +43,7 @@ is
-- since arbitrary addresses can be converted, and it is quite likely that
-- this type will in fact be used for aliasing values of other types.
+ -- Convert between chars_ptr and a C pointer
function To_chars_ptr is
new Ada.Unchecked_Conversion (System.Parameters.C_Address, chars_ptr);
@@ -73,9 +74,12 @@ is
function Memory_Alloc (Size : size_t) return chars_ptr;
pragma Import (C, Memory_Alloc, System.Parameters.C_Malloc_Linkname);
+ -- Allocate a chunk of memory on the heap
procedure Memory_Free (Address : chars_ptr);
pragma Import (C, Memory_Free, "__gnat_free");
+ -- Deallocate a previously allocated chunk of memory from the heap. On
+ -- runtimes that do not allow deallocation this is a no-op.
---------
-- "+" --