[Boost-bugs] [Boost C++ Libraries] #4133: std::logic_error as a base class for program_options::error

Subject: [Boost-bugs] [Boost C++ Libraries] #4133: std::logic_error as a base class for program_options::error
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2010-04-21 13:15:21


#4133: std::logic_error as a base class for program_options::error
--------------------------+-------------------------------------------------
 Reporter: anonymous | Owner: vladimir_prus
     Type: Bugs | Status: new
Milestone: Boost 1.43.0 | Component: program_options
  Version: Boost 1.42.0 | Severity: Problem
 Keywords: |
--------------------------+-------------------------------------------------
 "19.1 Exception classes

 1 The Standard C + + library provides classes to be used to report
 certain errors (17.4.4.8) in C + + programs. In
 the error model reflected in these classes, errors are divided into two
 broad categories: logic errors and
 runtime errors.

 2 The distinguishing characteristic of logic errors is that they are due
 to errors in the internal logic of the pro-
 gram. In theory, they are preventable.

 3 By contrast, runtime errors are due to events beyond the scope of the
 program. They cannot be easily pre-
 dicted in advance. The header <stdexcept> defines several types of
 predefined exceptions for reporting
 errors in a C + + program. These exceptions are related by inheritance."

 From what POV po::unknown_option is 'due to errors in the internal logic
 of the program'? All po:: errors should be separated into two groups
 (runtime and logic) or std::exception should be used as a base class.

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/4133>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.

This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:02 UTC