Ulrich Wilkens <m...@uwilkens.de> writes: > On 06/19/18 22:56, Matthew R. Trower wrote: >> DtMail attempts to detect whether the non-standard strcasestr() is >> available, and defines it if it is not. Unfortunately, the detection >> code is imperfect. Fortunately, we can make it a class method to avoid >> collision even if it does exist. >> > > I've found that this patch has broken gcc support on all suns. What? I'm so sorry; I must have only tested this with SunPRO. I'll try to make sure I'm running patches through both compilers first.
> After some research I found an explanation: > https://stackoverflow.com/questions/31305717/member-function-with-static-linkage > > And indeed: If I remove the static from FindDialog.C it builds and runs > again also with gcc. > But I never had problems with this part and don't understand the reason > for the patch. So the question to Matthew is: Is your original problem > still solved if you remove the static from the definition? Yes; the problem is that OpenSolaris (b134, the last snapshot) does not provide this non-standard extension. Later releases (including illumos, Solaris 11+, etc) do provide it. So if you don't define it on Sun, OpenSolaris (and older, though we don't care) is broken. If you do define it on Sun, everything newer is broken. My patch makes it so that defining it will never break a system that has it. After reading your StackOverflow link, I agree the correct solution is to remove the static keyword. -mrt ------------------------------------------------------------------------------ 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