Keine Checkung bei Bit-Shift



  • IAR für ARM sagt:

    Warning[Pe068]: integer conversion resulted in a change of sign V:\EWARM_PROJECTS\AV_2_0_TESTBED\src\main.c 571

    CW12 sagt:

    C4000: Condition always TRUE

    keil für ARM sagt

    Hello.c(20): warning: #1134-D: literal treated as "long long"

    also viele haben was daran auszusetzen 😉



  • IAR ARM CW12 keil
    Na du hast ja Exoten auf Lager. 😃
    Hardware Progger, nicht wahr. 😉
    🙂



  • proggingmania schrieb:

    Hardware Progger, nicht wahr. 😉

    was sonst!
    🙂



  • Hab' jetzt auch meinen Renesas C- Comp und mein Uralt- Keil- C für 8051 mal mit ein paar Zeilen gefüttert:

    Nach rechts shiften führt beim Renesas
    - "Nachfüttern" von 1en bei negativen "int"
    - "Nachfüttern" von 0en bei "unsigned int" und positiven "int"

    Eigentlich wie erwartet, macht ja auch Sinn. 😃

    Beim Keil werden in beiden Fällen von Links her Nullen nachgestopft.

    Fragt sich nur noch, welches Verhalten wirklich ANSI- konform ist. 😕 Weiß das jemand?

    Solcher Mist ist wirklich der größte Zeittreiber beim Portieren von Applis .... 🙄



  • pointercrash() schrieb:

    Fragt sich nur noch, welches Verhalten wirklich ANSI- konform ist. 😕 Weiß das jemand?

    das ist beides erlaubt. sie haben's nicht festgelegt...
    🙂


Anmelden zum Antworten