udunits/src/main/java/ucar/units/UnitImpl.java
public boolean isCompatible(final Unit that) {
        // jeffm: for some reason just calling getDerivedUnit().equals(...)
        // with jikes 1.1.7 as the compiler causes the jvm to crash.
        // The Unit u1=... does not crash.
        final Unit u1 = getDerivedUnit();
        return u1.equals(that.getDerivedUnit());
        // return getDerivedUnit().equals(that.getDerivedUnit());
    }
public boolean isCompatible(final Unit that) {
        // jeffm: for some reason just calling getDerivedUnit().equals(...)
        // with jikes 1.1.7 as the compiler causes the jvm to crash.
        // The Unit u1=... does not crash.
        final Unit u1 = getDerivedUnit();
        return u1.equals(that.getDerivedUnit());
        // return getDerivedUnit().equals(that.getDerivedUnit());
    }
public boolean isCompatible ( final Unit that ) { // jeffm: for some reason just calling getDerivedUnit().equals(...) // with jikes 1.1.7 as the compiler causes the jvm to crash. // The Unit u1=... does not crash. final Unit u1 = getDerivedUnit ( ) ; return u1 . equals ( that . getDerivedUnit ( ) ) ; // return getDerivedUnit().equals(that.getDerivedUnit()); }
Indicates if numeric values in this unit are convertible with another
unit.

@param that
The other unit.
@return <code>true</code> if and only if numeric values in this unit are
convertible the other unit.
Indicates if numeric values in this unit are convertible with another unit .