I think it's also supported by C99:
http://www.cplusplus.com/reference/cmath/isfinite/

But I've just checked that the comparison `range < range_cutoff && range >= scan_in.range_min` will be always `false` for not finite values `+Inf`, `-Inf` and `NaN`.
So we don't really need the `std::is_finite` check.
I've updated the PR, that now simply removes the comment regarding `quiet_NaN`, that IMHO is now covered with the comparison.

I've tried with this code:
``` cpp
#include <iostream>
#include <limits>

using namespace std;

int main()
{
    typedef double T;
    
    T inf_pos = std::numeric_limits<T>::infinity();
    T inf_neg = -inf_pos;
    T not_a_number = std::numeric_limits<T>::quiet_NaN();
    
    T range_min =  0.1;
    T range_max = 10.0;
    
    cout << "+inf = " << inf_pos << endl;
    cout << "-inf = " << inf_neg << endl;
    cout << " NaN = " << not_a_number << endl;
   
    cout << (inf_pos <= range_min) << endl;
    cout << (inf_neg > range_max) << endl;
    cout << (not_a_number > range_max) << endl;
   
    return 0;
}
```
here
http://www.compileonline.com/compile_cpp11_online.php