Forum: Mikrocontroller und Digitale Elektronik MISRA Rule 11.3


von Markus (Gast)


Lesenswert?

Moin zusammen,
ich habe eine Misra (2004) Meldung in meiner Software und keine Idee wie 
ich diese Meldung los werden kann.

Hier die Meldung bzw. Verletzung der Regel 11.3:
A cast is being performed between an integral type and a pointer to 
object type, or vice versa.

Hier das Stückchen Software (Die Schnittstelle muß gleich bleiben).

/* Convert a memory address from 8/32bit into a C pointer */
BYTEPOINTER GetPointer(DWORD Var)
{
return (BYTEPOINTER)Var;
}

Evtl. kann ja jemand helfen.

Gruß Markus

von Karl H. (kbuchegg)


Lesenswert?

Markus schrieb:

> ich habe eine Misra (2004) Meldung in meiner Software und keine Idee wie
> ich diese Meldung los werden kann.

Keine Chance.

Das ist eine der MISRA Regeln, die zwar oft ganz gut sind, im Einzelfall 
aber grauslich versagen. Ist ja auch in dieser MISRA Regeln vermerkt, 
dass es Fälle gibt, in denen genau diese Regel verletzt werden muss.

http://www.misra.org.uk/forum/viewtopic.php?f=67&t=994

von Markus (Gast)


Lesenswert?

Das habe ich mir schon fast gedacht, dass es da keine Möglichkeit gibt.
Besten Dank trotzdem.

von 6A66 (Gast)


Lesenswert?

Loswerden:

Im Checker die Prüfung DIESER Pegel ausschalten :))
Hat bei uns der TÜV in Einzelfällen abgesegnet als wir Ihm erklärt haben 
WARUM wir diese Regel ausschalten und an welcher Stelle.

Grüße

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.