When I use the `if` statement for the string subtype of the row type, the code generated by `IfCallGen` may meet npe. The case is:
Three conditions are required to reproduce the bug:
1、use `if` statement
2、string subtype of row type
3、the value of string subtype element is null
After excluding the effect of java code spilitter, the picture shows the original code generated by codegen(you can find the complete code generated by codegen in attached file: StreamExecCalc$17)，the assignment logic for `isNull$7` is between the line 140 and the line 152, so the value of `isNull$7` in line 94 is always false(the default value), and the line 96 will meet npe when `result$7` is null.
To fix this issue, we can change the location of the logic to generate casted codes in `IfCallGen`, like this: