"Jean-Pierre Rosen" wrote in message news:tjgrkh.el7.ln@hunter.axlog.fr... > Hibou57 (Yannick Duch�ne) a �crit : >> On 9 f�v, 10:11, Jean-Pierre Rosen wrote: >>>> clause... the use clause is particularly evil here. >> With package named Parent, containing a type named Parent, having a >> use clause on Parent brings into a context where the name Package can >> be both resolved as a package or as a type. >> >> The use clause is clearly involved here, as one the way to get ride of >> this error is to remove the use clause. The other way being to rename >> either the type either the package. >> >> May be I was wrong to say the use clause is particularly evil there : >> I should have said � the use clause is particularly vicious there >> � (due to its vicious side effect in such a kind of context). >> > I don't see anything vicious. You have to understand that the use clause > is "weak", it never goes against normal visibility. You have a package > named Parent which is directly visible, a type named Parent which is > use-visible. In this case, the use clause politely gives the way to > direct visibility. > > The evil/vicious/whatever is in having nested entities with the same name. I suspect that the "evil" thing here is that the programmer is expecting the use clause to have some effect, but it does not. And that is confusing (although it is the confusing naming that is the real problem, not the presence or absence of the use clause). Randy.