Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
What is the intention of the rule 18-0-1?
#1
The Rule 18-0-1 of the MISRA-C++:2008 prohibits developers from using
C libraries entirely. At the same time, the 'Rationale' section of this
rule admits the use of the C++ libraries which correspond to C libraries.

Many of the C++ libraries corresponding to C libraries are defined
as the C libraries surrounded by the std namespace. For the reason,
we think even if the C++ libraries corresponding to C libraries
are used, it is impossible to avoid such vulnerability C libraries
have as undefined behavior and unspecified behavior.

Why does the Rule 18-0-1 admit the use of the C++ libraries corresponding
to C libraries?
<t></t>
Reply
#2
In some cases, C++ places additional requirements for its library resulting in a slightly different library to that of C. For example, the cmath header adds overloads.

The goal of 18-0-1 is to ensure that such differences are visible and so "the C++ library" be used. Other rules in the section cover specific issues with the features provided by the library.
Posted by and on behalf of
the MISRA C++ Working Group
Reply


Forum Jump:


Users browsing this thread: 5 Guest(s)