コード例 #1
0
    void check(const char code[]) {
        // Clear the error buffer..
        errout.str("");

        // Tokenize..
        Tokenizer tokenizer(&settings, this);
        std::istringstream istr(code);
        tokenizer.tokenize(istr, "test.c");
        tokenizer.simplifyTokenList2();

        // Check for leaks..
        CheckLeakAutoVar checkLeak;
        checkLeak.runSimplifiedChecks(&tokenizer, &settings, this);
    }
コード例 #2
0
    void check(const char code[], bool cpp = false) {
        // Clear the error buffer..
        errout.str("");

        // Tokenize..
        Tokenizer tokenizer(&settings, this);
        std::istringstream istr(code);
        tokenizer.tokenize(istr, cpp?"test.cpp":"test.c");
        tokenizer.simplifyTokenList2();

        // Check for leaks..
        CheckLeakAutoVar c;
        settings.checkLibrary = true;
        settings.addEnabled("information");
        c.runSimplifiedChecks(&tokenizer, &settings, this);
    }
コード例 #3
0
ファイル: testleakautovar.cpp プロジェクト: AneeshAS/cppcheck
    void checkcpp(const char code[]) {
        // Clear the error buffer..
        errout.str("");

        // Tokenize..
        Settings settings;
        int id = 0;
        while (!settings.library.ismemory(++id));
        settings.library.setalloc("malloc",id);
        settings.library.setdealloc("free",id);
        while (!settings.library.isresource(++id));
        settings.library.setalloc("fopen",id);
        settings.library.setdealloc("fclose",id);
        Tokenizer tokenizer(&settings, this);
        std::istringstream istr(code);
        tokenizer.tokenize(istr, "test.c.cpp");
        tokenizer.simplifyTokenList2();

        // Check for leaks..
        CheckLeakAutoVar c;
        settings.checkLibrary = true;
        settings.addEnabled("information");
        c.runSimplifiedChecks(&tokenizer, &settings, this);
    }