Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
2.0-beta-1
-
None
Description
The following code will pass, though the return type of x after the if/else statement may differ:
def x if (cond) { x = new Date() } else { x = 123 } x.toInteger()
In a similar manner:
def x = '123' for (int i=0; i<5;i++) { x = new HashSet() } x.toInteger()
def x = '123' while (false) { x = new HashSet() } x.toInteger()
def x = '123' def cond = false cond?(x = new HashSet()):3 x.toInteger()