FTLK warnings !!



  • Hii,

    ich bekomme andauernd Warnungen, kann mir nicht erklären woher und warum.
    Die Meldung sehen wie folgt aus:

    1>c:\fltk\fltk-1.1.7\fl\fl_widget.h(168) : warning C4312: 'Typumwandlung': Konvertierung von 'long' in größeren Typ 'void *'
    1>c:\fltk\fltk-1.1.7\fl\fl_widget.h(171) : warning C4311: 'Typumwandlung': Zeigerverkürzung von 'void *const ' zu 'long'
    1>c:\fltk\fltk-1.1.7\fl\fl_widget.h(172) : warning C4312: 'Typumwandlung': Konvertierung von 'long' in größeren Typ 'void *'
    1>c:\fltk\fltk-1.1.7\fl\fl_widget.h(202) : warning C4312: 'Typumwandlung': Konvertierung von 'long' in größeren Typ 'void *'
    

    Kann es vielleicht sein, dass ich eine veraltete Library benutze ?



  • Bitte. Bitte poste den Code, der diese Warnung verursacht.

    EDIT: Schon krass bei einer Zeile zwei mal editieren zu müssen^^



  • Naja, ist ja direkt in der Lib die Warnung. Es wird halt gecastet und da gibts halt vom MSVC ne Warnung. Und wie immer: Warum benutzt ihr keine MSDN, wenn ihr schon MSVC benutzt?

    [Compiler Warning (level 1) C4312]

    "Variable": Konvertierung von "Typ" in größeren Typ "Typ"

    Sie haben versucht, einer 64-Bit-Ganzzahl einen 32-Bit-Wert zuzuweisen. Beispielsweise wurde ein 32-Bit-Zeiger vom Typ int oder long in einen 64-Bit-Zeiger umgewandelt.



  • Sorry GPC,

    also die Fehlermeldung ist nicht vom Code "abhängig". Ich habe hier sowas vorliegen, einfach die main() Methode und die Include Dateien.

    #include <FL/Fl.H>
    #include <FL/Fl_Window.H>
    #include <FL/Fl_Value_Slider.H>
    #include <FL/Fl_Gl_Window.H>
    #include <FL/gl.h>
    
    void main(){}
    


  • kann es sein, dass die Header Datei etwas älter ist ?



  • FLTK 1.1.x ist prinzipiell alt. 😉 Es wird nur noch gepflegt, aber nicht weiter entwickelt. Bald kommt FLTK 2.0.0 raus, an dem gerade intensiv gearbeitet wird.

    Und wie von mir bereits gesagt: die Warnings sind in der Library enthalten. Die wirst di zwar vielleicht selbst beheben können, da es OpenSource ist, aber dann hast du deinen eigenen Branch und dann viel Spaß damit.



  • @elturco
    In dem Fall hast du zwei Möglichkeiten
    1. Die Warnung abwürgen (geht sicher irgendwo im VS)
    2. Selber an FLTK rumbasteln (kommt jetzt auf den Umfang an, aber es wird halt schnell aufwändig)

    Ich würde dir ebenfalls raten, dich mit der Warning abzufinden (die ist ja nicht gefährlich für deine Programme) und dann einfach auf FLTK 2 upzudaten, sobald es draußen ist. Und sorry, dass mein erster Post etwas genervt war, ich war etwas vorschnell, als ich nur 'n Warning ohne Code sah und hab dann etwas unüberlegt gehandelt. Gelobe Besserung.



  • GPC schrieb:

    @elturco
    In dem Fall hast du zwei Möglichkeiten
    1. Die Warnung abwürgen (geht sicher irgendwo im VS)

    Abwürgen geht mit #pragma warning(disable:4311 4312)

    PS: ÜBrigens gibt es ein eigenes Board für Probleme mit dem MSVC - zwei Etagen nach oben.


Anmelden zum Antworten