Providing that programs avoid the use of restricted, implementation dependent and implementation defined features of XGC Ada, there should be a high degree of portability between XGC Ada and other Ada 95 systems. The following are specific items which have proved troublesome in moving XGC Ada programs to other Ada 95 compilers, but do not affect porting code to XGC Ada.
Ada 95 compilers are allowed, but not required, to implement the missing Ada 83 pragmas and attributes that are no longer defined in Ada 95. XGC Ada implements all such pragmas and attributes, eliminating this as a compatibility concern, but some other Ada 95 compilers reject these pragmas and attributes.
XGC Ada implements the a restricted set of special needs annexes. Other Ada compilers may support a different set and that means that use of these features may not be portable to other Ada 95 compilation systems.
Some other Ada 95 compilers implement only the minimal set of representation clauses required by the Ada 95 reference manual. XGC Ada goes far beyond this minimal set, as described in the next section.