@@ -0,0 +1,1129 @@
+package sfBugsNew;%0D%0A%0D%0Apublic class Bug1325%3CP extends java.io.Serializable & Comparable%3CP%3E%3E%0D%0A    implements java.io.Serializable, Comparable%3CBug1325%3CP%3E%3E %7B%0D%0A    private static final long serialVersionUID = 1L;%0D%0A    private final P startPoint;%0D%0A    private final P endPoint;%0D%0A%0D%0A    //@NoWarning(%22BC_UNCONFIRMED_CAST%22)%0D%0A    public Bug1325(P start, P end) %7B%0D%0A        startPoint = start;%0D%0A        endPoint = end;%0D%0A        if (start.compareTo(end) %3E 0) throw new IllegalArgumentException(%22start after end%22);%0D%0A    %7D%0D%0A%0D%0A    @Override%0D%0A    public int compareTo(Bug1325%3CP%3E o) %7B%0D%0A        final int comp = startPoint.compareTo(o.startPoint);%0D%0A        return comp != 0 ? comp : endPoint.compareTo(o.endPoint);%0D%0A    %7D%0D%0A%0D%0A    @Override%0D%0A    public int hashCode() %7B%0D%0A        return (31 + (endPoint == null ? 0 : endPoint.hashCode())) * 31%0D%0A                + (startPoint == null ? 0 : startPoint.hashCode());%0D%0A    %7D%0D%0A%0D%0A%0D%0A    @Override%0D%0A    public boolean equals(Object obj) %7B%0D%0A        return obj instanceof Bug1325%0D%0A            && startPoint.equals(((Bug1325) obj).startPoint)%0D%0A            && endPoint.equals(((Bug1325) obj).endPoint);%0D%0A    %7D%0D%0A%7D%0D%0A

Test case for bug1325 (False positive BC_UNCONFIRMED_CAST)