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

Set -Wno-unused-variable for tests #1682

Merged
merged 1 commit into from Oct 20, 2023
Merged

Set -Wno-unused-variable for tests #1682

merged 1 commit into from Oct 20, 2023

Conversation

oontvoo
Copy link
Member

@oontvoo oontvoo commented Oct 19, 2023

We used assert() a lot in tests and that can cause build breakages in some of the opt builds (since assert() are removed)

it's not practical to sprinkle "(void)" everywhere so I think setting this warning option is the best option for now.

We  used assert() a lot in tests and that can cause build breakages in some of the opt builds (since assert() are removed)

it's not practical to sprinkle "(void)" everywhere so I think setting this warning option is the best option for now.
@dmah42
Copy link
Member

dmah42 commented Oct 20, 2023

do you know why we're not seeing these as issues in the CI bots? release mode would strip the asserts, and we have both -Wall and -Werror enabled so we should be getting these warnings/errors...

@LebedevRI
Copy link
Collaborator

Because -Wall is a very small subset of all the compiler-provided warnings.
You'd want -Weverything-clean, with explicit opt-outs.

@dmah42
Copy link
Member

dmah42 commented Oct 20, 2023

Because -Wall is a very small subset of all the compiler-provided warnings. You'd want -Weverything-clean, with explicit opt-outs.

ah yes, the nuanced distinction between "all" and "everything" (everywhere all at once, presumably).

@dmah42 dmah42 merged commit 7495f83 into google:main Oct 20, 2023
54 of 60 checks passed
@LebedevRI
Copy link
Collaborator

Is this missing the CMake part?

@oontvoo
Copy link
Member Author

oontvoo commented Oct 20, 2023

Is this missing the CMake part?

Good point - will send a followup PR.

Thanks both!

@dmah42
Copy link
Member

dmah42 commented Oct 20, 2023

Is this missing the CMake part?

Good point - will send a followup PR.

Thanks both!

#1683 i think does it.

@@ -18,6 +18,9 @@ TEST_COPTS = [
# "-Wshorten-64-to-32",
"-Wfloat-equal",
"-fstrict-aliasing",
## assert() are used a lot in tests upstream, which may be optimised out leading to
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What "upstream" is this referring to?

I ran into the same problem with unused variables, but only needed one BENCHMARK_MAYBE_UNUSED to fix it.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I was referring to the test code in this repo (which tends to use assert() rather than GTEST's assertion utilities)

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.

None yet

4 participants