1. 16 Dec, 2019 3 commits
    • Shahbaz Youssefi's avatar
      Revert "Googletest export": disallow empty prefix · 1800a38f
      Shahbaz Youssefi authored
      This reverts commit 20b5b8ec.
      Reason for revert: Breaks existing applications, such as ANGLE
      (angleproject.org), requires adding an extra prefix that needs to be
      typed for no reason (when testing from command line) and increases the
      logs' sizes by a non-trivial amount due to the very large number of
      tests ANGLE runs.
      
      Original commit message:
      
          Add a compile time check to ensure that the parameters to TEST_P and
          INSTANTIATE_TEST_SUITE_P are not empty. Some compilers already fail
          in that case and, even where it works, it's likely to result in
          technically invalid code by virtue of creating reserved identifiers:
          https://en.cppreference.com/w/cpp/language/identifiers
      
      First, every project is perfectly capable of adding a prefix if they
      want to support such a compiler. This change penalizes every
      project.
      
      Second, using a prefix such as `_p` also results in reserved
      identifiers, so this change is not really solving the problem.  For that
      matter, instead of generating `gtest_##prefix##...`, you can generate
      `gtest_x##prefix##...` to correctly fix the issue, including when empty
      prefixes are used.
      1800a38f
    • Shahbaz Youssefi's avatar
      Revert "Googletest export": Remove test for empty prefix · 4b7809c2
      Shahbaz Youssefi authored
      This reverts commit 4c25e2b8.
      Reason for revert: Reverting the commit that disallows empty prefixes.
      
      Original commit message:
      
          Remove a test case rendered obsolete by disallowing empty argument for INSTANTIATE_TEST_SUITE_P.
          Remove the code that it was testing.
      4b7809c2
    • Shahbaz Youssefi's avatar
      Workaround VS bug w.r.t empty arguments to macros · d2016469
      Shahbaz Youssefi authored
      Empty arguments can be passed to macros per C99 and C++11 specs, which
      can then be forwarded to other macros.
      
      Visual Studio's compiler has a bug in the following situation:
      
          #define A(x) #x
          #define B(x, y) A(x)
          B(, b)
      
      In the above case, Visual Studio first expands x to nothing, then
      complains that A is not invoked with the right amount of arguments.
      However, x in A(x) is still one argument, even if it expands to no
      preprocessing tokens.  See also https://stackoverflow.com/a/7674214.
      d2016469
  2. 13 Dec, 2019 7 commits
  3. 06 Dec, 2019 2 commits
  4. 05 Dec, 2019 3 commits
  5. 02 Dec, 2019 3 commits
  6. 27 Nov, 2019 4 commits
  7. 26 Nov, 2019 8 commits
  8. 25 Nov, 2019 2 commits
  9. 22 Nov, 2019 8 commits