Seltsame Warning C4305/C4309



  • und wenn Du unsigned char nimmst.
    oder #define char unsigned char.
    die Compileroption suchst, die char unsigned macht.
    oder mit #pragma warning die Warnung unterdrücken.



  • volkard schrieb:

    und wenn Du unsigned char nimmst.

    Der komplette Block wird vom DB2-Precompiler reingeschrieben.

    oder #define char unsigned char.

    ÜÄRGS! 😮

    die Compileroption suchst, die char unsigned macht.

    Für MSVC wäre das Kommandozeilenparameter /J

    oder mit #pragma warning die Warnung unterdrücken.

    So machen wirs auf Arbeit auch. Was anderes haben wir da leider auch noch nicht gefunden...


  • Mod

    Wie wäre es damit, die erzeugte Datei vor der Verwendung zuerst noch durch einen text editor (sed&co) zu jagen? Das kann man dann auch automatisiert mit dem Precompileraufruf verknüpfen.



  • Man könnte die generierten Source-Files auch mit dem Switch /J (Default char Type Is unsigned) übersetzen.



  • pumuckl schrieb:

    volkard schrieb:

    und wenn Du unsigned char nimmst.

    Der komplette Block wird vom DB2-Precompiler reingeschrieben.

    oder #define char unsigned char.

    ÜÄRGS! 😮

    die Compileroption suchst, die char unsigned macht.

    Für MSVC wäre das Kommandozeilenparameter /J

    oder mit #pragma warning die Warnung unterdrücken.

    So machen wirs auf Arbeit auch. Was anderes haben wir da leider auch noch nicht gefunden...

    Ich habs jetzt mal mit

    #pragma warning(disable:4305 4309)
    

    probiert. Leider generiert der Precompiler die Pragma-Meldung hinter das static char-array - also kommt die Meldung trotzdem.



  • Die Source mit Kommandozeilen-Parameter /wd4305 und/oder /wd4309 compilieren lassen. (Projekteinstellungen)



  • pumuckl schrieb:

    Die Source mit Kommandozeilen-Parameter /wd4305 und/oder /wd4309 compilieren lassen. (Projekteinstellungen)

    Ich hab die Parameter unter Projekteinstellungen->C/C++->Projekt Optionen eingetragen. Leider kennt er die Option nicht.



  • Configuration Properties-> C/C++ -> Advanced -> Disable Specific Warnings (afaik nur die Warnungsnummern eintragen)

    ODER

    Configuration Properties-> C/C++ -> Commandline



  • Diesen Menüpunkt gibts bei mir nicht.



  • doch die kommandozeile gibt es bei dir, und da muss das rein



  • Vielleicht liegts ja an meiner Uralt-Version (MS Visual C++ 6.0), aber ich bekomme diese Meldung:
    Befehlszeilenwarnung D4002 : Unbekannte Option '/wd4309' wird ignoriert



  • bob.george schrieb:

    Vielleicht liegts ja an meiner Uralt-Version (MS Visual C++ 6.0),

    Ja, die ist aus dem letzten Jahrtausend. Ich fürchte, damit wird sich hier keiner auseinandersetzen wollen, es macht keinen Sinn mehr 😉


Anmelden zum Antworten