Skip to content
Snippets Groups Projects

Only test benchmark tools if benchmarking is enabled

All threads resolved!

There are two reasons to do this:

  • Benchmark optimization barriers use nonstandard constructs which, although widely portable, are not portable to every C++ compiler. The only known example is that MSVC doesn't like them. That was part of the rationale for putting benchmarks behind their own CMake flag, but this measure unfortunately falls apart if benchmarks come back through the unit test backdoor.
  • Benchmark tools use std::is_invokable_v in a way which triggers an LLVM 7.0 bug, and that breaks the builds of all of our Mac users who haven't upgraded to XCode 11 yet. We don't want to introduce code workarounds for old compilers, but requesting a compiler upgrade just because of this component is arguably a bit much when it isn't even used.
Edited by Hadrien Benjamin Grasland

Merge request reports

Pipeline #1432490 passed

Pipeline passed for eda48c62 on hgraslan:conditional-benchmark-test

Test coverage 65.00% (0.00%) from 1 job

Merged by Moritz KiehnMoritz Kiehn 5 years ago (Feb 21, 2020 4:32pm UTC)

Loading

Pipeline #1433223 passed

Pipeline passed for d513b0cf on master

Test coverage 65.00% (0.00%) from 1 job

Activity

Filter activity
  • Approvals
  • Assignees & reviewers
  • Comments (from bots)
  • Comments (from users)
  • Commits & branches
  • Edits
  • Labels
  • Lock status
  • Mentions
  • Merge request status
  • Tracking
Please register or sign in to reply
Loading