geodynamics / aspect

A parallel, extensible finite element code to simulate convection in both 2D and 3D models.
https://aspect.geodynamics.org/
Other
227 stars 237 forks source link

Are deprecation warnings disabled? #6106

Closed gassmoeller closed 3 weeks ago

gassmoeller commented 1 month ago

This is somewhat related to #6101, but while working on #6097 I noticed that for a while now we compile with -Wno-deprecated-declarations (inherited from deal.II), which for me disables all deprecation warnings. This is a bit worrying, because we never see if external plugins (or ASPECT itself) use deprecated functionality of ASPECT. We should at the very least make sure our CI throws more errors and deprecation warnings, e.g. using -DASPECT_ADDITIONAL_CXX_FLAGS='-Wdeprecated-declarations -Wdeprecated-enum-enum-conversion in the CI tester, but I think we should probably enable deprecation warnings for ASPECT itself and every project using it (also to see if we use deprecated deal.II functionality). I will see if I can in a separate PR address all the deprecation warnings that we already have in the code base.

bangerth commented 4 weeks ago

Do you know why deal.II uses these flags? I get why we use when compiling deal.II itself, but we shouldn't be using these flags when compiling user codes.

@tamiko ?

gassmoeller commented 3 weeks ago

I tried to do some digging in the history. I think the most relevant change was this PR https://github.com/dealii/dealii/pull/14491/files#diff-afb543fb58675e305cc4ad2a8510f10c024620b036bec9f0dbe877d77ac2b5f9L72. It looks like deprecation warnings used to be disabled inside deal.II by default, but were enabled by removing the flag for dependent projects like ASPECT. To me it looks like dealii/dealii#14491 removed this step, keeping them disabled for dependent projects. I can open an issue in deal.II and we can discuss whether to enable the warnings again.

tjhei commented 3 weeks ago

Yes, this seems to be unintentional. Can you open an issue?