Jon Trulson <j...@radscan.com> writes: > > That looks like the compiler can't tell the difference between a const > and non-const definition. Perhaps you need to define: > > -DSP_VOLATILE=volatile -DSP_CONST=const > > for your architecture in programs/nsgmls/Imakefile like Linux and BSD. > > You might look an see what else linux/bsd does there and see if any of > that applies for Sun. > > -jon > >
Nah. The issue is traceable back to Ptr.C and Ptr.h. Stripping out preprocessor #if noise, the generated entmgr_inst.C tries to do this: --- template class Ptr<Origin>; template class ConstPtr<Origin>; --- class Ptr defines and implements a 'clear()' method. class ConstPtr derives from Ptr, and does this: --- using Ptr<T>::clear; --- which GCC (4.9) is fine with, but SunCC chokes on with the aforementioned error. I'm not familiar enough with the C++ standard (heh) to know whether GCC is lenient or SunCC is out of compliance. I also don't understand why some classes (e.g. Origin) are a problem, while others (e.g. InputSourceOrigin) are not... nor why ::clear causes trouble, but ::isNull does not. Finally, I don't understand why removing these instantiation lines causes no errors, unless they aren't actually necessary (in which case, why are they there...?). I tried twiddling a number of CXXOPTIONS; none of them helped. I'm digging into this deeper, but digesting this type of C++ code is slow-going for me. Ulrich, this code compiles fine for you with SunStudio? It sounds like you've been getting clean builds, yet this is another issue that I've had for years... ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot _______________________________________________ cdesktopenv-devel mailing list cdesktopenv-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel