I forgot to say 'thanks James', thanks.
Well, spurred on by the whimsy that I need a solution to the problem (however
dolorous), I experimented. I've commented most everything at least once and the
net effect is that only the 'operator<<' gets a nasty message. I've checked the
include files that I've written and they all seem clean of heresies. The
'operator>>' files are unaffected, and with them gone, I still get an error on
the 'operator<<' function.
The only thing that I can think of, and I think it remote, is that the
functions refer to a public structure internal to a class. The 'operator>>'
functions refer to their respective classes. Again, I've removed all of my
friends but one 'operator<<' and this gets the error.
Now I think I know C++ (although, to be honest, I have strong, personal,
doubts) and I can't think what I missed.
However, the initial statement still holds, the second diagnostic messages adds
no clarity and seems redundant. Further, if there was a cause of conflict with
a redefinition, it would be useful to include the original conflicting
declaration. Perhaps something like:
<><line no>: error: redefinition of function at <><line no> illegal.
note: istream& operator>> (bool& val );
istream& operator>> (short& val );
o o o
the note: stuff is from cplusplus.com @
http://cplusplus.com/reference/iostream/istream/operator%3E%3E/
So, a concrete suggestion at to messaging and an individual first, a puzzler. I
really need help on the puzzler.
thanks
art