1
$\begingroup$

I am C++ enthusiast and I like to design and architecture my software with latest C++ features specially with templates, but I have been struggling hard to find a way.

The compiler we use for LynxOS-DO178 RTOS with PowerPC architecture is more than decade old, with poor optimization, lack of several features, and often times just ending up in "internal compiler error". Code bloating occurs with simple template instantiations, which could be easily remove with latest compilers. All ideas and innovative improvements are simply stopped by the fact that our compiler cannot support this and that.

I believe I could get a tool chain for my cross-platform development supporting somewhat latest versions of GNU GCC/G++. But not sure if that can be ever certified for DAL A SW.

We have now C++14, approaching to C++17, still I have this question do we have anything modern yet from C++ that sees "light of sun" on a critical SW ? What are the risks, cons, etc for a flight critical SW ?

Bjarne Stroustrup recently announced core C++ guidelines, that resolves around use of modern C++11/14 and templates, but can we ever use those on Flight DAL A SW ?

Not sure if this a right platform to discuss this, if someone knows a better platform please direct me to that.

$\endgroup$
  • $\begingroup$ Posed a bit more generally, this might get a better reception over at ProgrammersSE. $\endgroup$ – digitgopher Oct 5 '15 at 6:19
  • $\begingroup$ Can any moderator help me to move this at Programmer Stack Exchange ? Or may be somebody should vote for moving it. Thanks $\endgroup$ – P0W Oct 5 '15 at 6:22
  • 1
    $\begingroup$ I think the question is relevant to the site. It's not just about how to encourage a business to move to new tools: it's specifically about certification requirements for aviation software. $\endgroup$ – Dan Hulme Oct 5 '15 at 7:04
  • $\begingroup$ @DanHulme but for that we already have questions: aviation.stackexchange.com/q/19347/1467 aviation.stackexchange.com/q/3406/1467 aviation.stackexchange.com/q/3405/1467 $\endgroup$ – Federico Oct 5 '15 at 11:29
  • $\begingroup$ @Federico Exactly, there's a history of similar questions about software certification being on-topic on this site. This one is just more specific than those questions. $\endgroup$ – Dan Hulme Oct 5 '15 at 11:56
4
$\begingroup$

The issue with many things in flight safety is that the status quo is well understood. Changing something introduces a whole body of unknowns, and considerable circumspection will be applied by the people charged with ensuring safety. This is why piston engines in many light planes are almost identical to those used half a century ago - they're known to work - and why there is considerable inertia when it comes to updating your software tools.

Ultimately, the only way things are likely to move is when somebody builds a case for updating the tools that shows sufficient commercial benefit to overcome the additional cost of certifying the final product.

It won't be enough to simply argue that a new compiler has this or that set of new features. You'll need to demonstrate that using the new compiler will allow you to provide a set of new features that you can't provide with the old one, and that this will lead to a tangible increase in sales.

Good luck!

$\endgroup$
  • 1
    $\begingroup$ Or a tangible decrease in development time. Features can be developed in anything that is Turing-complete; the difference between tools is in how much work it takes. $\endgroup$ – Jan Hudec Oct 5 '15 at 11:26
  • $\begingroup$ Thanks for the answer, but I'm interested in knowing more why till date no one has ever thought about use of modern C++, is there any risk involved. Or may even any of organization already use advance C++ features ? What are the ramifications ? $\endgroup$ – P0W Oct 5 '15 at 21:11

Not the answer you're looking for? Browse other questions tagged or ask your own question.