On 8/4/20 8:11 AM, Aldy Hernandez wrote:
On Tue, Aug 4, 2020 at 3:59 PM Martin Sebor <mse...@gmail.com> wrote:

On 8/4/20 5:21 AM, Aldy Hernandez via Gcc-patches wrote:
This is a rather obvious patch, but I'd like a nod before committing.

Martin, I've removed your anti-range check, as it is subsumed by the
lower_bound/upper_bound code.  However, you will have to adapt the code
for multi-ranges if desired.  For example, you may want to loop through the
sub-ranges and do the right thing.  Look at value-range.h and see the comments
for class irange.  Those are the methods you should stick to.

i.e.
       for (i=0; i < vr->num_pairs(); ++i)
               stuff_with(vr->lower_bound(i), vr->upper_bound(i))

There should be no functional changes with this patch.

I have no concern with this change but I appreciate the heads
up and the tip on how to add the multi-range support.  Just
one suggestion: I'd prefer to keep the comment about the POSIX
requirement somewhere just as a reminder.

The comment is still there, as you had a duplicate one further up:

  else if (dstsize > target_int_max ())
         {
           warning_at (gimple_location (info.callstmt), info.warnopt (),
               "specified bound %wu exceeds %<INT_MAX%>",
               dstsize);
           /* POSIX requires snprintf to fail if DSTSIZE is greater
          than INT_MAX.  Avoid folding in that case.  */
           posunder4k = false;
         }

Are you ok with this, or would you rather me copy that comment somewhere else?

I'm fine with it as is, I didn't see the other copy.

Thanks!
Martin

Reply via email to