// Test nil comparison cases // nil == nil is always true fn nilEqNil() -> bool { return nil == nil; } // nil <> nil is always false fn nilNeNil() -> bool { return nil <> nil; } // nil == opt (reversed order, pointer optional) unsafe fn nilEqOptPtr(a: ?*i32) -> bool { return nil == a; } // nil <> opt (reversed order, pointer optional) unsafe fn nilNeOptPtr(a: ?*i32) -> bool { return nil <> a; } // nil == opt (reversed order, aggregate optional) fn nilEqOptAgg(a: ?i32) -> bool { return nil == a; } // nil <> opt (reversed order, aggregate optional) fn nilNeOptAgg(a: ?i32) -> bool { return nil <> a; }