libstdc++ 是否符合 MISRA C++?
Does libstdc++ comply with MISRA C++?
这是出于我之前提出的一个问题(关于同一主题):
现在我有一个更重要的问题:libstdc++(gcc 标准库的实现)MISRA C++:2008 兼容吗?我认为答案是 是 ... 只要您使用 gcc
和 -std=c++03
标志编译代码。
如果我使用 2011 年的标准(即 -std=c++11
)编译代码会怎样? MISRA C++:2008 兼容吗?我是否必须证明 libstdc++ 符合 MISRA 标准?我可以为几个规则编写偏差(例如,我想使用 std::array
而不是 C 样式数组),但是为整个 MISRA 标准编写它们看起来像一个 terryfying 任务。
如果您对此主题有任何见解,我将不胜感激。
不,它不符合 MISRA-C++ 标准。 glibc 也不是。但是标准也没有要求库必须用某种语言编写。标准库本身的标准合规性是一个相当模糊的话题,有或没有 MISRA。
我非常怀疑 MISRA-C++ 是这些库的优先选择。库(和 gcc)维护者主要来自 Linux/Desktop ("hosted system") 方面,不需要 MISRA 合规性。
如果您需要符合 MISRA 标准的标准库,则必须查看各种商业嵌入式系统编译器。
What happens if I compile the code with the standard from 2011? Is that MISRA C++:2008 compliant?
不,它不合规。 MISRA-C++ 明确要求您使用 C++03,因此很难证明此处存在偏差。
Do I have to prove that the libstdc++ is MISRA compliant?
无法证明,因为它不是。
这是出于我之前提出的一个问题(关于同一主题):
现在我有一个更重要的问题:libstdc++(gcc 标准库的实现)MISRA C++:2008 兼容吗?我认为答案是 是 ... 只要您使用 gcc
和 -std=c++03
标志编译代码。
如果我使用 2011 年的标准(即 -std=c++11
)编译代码会怎样? MISRA C++:2008 兼容吗?我是否必须证明 libstdc++ 符合 MISRA 标准?我可以为几个规则编写偏差(例如,我想使用 std::array
而不是 C 样式数组),但是为整个 MISRA 标准编写它们看起来像一个 terryfying 任务。
如果您对此主题有任何见解,我将不胜感激。
不,它不符合 MISRA-C++ 标准。 glibc 也不是。但是标准也没有要求库必须用某种语言编写。标准库本身的标准合规性是一个相当模糊的话题,有或没有 MISRA。
我非常怀疑 MISRA-C++ 是这些库的优先选择。库(和 gcc)维护者主要来自 Linux/Desktop ("hosted system") 方面,不需要 MISRA 合规性。
如果您需要符合 MISRA 标准的标准库,则必须查看各种商业嵌入式系统编译器。
What happens if I compile the code with the standard from 2011? Is that MISRA C++:2008 compliant?
不,它不合规。 MISRA-C++ 明确要求您使用 C++03,因此很难证明此处存在偏差。
Do I have to prove that the libstdc++ is MISRA compliant?
无法证明,因为它不是。