Merge pull request #2302 from ericvergnaud/python-3-fix-2301

Fixes #2301
This commit is contained in:
Terence Parr 2018-07-24 12:56:46 -07:00 committed by GitHub
commit c9df334af8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 37 additions and 2 deletions

View File

@ -854,4 +854,39 @@ public class ParserExecDescriptors {
@CommentHasStringValue @CommentHasStringValue
public String grammar; public String grammar;
} }
/**
* This is a regression test for antlr/antlr4#2301.
*/
public static class OrderingPredicates extends BaseParserTestDescriptor {
public String input = "POINT AT X";
public String output = null;
public String errors = null;
public String startRule = "expr";
public String grammarName = "Issue2301";
/**
grammar Issue2301;
SPACES: [ \t\r\n]+ -> skip;
AT: 'AT';
X : 'X';
Y : 'Y';
ID: [A-Z]+;
constant
: 'DUMMY'
;
expr
: ID constant?
| expr AT X
| expr AT Y
;
*/
@CommentHasStringValue
public String grammar;
}
} }

View File

@ -135,8 +135,8 @@ class PrecedencePredicate(SemanticContext):
else: else:
return None return None
def __cmp__(self, other): def __lt__(self, other):
return self.precedence - other.precedence return self.precedence < other.precedence
def __hash__(self): def __hash__(self):
return 31 return 31