Project

General

Profile

Design #1528

MacOS compilation with clang

Added by Anna Maria Bigatti over 3 years ago. Updated about 2 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
Tidying
Target version:
Start date:
30 Oct 2020
Due date:
% Done:

100%

Estimated time:
2.88 h
Spent time:

Description

Try to clean out clang compilation


Related issues

Related to CoCoALib - Support #1700: boost_1_80_0Closed2022-10-14

History

#1 Updated by John Abbott about 3 years ago

  • Category set to Tidying

Any progress here?
It is enough to make small steps rather than try to do it all in one go.

Presumably compilation succeeds but may produce warnings (which should be heeded).

#2 Updated by John Abbott over 2 years ago

  • Status changed from New to In Progress
  • Target version changed from CoCoALib-0.99800 to CoCoALib-0.99850
  • % Done changed from 0 to 10

We have made some inprovements.
Clang's errors/warnings are often quite helpful (but sometimes also annoying).

#3 Updated by John Abbott about 2 years ago

  • Target version changed from CoCoALib-0.99850 to CoCoALib-0.99800
  • % Done changed from 10 to 60

I compiled on my MacBook yesterday, and all went well except for numerous warning about "hidden member fn" (or similar).

As far I recall, the problem is that myOutputSelf for OpenMath channels hides the myOutputSelf for normal C++ ostreams.
Initially I found this annoying...
But now I wonder whether it might not be better to use a different mem fn name for outputting (serializing) to OpenMath.

What other name could we use? myOpenMathOutputSelf (rather long), myOpenMathSendSelf,
myOpenMathEncodeSelf???
Could we abbreviate OpenMath to just OM?

I did not notice any other clang warnings (but they may have been hidden by the numerous ones about myOutputSelf).

#4 Updated by John Abbott about 2 years ago

I have just tried "mindlessly" changing names as suggested above on my MacBook.
That did indeed eliminate those tedious warning.... and that meant that some (not many!) other warnings now became visible.

Since I was in a hurry, I changed the names into myOutput_OM and myOutputSelf_OM.
Would these names be reasonable candidates? Or are the suggestion in the previous comment better?

#5 Updated by John Abbott about 2 years ago

I think I might impl the suggestion in comment 4. We can easily change the name later... just a global subst.
Poor Anna is probably swamped with warnings.

#6 Updated by John Abbott about 2 years ago

  • Status changed from In Progress to Resolved
  • Assignee set to John Abbott
  • % Done changed from 60 to 80

I have done the mind-numbing name replacement. All compiles OK: fewer warnings with clang.
Checked in. I wonder if I should change any doc? :-/

#7 Updated by John Abbott about 2 years ago

  • Status changed from Resolved to Feedback
  • % Done changed from 80 to 90

I have just searched quickly for doc about the mem fns for sending OpenMath serializations, but found nothing.
The good news is that I do not have to change anything... But someone should write some doc sooner or later!

#8 Updated by John Abbott about 2 years ago

  • Status changed from Feedback to Closed
  • % Done changed from 90 to 100
  • Estimated time set to 2.88 h

#9 Updated by Anna Maria Bigatti over 1 year ago

Also available in: Atom PDF