> Ada95 does not
> guarantee comparisons of subprogram 'Access values. As explained
> in [RM 3.10.2(39)], [RM 4.5.2(13)], and other places, a compiler
> "implementation may consider two access-to-subprogram values to be
> unequal, even though they designate the same subprogram. This might
> be because one points directly to the subprogram, while the other
> points to a special prologue that performs an Elaboration_Check and
> then jumps to the subprogram." Thus, each 'Access attribute reference
> for a given subprogram is allowed to designate a distinct wrapper if
> needed, to support an indirect call.
If you are using GNAT compiler then you may consider the Code_Address attribute
instead of Access (see Implementation Defined Attributes in GNAT Reference Manual).