Polyspace errors cause from "@interrupt"

Hello Matlab Community
I use Polyspace R2022b for verify code for s12z Cosmic compiler.
In Cosmic compiler, for use interrupt, @interrupt code is needed.
ex) @interrupt void ISR_TIMER(void);
But Polyspace is not allowed this I think.
I also tried add "@interrupt=" at macro option but couldn't solve it.
How to do sovle this problem?

Antworten (2)

Anirban
Anirban am 21 Apr. 2025

0 Stimmen

Setting the compiler option in Polyspace to Cosmic will get you past the error. For more information, see Cosmic Compiler.
For instance, this code will compile with the option -compiler cosmic, but fail compilation otherwise.
// Interrupt Service Routine for Timer 2 Overflow
@interrupt void ISR_TIMER2_OVF(void)
{
}
void main(void)
{
while (1)
{
// Main loop does nothing; LED toggling is handled in ISR
}
}
Christian Bard
Christian Bard am 22 Apr. 2025

0 Stimmen

If you are not setting -compiler cosmic, you may use a Perl -post-preprocessing-command script like below (see doc):
#!/usr/bin/perl
#
binmode STDOUT;
while ($line = <STDIN>)
{
# comment @interrupt
$line =~ s/(\@interrupt)/\/\* $1 \*\/ /g;
print $line;
}

Produkte

Version

R2022b

Tags

Gefragt:

MS
am 14 Apr. 2025

Beantwortet:

am 22 Apr. 2025

Community Treasure Hunt

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

Start Hunting!

Translated by