Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. Qt Creator and other tools
  4. How to disable the Strict Equality Comparison warning
Qt 6.11 is out! See what's new in the release blog

How to disable the Strict Equality Comparison warning

Scheduled Pinned Locked Moved Solved Qt Creator and other tools
16 Posts 5 Posters 3.2k Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • mrjjM mrjj

    @w-tkm

    When you compile, does it then show the warning id in output ?
    like -Wuninitialized etc

    I need something more than "Strict Equality Comparison" to find the key as
    i only get javascript hits on that term so Im not sure which you actually want to supress.

    Cab you list the actual warning you get ?

    The solution is something like
    QMAKE_CXXFLAGS += -Wno-enum-compare

    but we need to know the actual thing it complains about so we kill the right one :)

    W Offline
    W Offline
    w.tkm
    wrote on last edited by
    #5

    @mrjj
    No, It show as line annotations.
    Error code is M126.
    I don't have any problems that I can't compile, but I asked because it bothers me while coding.

    mrjjM 1 Reply Last reply
    0
    • W w.tkm

      @mrjj
      No, It show as line annotations.
      Error code is M126.
      I don't have any problems that I can't compile, but I asked because it bothers me while coding.

      mrjjM Offline
      mrjjM Offline
      mrjj
      Lifetime Qt Champion
      wrote on last edited by mrjj
      #6

      @w-tkm

      Ah that is the clang code model.
      https://doc.qt.io/qtcreator/creator-clang-codemodel.html

      You can either disable the plugin completely
      https://forum.qt.io/topic/100762/qt-creator-clang-code-model-problems-collection

      Or go to option and c++ / code model and see if you can add remove it.
      (often you can tool tip the warning and it tells what option)

      Just make a copy of current default settings then you can change it.

      Then go look
      https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html

      and see if sounds like the warning.

      alt text

      W 1 Reply Last reply
      0
      • mrjjM mrjj

        @w-tkm

        Ah that is the clang code model.
        https://doc.qt.io/qtcreator/creator-clang-codemodel.html

        You can either disable the plugin completely
        https://forum.qt.io/topic/100762/qt-creator-clang-code-model-problems-collection

        Or go to option and c++ / code model and see if you can add remove it.
        (often you can tool tip the warning and it tells what option)

        Just make a copy of current default settings then you can change it.

        Then go look
        https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html

        and see if sounds like the warning.

        alt text

        W Offline
        W Offline
        w.tkm
        wrote on last edited by
        #7

        @mrjj
        I understood well, but I couldn't find description of strict equality comparison in Warning Options.

        mrjjM 1 Reply Last reply
        0
        • W w.tkm

          @mrjj
          I understood well, but I couldn't find description of strict equality comparison in Warning Options.

          mrjjM Offline
          mrjjM Offline
          mrjj
          Lifetime Qt Champion
          wrote on last edited by
          #8

          @w-tkm

          Hi
          Can you give me a code snippet that gives that warning ?
          Then maybe I can get hint from that ?

          W 1 Reply Last reply
          0
          • mrjjM mrjj

            @w-tkm

            Hi
            Can you give me a code snippet that gives that warning ?
            Then maybe I can get hint from that ?

            W Offline
            W Offline
            w.tkm
            wrote on last edited by w.tkm
            #9

            @mrjj
            It's an extreme example,

            property int i
            
                Component.onCompleted: {
                    i = Math.floor(Math.random() * 10)
                }
            
                onClicked: {
                    if( inputText.text == i ){ //M126 is shown here
                        console.log("OK")
                    }
                    else {
                        console.log("NO")
                   }
                }
            

            I know why it's showing.

            J.HilkJ mrjjM KroMignonK 3 Replies Last reply
            0
            • W w.tkm

              @mrjj
              It's an extreme example,

              property int i
              
                  Component.onCompleted: {
                      i = Math.floor(Math.random() * 10)
                  }
              
                  onClicked: {
                      if( inputText.text == i ){ //M126 is shown here
                          console.log("OK")
                      }
                      else {
                          console.log("NO")
                     }
                  }
              

              I know why it's showing.

              J.HilkJ Offline
              J.HilkJ Offline
              J.Hilk
              Moderators
              wrote on last edited by J.Hilk
              #10

              @w-tkm why don't you do a proper comparison, instead of disabling the warnings ?

              if( parseInt(inputText.text) === i )
              //or
              if(inputText.text === i.toString())
              

              or the lazy way:

              inputText.text === "" +i
              

              Be aware of the Qt Code of Conduct, when posting : https://forum.qt.io/topic/113070/qt-code-of-conduct


              Q: What's that?
              A: It's blue light.
              Q: What does it do?
              A: It turns blue.

              1 Reply Last reply
              1
              • W w.tkm

                @mrjj
                It's an extreme example,

                property int i
                
                    Component.onCompleted: {
                        i = Math.floor(Math.random() * 10)
                    }
                
                    onClicked: {
                        if( inputText.text == i ){ //M126 is shown here
                            console.log("OK")
                        }
                        else {
                            console.log("NO")
                       }
                    }
                

                I know why it's showing.

                mrjjM Offline
                mrjjM Offline
                mrjj
                Lifetime Qt Champion
                wrote on last edited by
                #11

                @w-tkm

                aahhh in QML :)

                I'm afraid you cannot configure it.

                W 1 Reply Last reply
                0
                • W w.tkm

                  @mrjj
                  It's an extreme example,

                  property int i
                  
                      Component.onCompleted: {
                          i = Math.floor(Math.random() * 10)
                      }
                  
                      onClicked: {
                          if( inputText.text == i ){ //M126 is shown here
                              console.log("OK")
                          }
                          else {
                              console.log("NO")
                         }
                      }
                  

                  I know why it's showing.

                  KroMignonK Offline
                  KroMignonK Offline
                  KroMignon
                  wrote on last edited by KroMignon
                  #12

                  @w-tkm said in How to disable the Strict Equality Comparison warning:

                  I know why it's showing.

                  You could try to force int conversion:

                  onClicked: {
                          if( parseInt(inputText.text, 10) === i) ){ 
                              console.log("OK")
                          }
                          else {
                              console.log("NO")
                         }
                      }
                  

                  Or to disable the warning:

                   onClicked: {
                          // @disable-check M126
                          if( inputText.text == i ){ 
                              console.log("OK")
                          }
                          else {
                              console.log("NO")
                         }
                      }
                  

                  It is an old maxim of mine that when you have excluded the impossible, whatever remains, however improbable, must be the truth. (Sherlock Holmes)

                  W 1 Reply Last reply
                  1
                  • mrjjM mrjj

                    @w-tkm

                    aahhh in QML :)

                    I'm afraid you cannot configure it.

                    W Offline
                    W Offline
                    w.tkm
                    wrote on last edited by
                    #13

                    @mrjj
                    Oh,sorry...I should have told you earlier...

                    1 Reply Last reply
                    0
                    • KroMignonK KroMignon

                      @w-tkm said in How to disable the Strict Equality Comparison warning:

                      I know why it's showing.

                      You could try to force int conversion:

                      onClicked: {
                              if( parseInt(inputText.text, 10) === i) ){ 
                                  console.log("OK")
                              }
                              else {
                                  console.log("NO")
                             }
                          }
                      

                      Or to disable the warning:

                       onClicked: {
                              // @disable-check M126
                              if( inputText.text == i ){ 
                                  console.log("OK")
                              }
                              else {
                                  console.log("NO")
                             }
                          }
                      
                      W Offline
                      W Offline
                      w.tkm
                      wrote on last edited by
                      #14

                      @KroMignon
                      Thanks. I did it.
                      It seems to there is no setting in the options.

                      KroMignonK 1 Reply Last reply
                      0
                      • W w.tkm

                        @KroMignon
                        Thanks. I did it.
                        It seems to there is no setting in the options.

                        KroMignonK Offline
                        KroMignonK Offline
                        KroMignon
                        wrote on last edited by
                        #15

                        @w-tkm said in How to disable the Strict Equality Comparison warning:

                        It seems to there is no setting in the options.

                        Do mean a global disable of this warning?
                        AFAIK, there is no way to do it.
                        But warnings are there to help you the write clean QML code, as QML is a declarative language, it is hard to be sure to write a clean code, so warnings are welcome to highlight not "so clean code" ;)

                        It is an old maxim of mine that when you have excluded the impossible, whatever remains, however improbable, must be the truth. (Sherlock Holmes)

                        1 Reply Last reply
                        2
                        • Z Offline
                          Z Offline
                          zenzop
                          wrote on last edited by zenzop
                          #16

                          it worked for me, thanks a lot.. .

                          1 Reply Last reply
                          0

                          • Login

                          • Login or register to search.
                          • First post
                            Last post
                          0
                          • Categories
                          • Recent
                          • Tags
                          • Popular
                          • Users
                          • Groups
                          • Search
                          • Get Qt Extensions
                          • Unsolved