Commit Graph

243 Commits

Author SHA1 Message Date
Gennadiy Civil
fa658e0cc0 merging 2018-04-12 13:42:47 -04:00
Gennadiy Civil
c67f51b5dc msvc 2018-04-12 11:32:17 -04:00
Gennadiy Civil
9b5940e040 revert this one 2018-04-12 10:28:02 -04:00
Gennadiy Civil
b2d81b4fb2 merge, ... gmock-matchers test 2018-04-12 09:45:07 -04:00
Gennadiy Civil
07f3bdd4c9 Merge branch 'master' of https://github.com/google/googletest 2018-04-12 09:13:38 -04:00
Gennadiy Civil
e77deb29a6 small cleanup 2018-04-12 09:12:02 -04:00
Victor Costan
1324e2d706 Remove multiple inheritance from "unintesting call" mock classes.
Internal CL 156157936, which was published in commit
fe402c2779, introduced undefined behavior
by casting a base class (internal::{Naggy,Nice,Strict}Base<MockClass>,
using the curiously recurring template pattern) pointer to a derived
class ({Naggy,Nice,Strict}Mock<MockClass>), in the base class'
constructor. At that point, the object isn't guaranteed to have taken on
the shape of the derived class, and casting is undefined behavior.

The undefined behavior was caught by Chrome's CFI build bot [1], and
prevents rolling googletest past that commit / CL.

This commit simplifies the {Naggy,Nice,Strict}Mock class hierarchy in
a way that removes the undefined behavior.

[1] https://www.chromium.org/developers/testing/control-flow-integrity
2018-04-12 00:48:30 -07:00
Gennadiy Civil
373481c5a9 ...merging 2018-04-11 15:46:57 -04:00
Gennadiy Civil
8654c1ca10 merging 2018-04-11 15:33:31 -04:00
Gennadiy Civil
ab84d14281 Upstream cl/192179348 2018-04-11 15:24:04 -04:00
Gennadiy Civil
5cd213ea5e ..and this should be it 2018-04-11 10:10:24 -04:00
Gennadiy Civil
6a7573a7de more 2018-04-11 09:55:36 -04:00
Gennadiy Civil
039d9b54c2 pizza work, cont 2018-04-11 09:47:38 -04:00
Gennadiy Civil
f15fd9610b osx pizzas, cont 2018-04-11 09:33:51 -04:00
Gennadiy Civil
b15be9a819 fixing osx pizza 2018-04-11 09:20:48 -04:00
Gennadiy Civil
9bc82ce725 merging 2018-04-10 16:22:50 -04:00
Gennadiy Civil
25d8176e4f merging 2018-04-10 16:18:23 -04:00
Gennadiy Civil
39c58da187 merge 2018-04-10 16:10:34 -04:00
Gennadiy Civil
e1071eb949 RE-Doing the merge, this time with gcc on mac in the PR so I can catch errors before merging the PR 2018-04-10 15:57:16 -04:00
Gennadiy Civil
ca54b67303
Revert "gmock actions 2" 2018-04-09 22:10:12 -04:00
Gennadiy Civil
64d24b810f ... and this 2018-04-09 16:24:30 -04:00
Gennadiy Civil
f5871009e6 yet more 2018-04-09 16:04:48 -04:00
Gennadiy Civil
05b5a53898 formatting 2018-04-09 15:50:19 -04:00
Gennadiy Civil
2de24fbf7a tuning 2018-04-09 15:39:12 -04:00
Gennadiy Civil
055f32199a tuning 2018-04-09 15:38:38 -04:00
Gennadiy Civil
44da2b9ac5 cont 2018-04-09 15:23:00 -04:00
Gennadiy Civil
e93a0ece26 msvc 2018-04-09 13:51:01 -04:00
Gennadiy Civil
c4684b49cf more msvc 2018-04-09 12:03:40 -04:00
Gennadiy Civil
431bfdcaf4 msvc 14 2018-04-09 11:48:02 -04:00
Gennadiy Civil
8bc7c631e8 testing msvc again 2018-04-09 11:35:01 -04:00
Gennadiy Civil
c4e3d77ddc More msvc 14 2018-04-09 11:22:11 -04:00
Gennadiy Civil
6525044ce2 And also silence for MSVS14 2018-04-09 10:51:15 -04:00
Gennadiy Civil
35a709a701 preproc syntax ( I can never remember it) 2018-04-09 10:25:59 -04:00
Gennadiy Civil
61e8a0b10b syntax 2018-04-09 10:08:12 -04:00
Gennadiy Civil
03be5df17c cont. 2018-04-09 09:59:09 -04:00
Gennadiy Civil
e0b3c269c2 continued 2018-04-09 09:51:02 -04:00
Gennadiy Civil
d0de1180e4 Merge branch 'master' of github.com:google/googletest 2018-04-09 09:29:37 -04:00
Victor Costan
51f8ad47df Sync gmock-generated-nice-strict.h.pump with gmock-generated-nice-strict.h.
Commit fe402c2779 published the changes in
internal CL 156157936, but missed the diff in
gmock-generated-nice-strict.h.pump. This makes it difficult to reason
about the change, because the .pump file is more concise than the
generated file.

This PR was tested by re-generating the .h file using the command below
and checking the git diff.

./googletest/scripts/pump.py \
    googlemock/include/gmock/gmock-generated-nice-strict.h.pump
2018-04-06 17:21:05 -07:00
Gennadiy Civil
dbd206e3d9 more mcvs fixing 2018-04-06 16:55:46 -04:00
Gennadiy Civil
701e1e5dc1 linkage, fixing MSVC 2018-04-06 16:43:35 -04:00
Gennadiy Civil
2d4d4ef739 fixing MSVC 2018-04-06 16:31:11 -04:00
Gennadiy Civil
5fe8de5ded more warnings 2018-04-06 11:40:04 -04:00
Gennadiy Civil
c75b76e20a warnings 2018-04-06 11:00:13 -04:00
Gennadiy Civil
04e31881fc cont - 2 2018-04-06 10:52:49 -04:00
Gennadiy Civil
32ac949254 cont 2018-04-06 10:43:11 -04:00
Gennadiy Civil
1831ac9361 more warnings 2018-04-06 10:35:09 -04:00
Gennadiy Civil
eb3e4aac2e deal with MSVC warn, cont 1 2018-04-06 10:24:49 -04:00
Gennadiy Civil
50c0bcd7e3 Cont. deal with MCVS warnings 2018-04-06 10:15:00 -04:00
Gennadiy Civil
b5c87fbcb6 Deal with MCVS warnings 2018-04-06 10:01:40 -04:00
Gennadiy Civil
88fc7d7552 merging gmock-actions 2 2018-04-06 09:50:01 -04:00