F2I-Consulting / fesapi

DevKit for ENERGISTICS™ data standards (mainly RESQML™), multi-languages (C++, Java, C#, Python)
Apache License 2.0
32 stars 24 forks source link

std::uncaught_exception is deprecated starting at C++17 #320

Closed untereiner closed 11 months ago

untereiner commented 11 months ago

What are the steps to reproduce this issue?

Compile with C++17: std::uncaught_exception is deprecated starting at C++17

What does happen?

compilation error

What were you expecting to happen?

compilation success

Any logs, error output, etc?

n.a.

Any other comments?

n.a.

What versions of fesapi are you using?

2.8.0.0

philippeVerney commented 11 months ago

Hi @untereiner

date.h is a not a FESAPI code but a Howard Hinnant one. This issue has been discussed several times upstream. The most recent answer from Howard Hinnant seems to be here. See also this answer. This "issue" is then very well known and acknowledged even assumed. However, one can tell that the Howard Hinnant's decision should be revisited as he himself let think about it as he made the decision 5 (now 6) years ago.

Looking at all of that, I am a bit reluctant to take another decision than the official one in order to solve this issue.

I have personally not enough current knowledge to take any decision but think that Howard Hinnant knows the best the pros and cons regarding this issue in his code. Maybe you would want to rediscuss it upstream? You can count on me to integrate quickly the latest version of date.h if there is a new release.

untereiner commented 11 months ago

Hi! Fair enough. It is not your responsibility. I will add the mentioned compiler flag in my project. On the other side I disagree with the author. The standard says « deprecated c++17 » so it’s use should be avoided starting with c++17