Add support for C++11 explicitly defaulted and deleted special member functions in the gmock generator.

This commit is contained in:
kosak
2014-11-17 02:49:22 +00:00
parent 055b6b17d2
commit 61adbcc5c6
2 changed files with 73 additions and 4 deletions

View File

@@ -1081,10 +1081,17 @@ class AstBuilder(object):
body = None
if token.name == '=':
token = self._GetNextToken()
assert token.token_type == tokenize.CONSTANT, token
assert token.name == '0', token
modifiers |= FUNCTION_PURE_VIRTUAL
token = self._GetNextToken()
if token.name == 'default' or token.name == 'delete':
# Ignore explicitly defaulted and deleted special members
# in C++11.
token = self._GetNextToken()
else:
# Handle pure-virtual declarations.
assert token.token_type == tokenize.CONSTANT, token
assert token.name == '0', token
modifiers |= FUNCTION_PURE_VIRTUAL
token = self._GetNextToken()
if token.name == '[':
# TODO(nnorwitz): store tokens and improve parsing.