'gnatelim', described in manual, http://www.pegasoft.ca/resources/boblap/6.html is GNAT's only means of eliminating deadcode. Let's try: hello.adb: ------------------------------- with ada.text_io; use ada.text_io; procedure hello is begin put("Hello World"); end hello; ------------------------------- ./gnatmake -c hello ./gnatbind hello ./gnatmake -f -c -gnatc -gnatt hello ./gnatelim hello.adb > gnat.adc and guess what? gnat.adc: ------------------------------- --------------------------------------------------------- -- List of unused entities to be placed in gnat.adc. -- --------------------------------------------------------- -- No unused entities. ------------------------------- ELF executable is still ~200K stripped, just as before, no surprise. Fucking scammers.