Mercurial > hg > CbC > CbC_gcc
comparison gcc/ada/doc/gnat_ugn/the_gnat_compilation_model.rst @ 145:1830386684a0
gcc-9.2.0
author | anatofuz |
---|---|
date | Thu, 13 Feb 2020 11:34:05 +0900 |
parents | 84e7813d76e9 |
children |
comparison
equal
deleted
inserted
replaced
131:84e7813d76e9 | 145:1830386684a0 |
---|---|
4529 * some extensions (e.g. vector types) are not supported | 4529 * some extensions (e.g. vector types) are not supported |
4530 * pointers to pointers or complex structures are mapped to System.Address | 4530 * pointers to pointers or complex structures are mapped to System.Address |
4531 * identifiers with identical name (except casing) will generate compilation | 4531 * identifiers with identical name (except casing) will generate compilation |
4532 errors (e.g. ``shm_get`` vs ``SHM_GET``). | 4532 errors (e.g. ``shm_get`` vs ``SHM_GET``). |
4533 | 4533 |
4534 The code generated is using the Ada 2005 syntax, which makes it | 4534 The code is generated using Ada 2012 syntax, which makes it easier to interface |
4535 easier to interface with other languages than previous versions of Ada. | 4535 with other languages. In most cases you can still use the generated binding |
4536 even if your code is compiled using earlier versions of Ada (e.g. ``-gnat95``). | |
4536 | 4537 |
4537 .. _Running_the_binding_generator: | 4538 .. _Running_the_binding_generator: |
4538 | 4539 |
4539 Running the Binding Generator | 4540 Running the Binding Generator |
4540 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | 4541 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ |
4545 header files needed by these files transitively. For example: | 4546 header files needed by these files transitively. For example: |
4546 | 4547 |
4547 .. code-block:: sh | 4548 .. code-block:: sh |
4548 | 4549 |
4549 $ g++ -c -fdump-ada-spec -C /usr/include/time.h | 4550 $ g++ -c -fdump-ada-spec -C /usr/include/time.h |
4550 $ gcc -c -gnat05 *.ads | 4551 $ gcc -c *.ads |
4551 | 4552 |
4552 will generate, under GNU/Linux, the following files: :file:`time_h.ads`, | 4553 will generate, under GNU/Linux, the following files: :file:`time_h.ads`, |
4553 :file:`bits_time_h.ads`, :file:`stddef_h.ads`, :file:`bits_types_h.ads` which | 4554 :file:`bits_time_h.ads`, :file:`stddef_h.ads`, :file:`bits_types_h.ads` which |
4554 correspond to the files :file:`/usr/include/time.h`, | 4555 correspond to the files :file:`/usr/include/time.h`, |
4555 :file:`/usr/include/bits/time.h`, etc..., and will then compile these Ada specs | 4556 :file:`/usr/include/bits/time.h`, etc..., and will then compile these Ada specs |