Menu

can't suppress uninitvar

2022-06-29
2022-06-30
  • Maxim Yanchenko

    Maxim Yanchenko - 2022-06-29

    https://docs.mrpt.org/reference/dev-PF-refactor/xml_parser_8cpp_source.html#l03313
    Tried all, nothing works, still showing the error on the return c:
    Cppcheck: (error) uninitvar: Uninitialized variables: c.attrib, c.text, c.clear:

    // cppcheck-suppress[uninitvar]
    XMLNodeContents XMLNode::enumContents(int i) const
    {
        // cppcheck-suppress[uninitvar]
        /*cppcheck-suppress[uninitvar]*/
        XMLNodeContents c;
        // cppcheck-suppress[uninitvar]
        if (!d)
        {
            // cppcheck-suppress[uninitvar]
            c.etype =  eNodeNULL; // cppcheck-suppress[uninitvar]
            return c;// cppcheck-suppress[uninitvar]
            // cppcheck-suppress[uninitvar]
        }
    
     

    Last edit: Maxim Yanchenko 2022-06-29
  • CHR

    CHR - 2022-06-29

    This works for me:

    struct XMLNodeContents {
        int etype;
        int attrib, text, clear;
    };
    XMLNodeContents XMLNode::enumContents(int i) const
    {
        XMLNodeContents c;
        if (!d)
        {
            c.etype =  eNodeNULL;
            return c;// cppcheck-suppress[uninitvar,uninitStructMember]
        }
        return {};
    }
    

    Are you passing --inline-suppr?

     

    Last edit: CHR 2022-06-29
  • Maxim Yanchenko

    Maxim Yanchenko - 2022-06-30

    Works for me too, thanks!
    interesting, looks like just uninitStructMember doesn't work (which would be probably more logical here)

     

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.