In reply to dave_59:
Hi Dave,
From SV_LRM std 1800-2017, 19.5.1 Specifying bins for values
The expression within the iff construct at the end of a bin definition provides a per-bin guard condition. If the expression is false at a sampling point, the count for the bin is not incremented.
bins_keyword bin_identifier [ [ ] ] = trans_list [ iff ( expression ) ]
//This is working fine for me. i am able to dump the correct collected coverage value also.
cp : coverpoint type_a {
bins out_bound_pqr[] = {[10:18],[37:45]} iff(type_a == PQR);
bins out_bound_xyz[] = {5,[10:18],25,[37:45]} iff(type_a == XYZ);
}