Dans comp.lang.ada, Damien Carbonne �crit : >I would like to create a generic package that has, as formal parameters, >a tagged type and some primitive dispatching operations on that type. > >I have tried this: > >generic > type Root is abstract tagged private; > with procedure P1 (This : access Root); P1 is not a primitive operation of Root, because in instances of your package, P1 denotes a view of the actual parameter, and does not declare a subprogram. The subprogram denoted by P1 is thus not declared in the same declarative_region as type Root, and therefore does not qualify to be a primitive operation of Root. It is unclear to me what you are trying to achieve. Could you be more specific about what you actually want to do? Thomas. -- Thomas.Quinot@Cuivre.FR.EU.ORG