A while back I saw a post (I believe on the UnixOS/2 mailing list iirc) stating that the GNAT compiler in gcc 3.x is not nearly as good as the one in gcc 4.x because the 3.x compiler first translates the Ada code into C, whereas the 4.x compiler compiles the Ada code directly into bytecode. The general conclusion of the discussion was that the effort required would be more worthwhile after a gcc > 4.0 is ported to OS/2, which, to my knowledge, has not yet been attempted.
I have not confirmed this difference to be fact, but if it were me I would check into it before going too far with the effort.
Then again, if it is true, maybe that would make the 3.x port easier than a 4.x port.
Hm... Well, the older GNAT has been widely used for a
long time. While a direct compilation is certainly to be preferred, a translation is a
lot better than nothing. Using the old one also doesn't mean that you lose all the nice stuff like run-time checking.