Changed paths:
M javacutil/src/main/java/org/checkerframework/javacutil/TypesUtils.java
Log Message:
-----------
Fix handling of primitives in TypesUtils#leastUpperBound (#5129)
Summary:
The previous version would return incorrect lub in some cases, e.g.:
```
TypesUtils.leastUpperBound(t1=Integer, t2=int) == int
```
This is because int and Integer are assignable to each other, so just
checking assignability is not enough to figure out which type to return.