Skip to content

Conversation

@kaixoo12
Copy link

@kaixoo12 kaixoo12 commented Apr 26, 2025

Bumping the C++ version is useful because while it allows you to make new code more readable, all compatibility is kept with older versions. Ergo, bumping doesn't hurt at all.

**I couldn't find where the standard was set before. So I set it in the root CMakeLists.txt. Please tell me where you had it set before @rodlie **

@kaixoo12 kaixoo12 changed the title Bump to C++17 Bump to C++20 Apr 26, 2025
@rodlie
Copy link
Member

rodlie commented May 13, 2025

https://github.com/friction2d/friction/blob/main/src/cmake/friction-common.cmake#L25

We are C++14.

We can move to C++17 for v1.1, I don't see any issues with that (I also don't see any need for it, as it does not introduce anything useful over C++14 imho).

But C++17 is our max, as C++20 requires major changes to the SDK's (and breaks current binary compatibility on Linux), and I have no plans writing anything that requires C++20 anyway.

@kaixoo12
Copy link
Author

Oh, I thought we were on C++11 or previous. C++14 is fine. I think C++17 does some neat minor things so upgrading would be good too.

@kaixoo12 kaixoo12 changed the title Bump to C++20 Bump to C++17 May 15, 2025
@kaixoo12
Copy link
Author

Put C++ 17 instead of 20. I still don't understand where we were setting the standard previously.

@kaixoo12
Copy link
Author

@rodlie could we merge this? If the changes look alright to you.

(I still dont know WHERE we were setting the C++ standard before, so maybe we should change it there instead)

@rodlie
Copy link
Member

rodlie commented Jun 18, 2025

@rodlie could we merge this? If the changes look alright to you.

(I still dont know WHERE we were setting the C++ standard before, so maybe we should change it there instead)

Read my original reply #514 (comment)

@rodlie rodlie added this to the 1.1.0 milestone Jun 18, 2025
@kaixoo12
Copy link
Author

Okay. Just to let you know, C++17 does introduce some good things. But C++20 is the dealbreaker that adds a lot of conveniences. I wonder if the SDK could be upgraded. Is it libav that is the blocker? Or skia?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants