Softune V6 diag_* pragmas

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
zzz_3221081
Level 5
Level 5
25 solutions authored 100 sign-ins 10 likes received

Can anybody share the meaning of the diag_xxxx pragmas available in Softune V6 ?

A full list of this pragmas, according to the compiler manual (FR Family SOFTUNE C/C++ Compiler Manual for V6, Spec. # 002-04486 Rev. *A, page 416):

#pragma diag_default

#pragma diag_error

#pragma diag_remark

#pragma diag_suppress

#pragma diag_warning

This pragmas are mentioned in said manual, without any further explanation.

My Softune version is V60L06.

The background - I'd like to suppress compiler warnings coming from code shared with other platforms.

I can't stop the compiler from telling me that "long long is not a standard type" (W1450B).

I tried diag_suppress, which wants an "error number" as argument. None of the obvious combinations (w/o prefix/suffix, braces...) worked.

Thanks.

0 Likes
1 Solution

Hello,

The #pragma listed in APPENDIX D Reserved Pragma Directive of Softune C/C++ compiler manual (002-04486 Rev. *A) are reserved, which means those pragma directives are not supported officially. The officially supported #pramga directives are documented in chapter 5 of the manual.

But still you can try to remove thousands of the 4-digits to suppress the warning.

ex:

#pragma diag_suppress 450

Best regards,

Amy Wang

View solution in original post

0 Likes
6 Replies
HongyanW_86
Moderator
Moderator
Moderator
100 solutions authored 100 replies posted 50 solutions authored

Hello,

I would like to confirm if you tried as follows and still have issue?

#pragma diag_suppress 1450

According to my search and the "error number" after diag_suppress is 4-digit number.

Best regards,

Amy Wang

Syntax

#pragma diag_suppress tag[,tag,...]

Where:

tag[,tag,...]

is a comma-separated list of diagnostic message numbers specifying the messages to be suppressed. This is the four-digit number, nnnn, without the -D suffix.

0 Likes

Thanks, but yes, I tried.

The result is: "W2222B: warning: invalid error number"

Followed by the diagnostics I'd like to suppress:

"W1450B: warning: the type "long long" is nonstandard"

I tried with braces, W and E prefix, B suffix, and combination thereof, too.

Are there any constraints concerning the position of this pragmas ?

0 Likes

Hello,

The #pragma listed in APPENDIX D Reserved Pragma Directive of Softune C/C++ compiler manual (002-04486 Rev. *A) are reserved, which means those pragma directives are not supported officially. The officially supported #pramga directives are documented in chapter 5 of the manual.

But still you can try to remove thousands of the 4-digits to suppress the warning.

ex:

#pragma diag_suppress 450

Best regards,

Amy Wang

0 Likes

That would make sense, application-wise, i.e. explain the behavior of the preprocessor/compiler.

Seeing the MB91F460 MCU family rather at the end if it's life cycle, I guess this pragmas will never be implemented. Which wouln't really be a critical probem for me, after all.

Out of curiosity, is there any alternative toolchain for this MCU ?

0 Likes

is there any alternative toolchain for this MCU ?

>>No.

0 Likes

No wonder I couldn' find one ..

Thank you !

0 Likes