Use of constexpr

Moderators: david ward, misra cpp

Post Reply
mikearmagedon
Posts: 3
Joined: Sat Mar 18, 2017 4:32 pm
Company: Minho University

Use of constexpr

Post by mikearmagedon » Fri Mar 31, 2017 3:15 pm

I am working on an embedded system project and using constexpr on the following situations:
- on constructors so that objects can be statically initialized in compile time
- on functions that are used to initialize constant values
- on constant variables, as an alternative to constant macros (as it violates rule 16-2-2)

The main reasons for using constexpr are (a)to avoid dynamic initialization, making the system more secure, and (b)to make better use of the system's ROM memory.

The constexpr is a language extension so a deviation procedure is necessary to allow its usage.

I would like to know first, if there is any way of achieving the same without the need to write a deviation procedure?

If such is not possible, are the reasons above enough to justify a deviation procedure?

Kind regards,
Miguel Araújo

misra cpp
Posts: 148
Joined: Mon Jun 02, 2008 1:55 pm
Company: MISRA

Re: Use of constexpr

Post by misra cpp » Mon Jul 10, 2017 10:52 am

MISRA C++:2008 is based on C++:2003, which does not include constexpr

When MISRA C++ is revised it will be based on a more recent version of the C++ standard, and will consider the use of constexpr
Posted by and on behalf of
the MISRA C++ Working Group

Post Reply

Return to “6.1 General (C++)”