]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
Automatically set type is certain Value_Range routines.
authorAndrew MacLeod <amacleod@redhat.com>
Wed, 2 Aug 2023 21:46:58 +0000 (17:46 -0400)
committerAndrew MacLeod <amacleod@redhat.com>
Thu, 3 Aug 2023 18:19:54 +0000 (14:19 -0400)
Set routines which take a type shouldn't have to pre-set the type of the
underlying range as it is specified as a parameter already.

* value-range.h (Value_Range::set_varying): Set the type.
(Value_Range::set_zero): Ditto.
(Value_Range::set_nonzero): Ditto.

gcc/value-range.h

index d8af6fca7d7740051f717490ffc85642c0eaa463..622b68863d26b00b000b47f74be1699b34f8fbed 100644 (file)
@@ -679,15 +679,16 @@ public:
   tree type () { return m_vrange->type (); }
   bool varying_p () const { return m_vrange->varying_p (); }
   bool undefined_p () const { return m_vrange->undefined_p (); }
-  void set_varying (tree type) { m_vrange->set_varying (type); }
+  void set_varying (tree type) { init (type); m_vrange->set_varying (type); }
   void set_undefined () { m_vrange->set_undefined (); }
   bool union_ (const vrange &r) { return m_vrange->union_ (r); }
   bool intersect (const vrange &r) { return m_vrange->intersect (r); }
   bool contains_p (tree cst) const { return m_vrange->contains_p (cst); }
   bool singleton_p (tree *result = NULL) const
     { return m_vrange->singleton_p (result); }
-  void set_zero (tree type) { return m_vrange->set_zero (type); }
-  void set_nonzero (tree type) { return m_vrange->set_nonzero (type); }
+  void set_zero (tree type) { init (type); return m_vrange->set_zero (type); }
+  void set_nonzero (tree type)
+    { init (type); return m_vrange->set_nonzero (type); }
   bool nonzero_p () const { return m_vrange->nonzero_p (); }
   bool zero_p () const { return m_vrange->zero_p (); }
   wide_int lower_bound () const; // For irange/prange comparability.