MemorySegment is a value-based class. Comparing MemorySegment instances using == or != is bug-prone because MemorySegment implementations may not be unique for the same underlying memory. Use Objects.equals() (or .equals() if the receiver is known to be non-null) instead.
For example:
MemorySegment seg = ...; if (seg == MemorySegment.NULL) { // reference equality ... }
should be:
MemorySegment seg = ...; if (Objects.equals(seg, MemorySegment.NULL)) { // value equality ... }
Reference equality between any two MemorySegment instances (e.g., a == b) is flagged by this check, and Objects.equals(a, b) is the preferred alternative.