diff options
author | Aldy Hernandez <aldyh@redhat.com> | 2023-04-25 10:10:39 +0200 |
---|---|---|
committer | Aldy Hernandez <aldyh@redhat.com> | 2023-04-25 12:08:44 +0200 |
commit | a024ac7bca9b9de1d2e0c19d4bb11df293e27a7d (patch) | |
tree | 1aa37a9941e7ed3a0b206d6de61abc7cc4e6f813 /gcc | |
parent | 3a7bed5e71c0cb74d12e35749da633d818e05cff (diff) | |
download | gcc-a024ac7bca9b9de1d2e0c19d4bb11df293e27a7d.zip gcc-a024ac7bca9b9de1d2e0c19d4bb11df293e27a7d.tar.gz gcc-a024ac7bca9b9de1d2e0c19d4bb11df293e27a7d.tar.bz2 |
Remove default constructor to nan_state.
I think it's best to specify the default behavior of nan_state, since
it's not obvious that nan_state() defaults to TRUE. Also, this avoids
the ugly nan_state(false, false) idiom.
gcc/ChangeLog:
* value-range.cc (frange::set): Adjust constructor.
* value-range.h (nan_state::nan_state): Replace default
constructor with one taking an argument.
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/value-range.cc | 3 | ||||
-rw-r--r-- | gcc/value-range.h | 13 |
2 files changed, 8 insertions, 8 deletions
diff --git a/gcc/value-range.cc b/gcc/value-range.cc index 9716241..26acba7 100644 --- a/gcc/value-range.cc +++ b/gcc/value-range.cc @@ -426,8 +426,7 @@ frange::set (tree type, const REAL_VALUE_TYPE &min, const REAL_VALUE_TYPE &max, value_range_kind kind) { - nan_state nan; - set (type, min, max, nan, kind); + set (type, min, max, nan_state (true), kind); } void diff --git a/gcc/value-range.h b/gcc/value-range.h index 33ef3b5..d2a2759 100644 --- a/gcc/value-range.h +++ b/gcc/value-range.h @@ -274,12 +274,12 @@ public: virtual void accept (const vrange_visitor &v) const override; }; -// The NAN state as an opaque object. The default constructor is +-NAN. +// The NAN state as an opaque object. class nan_state { public: - nan_state (); + nan_state (bool); nan_state (bool pos_nan, bool neg_nan); bool neg_p () const; bool pos_p () const; @@ -288,13 +288,14 @@ private: bool m_neg_nan; }; -// Default constructor initializing the object to +-NAN. +// Set NAN state to +-NAN if NAN_P is true. Otherwise set NAN state +// to false. inline -nan_state::nan_state () +nan_state::nan_state (bool nan_p) { - m_pos_nan = true; - m_neg_nan = true; + m_pos_nan = nan_p; + m_neg_nan = nan_p; } // Constructor initializing the object to +NAN if POS_NAN is set, -NAN |