This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

C++11 on MicroVision 5.13 and ARMCC 5.05

Hello, I have a working uVision 5.13 project for the STM32F407 processor, I'm also using the RTX operating system and I'm trying to use some C++11 features like scoped enums but when I put the --cpp11 compiler option I receive this error from one of the cmsis headers:


compiling RTX_Conf_CM.c...
C:\Keil\ARM\PACK\ARM\CMSIS\4.2.0\CMSIS_RTX\INC\RTX_CM_lib.h(250): error: #390: function "main" may not be called or have its address taken osThreadDef_t os_thread_def_main = {(os_pthread)main, osPriorityNormal, 1, 4*OS_MAINSTKSIZE };
RTE\CMSIS\RTX_Conf_CM.c: 0 warnings, 1 error

That´s compiling the same sources that was working just fine without the --cpp11 option.

Then if I add one of the supported C++11 features like this:

namespace TestNamespace
{

enum class Test : std::int16_t
{
  TestValue1 = 0
};

class TestClass
{

//All the class code here

};
}

then I start to receive messages from windows that "The ARM C/C++ Compiler has stopped working" every time the header file containing the scoped enum is compiled. This is the problem signature in windows:

Problem Event Name: APPCRASH
Application Name: ArmCC.exe
Application Version: 5.5.0.106
Application Timestamp: 547650a9
Fault Module Name: ArmCC.exe
Fault Module Version: 5.5.0.106
Fault Module Timestamp: 547650a9
Exception Code: c0000005
Exception Offset: 003f566a
OS Version: 6.1.7601.2.1.0.256.1
Locale ID: 1033
Additional Information 1: 0a9e
Additional Information 2: 0a9e372d3b4ad19135b953a78882e789
Additional Information 3: 0a9e
Additional Information 4: 0a9e372d3b4ad19135b953a78882e789

So, I'm doing something wrong or those are ARMCC bugs??

My uVision version is 5.13 and the compiler version is 5.05 update 1 build 106.

Thanks,

Juan Carlos

Parents Reply Children
  • I see, well now I think choosing Keil as our dev platform has been a huge mistake.

    What an odd conclusion.

  • I guess if you're incapable of using any other mode of communication...

    Generally they've been pretty responsive to calls/emails, and resolving clearly stated bug reports.

  • Ja, well I've used in the past many other tools that offer support for free, Keil don't do that and right now I'm evaluating and as eval user it seems I can't file a bug report or espect an answer on a forum. I can't remember right now any other tool I've used that need a serial number to file a bug even when you are evaluating. All the other companies seems to deal well with my lack of forms of communications. So, as an evaluation user I'm simply choosing not to use Keil platform so I will choose to move to another that fit my requirements of support. That means my company money will go to someone else just because Keil choose not to read this forum. Any way, they may run their business the way they want the same way I may recommend buying from the company I want.

  • Note that bugs in an evaluation version is likely also bugs in the commercial versions - so a bug report for the evaluation version is just as important to care about.

    I have filed reports - such as reported issues with the forum software - without specifying any license number. I haven't seen a reason why I should specify exactly what version of MDK-ARM + what license number when my reports hasn't been related to MDK-ARM.

    "All the other companies [...]" is irrelevant, when your only complaint is that you can't accept that the forum is not an official support route. It's a end-user to end-user construct. Right now, you'r running the three-year-old route of just being anti without any real reason. And the money going somewhere else? We don't care. We are end users. So trying that type of arguments with us is just silly. Grow up and either stay silent, or contact Keil. But do not pretend that it's not possible to contact Keil without a serial number because that isn't true. A failure to do so is a failure of yours - others have already managed just fine to interface with Keil directly.

    What exactly do you think the "Sales Contacts" link at the bottom of the page is useful for?
    www.keil.com/.../

    And this form has most definitely allowed people to interface with Keil before:
    www.keil.com/.../supportRequest.asp

    In the end, you'll face much bigger hurdles than this when doing real work solving real problems - whatever tools you end up selecting.

  • "... so I will choose to move to another that fit my requirements of support."

    Another criterion could be that it fit your language standards edition requirement (i.e., '11 versus '03).

    www.keil.com/.../armcc_chr1359124895726.htm