Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[CS:GO] Fix compilation errors for std=c++2a #144

Open
wants to merge 1 commit into
base: csgo
Choose a base branch
from

Conversation

mixern6
Copy link

@mixern6 mixern6 commented Oct 1, 2023

The PR fixes these compilation errors:

  • error: increment of object of volatile-qualified type 'volatile int' is deprecated
  • error: ISO C++17 does not allow 'register' storage class specifier
  • error: too many arguments provided to function-like macro invocation clamp

Explanation:

@GAMMACASE
Copy link
Member

You probably wanted to target cs2 branch instead of csgo?

@mixern6
Copy link
Author

mixern6 commented Oct 2, 2023

It is relevant for CS2 too, but I'd like to sort out these problems for CS:GO before moving on to CS2

@GAMMACASE
Copy link
Member

The ifdef around the clamp wouldn't cover all the cases, as earlier cpp versions also could trigger. The macro would later conflict with libraries like algorithm, you can btw remove it completely as I see there's a clamp function defined in basetypes.h in hl2sdk codebase so it gets picked up.

@mixern6
Copy link
Author

mixern6 commented Oct 2, 2023

The ifdef around the clamp wouldn't cover all the cases, as earlier cpp versions also could trigger. The macro would later conflict with libraries like algorithm, you can btw remove it completely as I see there's a clamp function defined in basetypes.h in hl2sdk codebase so it gets picked up.

Removed the clamp definition. SourceMod building finishes without errors.

@GAMMACASE
Copy link
Member

GAMMACASE commented Oct 2, 2023

I can't merge the csgo pr's, but by any chance if you are able to duplicate it also to the cs2 branch I'll merge that in as cs2 is the same in this regard. Otherwise looks good to me.

@mixern6 mixern6 changed the title Fix compilation errors for std=c++2a [CS:GO] Fix compilation errors for std=c++2a Oct 2, 2023
@mixern6
Copy link
Author

mixern6 commented Oct 2, 2023

I can't merge the csgo pr's, but by any chance if you are able to duplicate it also to the cs2 branch I'll merge that in as cs2 is the same in this regard. Otherwise looks good to me.

What will happen to this PR? I see the problem is relevant for all the other SDK's. Can the fix be merged to all of them? Shall I create a separate PR for each SDK?

@GAMMACASE Could you please cherry-pick this change to all the branches?

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.

3 participants