Gennadiy Civil
7b2722cdbc
Merge pull request #1557 from pwnall/gmock-fix-ub
...
Remove multiple inheritance from "unintesting call" mock classes.
2018-04-12 09:13:11 -04:00
Gennadiy Civil
363d9cf4d5
Merge branch 'master' of https://github.com/google/googletest
2018-04-12 09:12:15 -04:00
Gennadiy Civil
dea55d0bf0
small cleanup
2018-04-12 09:12:02 -04:00
Victor Costan
75b1be4ad1
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
b9f3c4b47b
Merge pull request #1561 from gennadiycivil/master
...
Merging gmock-actions
2018-04-11 16:06:23 -04:00
Gennadiy Civil
c26192aada
...merging
2018-04-11 15:46:57 -04:00
Gennadiy Civil
c91c735d93
Merge branch 'master' of https://github.com/google/googletest
2018-04-11 15:38:25 -04:00
Gennadiy Civil
6979a13236
Merge pull request #1560 from gennadiycivil/master
...
Upstream cl/192179348
2018-04-11 15:38:15 -04:00
Gennadiy Civil
c54f1e884d
merging
2018-04-11 15:33:31 -04:00
Gennadiy Civil
1370a1628d
Merge branch 'master' of https://github.com/google/googletest
2018-04-11 15:24:25 -04:00
Gennadiy Civil
41c224c80c
Upstream cl/192179348
2018-04-11 15:24:04 -04:00
Gennadiy Civil
9ec015a68d
Merge pull request #1559 from gennadiycivil/master
...
Upstream cl 191754725
2018-04-11 13:57:33 -04:00
Gennadiy Civil
aebd48e0cf
Merge branch 'master' of https://github.com/google/googletest
2018-04-11 13:20:55 -04:00
Gennadiy Civil
c0ffe6ed80
merging
2018-04-11 13:20:36 -04:00
Gennadiy Civil
25f695a66f
Merge pull request #1558 from gennadiycivil/master
...
RE-Doing the merge, this time with gcc on mac in the PR
2018-04-11 10:22:10 -04:00
Gennadiy Civil
797c6f1be1
..and this should be it
2018-04-11 10:10:24 -04:00
Gennadiy Civil
d0923d2754
more
2018-04-11 09:55:36 -04:00
Gennadiy Civil
720527ec6c
pizza work, cont
2018-04-11 09:47:38 -04:00
Gennadiy Civil
1b1d0bc874
osx pizzas, cont
2018-04-11 09:33:51 -04:00
Gennadiy Civil
1d07a24ea0
fixing osx pizza
2018-04-11 09:20:48 -04:00
Gennadiy Civil
2acb60eb5b
merging
2018-04-10 16:34:21 -04:00
Gennadiy Civil
fed44cc0c2
merging
2018-04-10 16:22:50 -04:00
Gennadiy Civil
6ed2d51c44
merging
2018-04-10 16:18:23 -04:00
Gennadiy Civil
346f1f5734
merge
2018-04-10 16:10:34 -04:00
Gennadiy Civil
ec1df5b40f
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
2ae55f54bf
Include gcc on mac into PR matrix
...
There was an error that slipped through and only showed up on PR merge (https://travis-ci.org/google/googletest/jobs/364304396/config ) , we dont want that again
2018-04-10 11:28:16 -04:00
Gennadiy Civil
da01494823
Merge pull request #1556 from google/revert-1551-master
...
Revert "gmock actions 2"
2018-04-09 22:37:50 -04:00
Gennadiy Civil
3f59eb6a59
Revert "gmock actions 2"
2018-04-09 22:10:12 -04:00
Gennadiy Civil
99af3b062e
Merge pull request #1551 from gennadiycivil/master
...
gmock actions 2
2018-04-09 16:34:54 -04:00
Gennadiy Civil
ca798e29e1
... and this
2018-04-09 16:24:30 -04:00
Gennadiy Civil
4bc5a055bc
this should be it
2018-04-09 16:13:45 -04:00
Gennadiy Civil
f9c57f3d48
yet more
2018-04-09 16:04:48 -04:00
Gennadiy Civil
d1a6cb501e
formatting
2018-04-09 15:50:19 -04:00
Gennadiy Civil
9d1fb0287a
tuning
2018-04-09 15:39:12 -04:00
Gennadiy Civil
2df7aec89a
tuning
2018-04-09 15:38:38 -04:00
Gennadiy Civil
b3d7edff1e
more
2018-04-09 15:33:56 -04:00
Gennadiy Civil
781a196953
cont
2018-04-09 15:23:00 -04:00
Gennadiy Civil
6d43c5d6dd
msvc
2018-04-09 13:51:01 -04:00
Gennadiy Civil
2852279601
more msvc
2018-04-09 12:03:40 -04:00
Gennadiy Civil
7ca71c7766
msvc 14
2018-04-09 11:48:02 -04:00
Gennadiy Civil
96af90153f
testing msvc again
2018-04-09 11:35:01 -04:00
Gennadiy Civil
d3eb463a53
More msvc 14
2018-04-09 11:22:11 -04:00
Gennadiy Civil
fc7005cb01
And also silence for MSVS14
2018-04-09 10:51:15 -04:00
Gennadiy Civil
a958171f8a
preproc syntax ( I can never remember it)
2018-04-09 10:25:59 -04:00
Gennadiy Civil
566ef95d7b
syntax
2018-04-09 10:08:12 -04:00
Gennadiy Civil
c0608ebfd9
cont.
2018-04-09 09:59:09 -04:00
Gennadiy Civil
a694e474a3
continued
2018-04-09 09:51:02 -04:00
Gennadiy Civil
a31ca9f2f8
Merge branch 'master' of github.com:google/googletest
2018-04-09 09:29:37 -04:00
Gennadiy Civil
1a8e789fc4
Merge pull request #1552 from pwnall/mock-pump
...
Sync gmock-generated-nice-strict.h.pump with gmock-generated-nice-strict.h
2018-04-09 09:28:35 -04:00
Victor Costan
a19ef8a031
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