Path: utzoo!attcan!uunet!convex!ssimmons From: ssimmons@convex.com (Steve Simmons) Newsgroups: comp.lang.c++ Subject: Namespace collision between X and NIH Message-ID: <103894@convex.convex.com> Date: 13 Jul 90 13:40:06 GMT Sender: usenet@convex.com Distribution: comp Lines: 31 We have run into the following name space collision with the following two packages, X11 and NIH. Both use the identifier Object. X11 uses it as a typedef to a pointer to the ObjectRec and NIH uses it as a base class. Has anyone else run into this problem? How did you solve it? We have come up with the following solutions. Other ideas will be appreciated. - Change X header files. It is truly a bug in X since they've tried protecting the namespace by prefixing everything with X or Xm. The problem is in integrating with future releases of X. - Change the NIH. They've never tried protecting the namespace and maybe they should. I've been leaning towards this solution by prefixing everything in the NIH library with "NIH". Upward integration is not as a necessary. NIH is stable. Also, there are minor nits within the NIH library that can be changed. - Isolate X and NIH code. Possible, however, it requires more dancing and does not solve the long term problem of the NIH's name space. Other possibilities... Thank you. Steve Simmons