```python
def range_check(readings: list, low: int, high: int) -> bool:
    """
    Check if all readings fall within the specified range [low, high], inclusive.
    A run with no readings is considered to be within any range.
    Raises ValueError if low is greater than high.
    """
    if low > high:
        raise ValueError("Low cannot be greater than high.")
    
    return all(low <= reading <= high for reading in readings)
```