RTW : Why is errorStatus in Release 14 SP3 & R2006b is declared differently?

The errorStatus in R14 SP3 is declared as 'const' whereas from R2006b it is being declared as 'const volatile'. Why is it declared so? how can i avoid this change? please help...

 채택된 답변

Kaustubha Govind
Kaustubha Govind 2012년 10월 31일

0 개 추천

Not sure, but perhaps it is expected that there might be external hardware drivers that could update the errorStatus flag? I don't know if this can be avoided - it is best to contact MathWorks Tech Support for this question to get an authoritative answer.

댓글 수: 2

Got it. The volatile type specifier tells the compiler that some other thread can change the value unexpectedly and the compiler must not load the error flag into a register
To some extent this compromises the code optimisation, but whats more important is whether the compiler is referring the updated value.
Thank you KG & Mathworks Tech Support for your responses.
venkat: Thanks for posting a more detailed explanation. :)

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 Simulink Coder에 대해 자세히 알아보기

태그

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by