Fix regression in 3.0.0 where legal code following an operator<< definition might give a syntax error.

SF Bug #1365.
This commit is contained in:
William S Fulton 2014-04-04 08:31:59 +01:00
commit 1d857beb9d
3 changed files with 15 additions and 1 deletions

View file

@ -5,6 +5,10 @@ See the RELEASENOTES file for a summary of changes in each release.
Version 3.0.1 (in progress)
===========================
2014-04-04: wsfulton
Fix regression in 3.0.0 where legal code following an operator<< definition might
give a syntax error. SF Bug #1365.
2014-04-03: olly
[PHP] Fix wrapping director constructors with default parameters
with a ZTS-enabled build of PHP.

View file

@ -24,6 +24,14 @@ public:
int operator<<(ABC &) { return 0; }
};
class DEF {
public:
int a;
int operator<<(DEF &) { return 0; }
int operator>>(DEF &) { return 0; }
};
template<class T>
class ABC2 {
public:

View file

@ -543,8 +543,10 @@ static int look(Scanner * s) {
state = 220;
else if (c == '}')
return SWIG_TOKEN_RBRACE;
else if (c == '{')
else if (c == '{') {
Scanner_clear_brackets(s);
return SWIG_TOKEN_LBRACE;
}
else if (c == '=')
state = 33;
else if (c == '+')