2011-06-12 Daniel Marjamäki * cli/cppcheck.rc, cli/main.cpp, lib/cppcheck.cpp, man/manual.docbook, win_installer/productInfo.wxi: 1.49: updated version 2011-06-12 Robert Reif * lib/tokenize.cpp, test/testtokenize.cpp: fix #2835 (crash of cppcheck ( ><,f * lib/tokenize.cpp, test/testtokenize.cpp: fix #2831 (crash of cppcheck ( z )) 2011-06-12 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: fix #2834 (crash of cppcheck (std::vector::iterator)) 2011-06-11 Robert Reif * lib/tokenize.cpp, lib/tokenize.h, test/testtokenize.cpp: fix #2739 (segmentation fault of cppcheck ( if()x )) 2011-06-11 seb777 * AUTHORS: With the agreement of Daniel Marjamäki, I write my name in this AUTHORS file. If you also want to have your name in this file, contribute to cppcheck. 2011-06-10 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: fix #2682 (segmentation fault of cppcheck ( x a[0] = )) 2011-06-10 Kimmo Varis * gui/test/xmlfiles/xmlreport_v1.xml, gui/test/xmlreportv1/testxmlreportv1.cpp: GUITESTS: Fix XML V1 test. Test was using and assuming that severity string starts with capital letter (e.g. "Style"). But the strings are all lowercase letters. Ticket #2832 (GUI: XML version 1 test fails) 2011-06-10 Kimmo Varis * gui/test/translationhandler/translationhandler.pro, gui/test/xmlreport/xmlreport.pro, gui/test/xmlreportv1/xmlreportv1.pro, gui/test/xmlreportv2/xmlreportv2.pro: GUITESTS: Use common build artifact directory. Using common build artifacts (object files, moc files) avoids recompiling whole lib and other shared files separately for each test. 2011-06-10 Kimmo Varis * gui/test/translationhandler/testtranslationhandler.cpp: GUITESTS: Run Astyle. 2011-06-10 Kimmo Varis * runastyle, runastyle.bat: Run Astyle recursively for gui/test. GUI's tests are now in separate subdirectories. To avoid adding each subdirectory to the Astyle scripts run Astyle recursively. 2011-06-10 Kimmo Varis * gui/test/main.cpp: GUITESTS: Remove unneeded main file. 2011-06-10 Kimmo Varis * gui/test/test.pro, gui/test/testxmlreportv2.cpp, gui/test/testxmlreportv2.h, gui/test/xmlreportv2/testxmlreportv2.cpp, gui/test/xmlreportv2/testxmlreportv2.h, gui/test/xmlreportv2/xmlreportv2.pro: GUITESTS: Move XML V2 tests to own project. 2011-06-10 Kimmo Varis * gui/test/test.pro, gui/test/testxmlreportv1.cpp, gui/test/testxmlreportv1.h, gui/test/xmlreportv1/testxmlreportv1.cpp, gui/test/xmlreportv1/testxmlreportv1.h, gui/test/xmlreportv1/xmlreportv1.pro: GUITESTS: Move XML format V1 tests to own project. 2011-06-10 Kimmo Varis * gui/test/xmlreport/testxmlreport.cpp: GUITESTS: Fix XML files paths. 2011-06-10 Kimmo Varis * gui/test/test.pro, gui/test/testxmlreport.cpp, gui/test/testxmlreport.h, gui/test/xmlreport/testxmlreport.cpp, gui/test/xmlreport/testxmlreport.h, gui/test/xmlreport/xmlreport.pro: GUITESTS: Refactoring XmlReport test. 2011-06-10 Kimmo Varis * gui/test/translationhandler/testtranslationhandler.cpp: GUITESTS: Fix translation count in test. 2011-06-10 Kimmo Varis * gui/test/common.pri, gui/test/test.pro, gui/test/testtranslationhandler.cpp, gui/test/testtranslationhandler.h, gui/test/translationhandler/testtranslationhandler.cpp, gui/test/translationhandler/testtranslationhandler.h, gui/test/translationhandler/translationhandler.pro: GUITESTS: Refactoring test building. Start building each test as separate project as QtestLib tests usually are built. This commit adds the infrastructure and moves TranslationHandler test as own project. 2011-06-09 Robert Reif * lib/tokenize.cpp: improve #2828 fix by adding switch 2011-06-08 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: fix #2828 (false positive: Function parameter 'STYLE' hides enumerator with same name) 2011-06-08 Daniel Marjamäki * lib/checkother.cpp, test/testunusedvar.cpp: Fixed #2805 (false positive: [NotAssigned1.cpp:5]: (style) Variable 'y' is not assigned a value) 2011-06-08 Kimmo Varis * gui/mainwindow.cpp: GUI: Give full path when opening project file. Fix I did yesterday gave only filename of the project file for function loading project file. Causing the loading failing if not in "current" directory. 2011-06-07 Kimmo Varis * gui/mainwindow.cpp: GUI: More strict filtering for finding project file. 2011-06-07 Kimmo Varis * gui/mainwindow.cpp: GUI: Suggest using project file if one is found. If we there is project file in the directory to check then ask user if one wants to use the project file instead. If there are multiple project files then just tell there are project files and ask if user wants to continue without using them. Ticket: #2816 (GUI regression: Interrupted checking because of too many #ifdef configurations.) 2011-06-07 Kimmo Varis * gui/mainwindow.cpp: GUI: Handle missing checked paths in project file. If the project file does not define paths to check then check the project root directory (which likely is the directory where the project file is located). Ticket #2816 (GUI regression: Interrupted checking because of too many #ifdef configurations.) 2011-06-06 Robert Reif * gui/mainwindow.cpp: make usre we have a project file before outputting its name 2011-06-04 Robert Reif * gui/mainwindow.cpp, gui/projectfile.h: Output GUI project name when checking starts or restarts 2011-06-03 Robert Reif * test/testnullpointer.cpp: todo tests for #2812 (false negative: null pointer dereference when returning struct member) 2011-06-03 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: fix #2795 (hash operator[] is not 'const') (original patch by Sebastien Debrard) (modified to use the symbol database) 2011-06-03 Robert Reif * lib/tokenize.cpp: fix 2 use after frees in simplifyEnum found by visual studio and verified by valgrind 2011-05-29 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #2806 (False positive with g_strstrip()) 2011-05-27 seb777 * lib/checkother.cpp, test/testother.cpp: fix #2786 (new check: Using sizeof with numeric constant) Add unit test and improve check with negative constant because in cppcheck %num% means 'integer' 2011-05-27 Robert Reif * lib/checknullpointer.cpp, test/testnullpointer.cpp: add support for null pointer checking struct pointers 2011-05-27 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: fix #2804 (Underlying type of enumerator produces a syntax error) 2011-05-24 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: fix #2792 (false positive: Member variable 'class::m_val' is not assigned a value in 'class::operator=') 2011-05-17 seb777 * lib/checkother.cpp, lib/checkother.h, test/testother.cpp: fix #2786 2011-05-22 Daniel Marjamäki * lib/checkstl.cpp, test/teststl.cpp: Fixed #2798 (False positive: Invalid iterator check doesn't respect code paths) 2011-05-22 Greg Hewgill * cli/threadexecutor.cpp: Allow suppression of the 'cppcheckError' error reported by the threaded CLI executor. This is related to commit 5bbf39d094efccadfd9a927c5f7052cde541e730. 2011-05-19 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #2790 (Incorrect allocation mismatch error) 2011-05-19 Stefan Weil * lib/executionpath.cpp: executionpath: fix memory leak 2011-05-19 Daniel Marjamäki * CMakeLists.txt, cli/CMakeLists.txt, cmake/modules/FindPCRE.cmake, gui/CMakeLists.txt, lib/CMakeLists.txt, lib/library_sources.cmake, test/CMakeLists.txt: cmake: cleanup unmaintained cmake files 2011-05-19 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #2737 ((error) Analysis failed. If the code is valid then please report this failure.) 2011-05-18 WenChung Chiu * lib/tokenize.cpp, lib/tokenize.h, test/testtokenize.cpp: Fixed #2784 (Pointer issue: *&f=open()) 2011-05-15 Daniel Marjamäki * lib/preprocessor.cpp: Preprocessor: Don't report that there are missing system includes unless --debug-warnings has been given. 2011-05-13 Kimmo Varis * gui/logview.cpp, gui/logview.h, gui/mainwindow.cpp: GUI: Simplify settings usage in Log window. 2011-05-13 Kimmo Varis * gui/mainwindow.cpp, gui/settingsdialog.cpp, gui/settingsdialog.h: GUI: Simplify settings handling in Preferences dialog. 2011-05-13 Kimmo Varis * gui/common.h, gui/projectfiledialog.cpp, gui/projectfiledialog.h: GUI: Make Project-dialog to remember its size. 2011-05-13 Kimmo Varis * gui/main.cpp: GUI: Initialize Settings in main. Setting organization and program name in main() allows us to cleanup Settings class usage. As we don't need to keep using the one instance of Settings but can create new Settings class whenever we need to access settings. According to the Qt documentation creating Settings class is fast. 2011-05-13 Kimmo Varis * gui/projectfile.ui: GUI: Show main tab in project file dialog by default. 2011-05-13 Kimmo Varis * gui/projectfiledialog.cpp, gui/projectfiledialog.h: GUI: Set initial path for adding paths to project. Use project file's location as base path when adding new paths (checked, included or ignored) to the project. In most cases user wants to add paths in the same project so this reduces browsing paths considerably when adding them. 2011-05-12 Kimmo Varis * gui/mainwindow.cpp: GUI: Remove trailing spaces from translated strings 2011-05-12 Kimmo Varis * gui/projectfile.txt: GUI: Update project file documentation. Remove mentioning of automatic loading which was disabled in previous commit. 2011-05-12 Kimmo Varis * gui/mainwindow.cpp, gui/mainwindow.h: GUI: Remove automatic/silent loading of projects. When project files support was added to the GUI there was no GUI for them and automatic/silent loading was added. So that if the directory contained project file with the same name (and .cppcheck extension) then the project file was automatically loaded and used for the checking. This can be very confusing for the user as there is no any indication that the project file is used. But this solution was necessary at that time to get project file support added. Now that we have usable GUI for the project files this automatic/ silent loading can be removed. Nobody really should be using it anymore. And even if the automatic loading is needed one can give the project file for the GUI using command line parameter. 2011-05-12 Kimmo Varis * gui/gui.cppcheck: GUI: Fix the gui.cppcheck to work with GUI. The project file to check just GUI code was missing the directory to check. This is probably due it was used originally as "automatically" loaded project file which assumed current directory is checked and only added some additional parameters. 2011-05-12 Kimmo Varis * gui/mainwindow.cpp, gui/mainwindow.h: GUI: Handle non-existing projects in MRU list. If the project file in MRU list does not exist ask user if one wants to remove the file from the list. If user agrees then the file is removed from the list. Otherwise the file is left to the list but not tried to open. User may have accidentally moved or renamed the file so we give a possibility to add it back and not just blindly removing it from the list. 2011-05-12 Kimmo Varis * gui/mainwindow.h: GUI: Remove unneeded forward declaration. 2011-05-12 Kimmo Varis * gui/common.h, gui/main.ui, gui/mainwindow.cpp, gui/mainwindow.h: GUI: Add most recently used projects to menu. Add MRU items for project files to File-menu. When user creates a new project file or opens existing project file it is added to the list of recently used projects. Last 5 projects are remembered and available for quick acess in the File-menu. 2011-05-11 Daniel Marjamäki * lib/preprocessor.cpp, test/testpreprocessor.cpp: Fixed #2782 (Segfault with #asm) 2011-05-11 Daniel Marjamäki * lib/checkother.cpp, test/testunusedvar.cpp: Fixed #2780 (false positive: variable p is not assigned a value 'int p[2]; *p = 0;') 2011-05-11 Daniel Marjamäki * lib/checkmemoryleak.cpp, lib/checkmemoryleak.h, test/testmemleak.cpp: Fixed #2783 (Improve check: struct member leaks when analysing c file) 2011-05-08 Robert Reif * lib/checkother.cpp, test/testother.cpp: #2700 (common logic or cut and paste errors) make duplicate branches inclnclusive 2011-05-07 Daniel Marjamäki * lib/tokenize.cpp: added comment about how bad typedef behaviour can be reproduced 2011-05-07 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #2743 (segmentation fault of cppcheck 'std::vector v1 = a, v2 = b;') 2011-05-07 Daniel Marjamäki * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #1684 (false positive: buffer access out of bounds when using extern variable declaration) 2011-05-06 Robert Reif * lib/checkautovariables.cpp, test/testautovariables.cpp: fix #2765 (Non local address detected as address of local auto-variable) 2011-05-06 Robert Reif * lib/checkautovariables.cpp, test/testautovariables.cpp: fix regression #1819 (False positive: auto variable assignment (unseen typedef)) 2011-05-06 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp, test/testunusedvar.cpp: Fixed #2770 (False positives (scope can be reduced / variable is assigned value that is never used)) 2011-05-05 Daniel Marjamäki * lib/checkuninitvar.cpp, test/testuninitvar.cpp: Fixed #2764 (False positive: Uninitialized variable '&(x[0])') 2011-05-05 Daniel Marjamäki * lib/checkstl.cpp, test/teststl.cpp: Reverted fix for string::size. Ticket: #2756 2011-05-04 Kimmo Varis * win_installer/readme.txt: Installer: small update to installer doc. 2011-05-04 Kimmo Varis * win_installer/cppcheck.wxs: Installer: Remove unneeded Qt DLLs. Since we now have on-line help we don't need to install the DLLs that were required for the help viewer. 2011-05-04 Kimmo Varis * test/testcmdlineparser.cpp: Add test for --check-config. 2011-05-04 Kimmo Varis * test/testcmdlineparser.cpp: Make "failing" cmdlineparser tests todo-tests. 2011-05-04 Daniel Marjamaki * cli/cppcheckexecutor.cpp: updated error message. --check-includes has been renamed to --check-config 2011-05-03 Zachary Blair * gui/common.h, gui/main.ui, gui/mainwindow.cpp, gui/mainwindow.h, gui/resultstree.cpp, gui/resultstree.h, gui/resultsview.cpp, gui/resultsview.h: Fixed #2758 ([GUI] Provide a means to filter results based on a search string) 2011-05-03 Greg Hewgill * test/testsuppressions.cpp: Fix testsuppressions for Windows builds for now, pending further refactoring 2011-05-03 Greg Hewgill * Makefile, test/test.pro, test/testsuppressions.cpp: Revert "Remove the testsuppressions because it doesn't contain any unit tests. A testsuppressions would be nice if it was more specific. Ticket: #2748" This reverts commit 6bf5eb67be05d3768158505fb375fad12b8488cf. 2011-05-03 Greg Hewgill * test/test.vcproj, test/test.vcxproj, test/test.vcxproj.filters: Revert "TestSuppressions: Updated Visual Studio project files" This reverts commit 8ec570837a77e2e15f48f0235211d52ddf12de9f. 2011-05-02 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: fix #1982 (simplifyTypedef: scope info is lost) 2011-05-02 Daniel Marjamäki * cli/cmdlineparser.cpp, cli/cppcheckexecutor.cpp, lib/cppcheck.cpp, lib/preprocessor.cpp, lib/settings.cpp, lib/settings.h: renamed --check-includes to --check-config 2011-05-02 seb777 * cli/cmdlineparser.cpp: add include-header to use EXIT_FAILURE 2011-05-02 seb777 * : commit d7927bbb614378f9b4f173bd992ae879fc7f7c8d Author: Daniel Marjamäki Date: Mon May 2 18:49:40 2011 +0200 2011-05-02 Daniel Marjamäki * test/testsimplifytokens.cpp: astyle formatting 2011-05-02 Daniel Marjamäki * cli/cmdlineparser.cpp, cli/cppcheckexecutor.cpp, lib/cppcheck.cpp, lib/preprocessor.cpp, lib/preprocessor.h, lib/settings.cpp, lib/settings.h: Missing includes - normally just report that there are missing includes. The --check-includes can then be used to check what missing includes there are. Ticket: #2719 2011-05-02 Daniel Marjamäki * lib/preprocessor.cpp: reverted 761dd419 - reporting excessive missing include messages 2011-05-01 Daniel Marjamaki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #2721 (Tokenizer::simplifyTemplates: fail when using template argument 'char[2]') 2011-05-01 Daniel Marjamaki * test/test.vcproj, test/test.vcxproj, test/test.vcxproj.filters: TestSuppressions: Updated Visual Studio project files 2011-05-01 Daniel Marjamäki * lib/preprocessor.cpp: Fixed #2719 (Fix excessive false positives in include-file handling) 2011-05-01 Ville Skyttä * cli/cmdlineparser.cpp: cmdlineparser: Update list of file extensions, expand EXIT_FAILURE, don't list --rule* if built without support for rules. Ticket: #2761 2011-05-01 Daniel Marjamäki * lib/tokenize.cpp: Tokenizer: Moved a few basic simplifications from simplifyTokenList to tokenize 2011-05-01 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #2760 (false positive: uninitialized variable ', (a) =') 2011-05-01 Daniel Marjamäki * Makefile: Makefile: updated with dmake 2011-05-01 Daniel Marjamäki * test/testtokenize.cpp: TestTokenizer: code cleanup 2011-04-30 Daniel Marjamäki * Makefile, test/test.pro, test/testsuppressions.cpp: Remove the testsuppressions because it doesn't contain any unit tests. A testsuppressions would be nice if it was more specific. Ticket: #2748 2011-04-29 Daniel Marjamäki * lib/tokenize.cpp: Fixed #2755 (cppcheck goes into infinite loop while scanning OpenSSL sources) 2011-04-29 Robert Reif * lib/tokenize.cpp, test/testtokenize.cpp: fix tokenizer bug where 'class B : private ::A { };' was tokenized to 'class B : private: : A { } ;' 2011-04-28 Robert Reif * test/testclass.cpp, test/testsymboldatabase.cpp: move symbol database tests to testsymboldatabase.cpp 2011-04-28 Robert Reif * lib/symboldatabase.cpp, test/testsymboldatabase.cpp: fix debug warning for function parameters with template with varid of 0 2011-04-28 Robert Reif * lib/checkstl.cpp, test/teststl.cpp: fix 2011-04-28 Kimmo Varis * gui/gui.pro: GUI: Remove dependency to QtXml. 2011-04-27 Kimmo Varis * Makefile, cli/cppcheckexecutor.cpp, cli/cppcheckexecutor.h, cli/threadexecutor.cpp, cli/threadexecutor.h, gui/threadresult.cpp, gui/threadresult.h, lib/errorlogger.h, test/testother.cpp, test/testsuppressions.cpp, test/testthreadexecutor.cpp, tools/dmake.cpp: Remove ErrorLogger::reportStatus() method. The ErrorLogger::reportStatus() is not lib code interface. The CLI code does the looping through file list and gives one file at a time for the core code. Hence lib has no any idea about the progress and it can't provide such information. Also the recent commit (6d858b6) caused a GUI build failure by adding CLI code dependency to GUI. Which is big no-no. This is admittedly a hack. But it allow us to build all modules again. 2011-04-27 Markus Elfring * gui/CMakeLists.txt: Deletion of references to modules "QtHelp" and "QtXml" in the GUI CMake script Two Qt modules are not needed any more in the CMake script for the graphical user interface after the commit "GUI: Open online-help instead of local help". https://github.com/danmar/cppcheck/commit/3965a08b7b9de4b4b79b18513b7e5222d4fa3cd7#commitSigned-off-by: Markus Elfring 2011-04-27 Daniel Marjamäki * lib/path.cpp: astyle formatting 2011-04-27 Daniel Marjamäki * test/test.pro: Fixed #2749 (Different test count using Makefile and QtCreator project) 2011-04-27 Daniel Marjamäki * tools/dmake.cpp: dmake: fixed compiler error 2011-04-27 Greg Hewgill * lib/preprocessor.cpp: Use tolowerWrapper wherever appropriate 2011-04-27 Greg Hewgill * lib/path.cpp: Portability: Raise an error if a platform-specific filename compare function is not specified 2011-04-26 Robert Reif * lib/checkclass.cpp, test/testclass.cpp, test/testconstructors.cpp: fix spelling of initialized in checkclass messages 2011-04-26 Robert Reif * lib/checkautovariables.cpp, test/testautovariables.cpp: fix false positive introduced in CheckAutoVariables::autoVariables conversion to use symbol database 2011-04-27 Greg Hewgill * cli/filelister.cpp, test/testfilelister.cpp: FileLister: don't assume that all files have nonzero size in test case 2011-04-26 Daniel Marjamäki * lib/checkuninitvar.cpp, test/testuninitvar.cpp: Fixed #2753 (False negative: dereference uninitialized pointer 'buf[0] = 0;') 2011-04-19 Greg Hewgill * cli/cppcheckexecutor.cpp, cli/cppcheckexecutor.h, cli/filelister.cpp, cli/filelister.h, cli/threadexecutor.cpp, cli/threadexecutor.h, gui/threadresult.cpp, gui/threadresult.h, lib/cppcheck.cpp, lib/cppcheck.h, lib/errorlogger.h, test/testcppcheck.cpp, test/testfilelister.cpp, test/testother.cpp, test/testsuite.h, test/testsuppressions.cpp, test/testthreadexecutor.cpp: Report percentage complete based on file size This patch makes the (reasonable) assumption that the total size of all checked files fits in a 'long' type. 2011-04-25 Zachary Blair * lib/checkother.cpp, lib/checkother.h, test/testother.cpp: Fixed #2722 (new check: statement that is always true (strcmp)) 2011-04-26 Tim Gerundt * htdocs/.htaccess: Web: Set correct MIME type for favicon 2011-04-26 Tim Gerundt * htdocs/.htaccess: Web: Add compression for HTML, CSS and JavaScript files 2011-04-25 Kimmo Varis * : commit 7d00d47404dfc7f791de7bf9717c26c3b837a690 Author: Kimmo Varis Date: Sun Apr 24 23:41:24 2011 +0300 2011-04-24 Kimmo Varis * test/test.pro: Remove outdated comment from tests.pro. 2011-04-24 Kimmo Varis * test/test.pro: Add suppressions tests to qmake project. 2011-04-24 Kimmo Varis * cli/cppcheckexecutor.cpp, cli/threadexecutor.cpp, gui/checkthread.cpp, lib/cppcheck.cpp, lib/cppcheck.h, test/testsuppressions.cpp: Modify the Cppcheck class to check one file at a time. Unify usage and API of CppCheck class. Allow only one file checked at a time, instead of list of files. Clients can then handle file lists more naturally and as they see fit. Also clients have better knowledge of how checking status should be handled. The single-threaded CLI checking was only one using the file list. Other clients were giving files (to list) one file at a time. 2011-04-23 Kimmo Varis * cli/cppcheckexecutor.cpp, cli/cppcheckexecutor.h: CLI: Give files to Cppcheck class one at a time. When doing single-threaded checking give checked files to Cppcheck class one file at a time. Like GUI and multithreaded checking already do. This unifies how we call Cppcheck class from different clients. 2011-04-23 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: fix #2745 (Enum vs local variable - conflict) 2011-04-23 Robert Reif * lib/tokenize.cpp, test/testtokenize.cpp: fix #2746 (false positive: syntax error (typedef in __attribute__ ))) 2011-04-23 Robert Reif * lib/checkautovariables.cpp, lib/checkautovariables.h, test/testautovariables.cpp: convert last check in checkautovariables to use the symbol database 2011-04-23 Robert Reif * : commit cd64d8476ce61e50474ed991cd532eee222ccb9b Author: Robert Reif Date: Sat Apr 23 09:37:50 2011 -0400 2011-04-23 Daniel Marjamäki * readme.txt: readme: added a little info about compiling without pcre 2011-04-22 Robert Reif * lib/symboldatabase.cpp, lib/symboldatabase.h: don't debug warn about class function definitions without body having missing varid on function parameters 2011-04-22 Robert Reif * test/testtokenize.cpp: add another test case for #2614 (missing varid on function parameter) 2011-04-22 Daniel Marjamäki * lib/preprocessor.cpp, test/testpreprocessor.cpp: Fixed #2740 (inline cmd // cppcheck-suppress does not work anymore for 1.48) 2011-04-23 Greg Hewgill * lib/checkclass.cpp, lib/symboldatabase.cpp, test/testclass.cpp: Change symbol database such that the typestart token skips over type modifiers (const/static/mutable). This fixes checking for the case of a memset() on a static variable. 2011-04-22 Tim Gerundt * : Change dialog bitmap from windows installer 2011-04-23 Greg Hewgill * tools/dmake.cpp: Makefile: handle case where LDFLAGS is already defined (in dmake) 2011-04-22 Tim Gerundt * htdocs/devinfo/index.php, htdocs/index.php, htdocs/site/css/all.css: Web: Use Orbitron font for page head 2011-04-22 Greg Hewgill * Makefile: Makefile: handle case where LDFLAGS is already defined 2011-04-20 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: fix #2738 (syntax error on valid code) 2011-04-20 Robert Reif * lib/checkclass.cpp: run astyle 2011-04-20 Daniel Marjamäki * lib/checkclass.cpp, test/testclass.cpp: Virtual destructors: Enabled the check again. I think it is conclusive now. Ticket: #2728 2011-04-20 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Memory leaks: Fixed TODO test case. Ticket: #2733 2011-04-20 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: fix #2736 (segmentation fault of cppcheck) 2011-04-20 Daniel Marjamäki * lib/checkother.cpp, test/testmemleak.cpp: astyle formatting 2011-04-20 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #2733 (Memory leak: not all branch are checked) 2011-04-20 Daniel Marjamäki * lib/checkother.cpp: const parameter: Added comment to reduce false negatives for various classes in the std namespace 2011-04-19 Daniel Marjamäki * Makefile, readme.txt, tools/dmake.cpp: Makefile: added option for compiling with/without rules 2011-04-19 Daniel Marjamäki * test/testmemleak.cpp: astyle formatting 2011-04-19 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #2734 (False positive: reports 'should be passed by reference' for std::streamoff) 2011-04-19 Ettl Martin * lib/checkmemoryleak.cpp, test/testmemleak.cpp: #2733 added sizeof to checkmemory-leaks white list, added a todo-testcase 2011-04-18 Robert Reif * lib/checkother.cpp, test/testother.cpp: fix #2730 (The same expression on both sides of != is OK when checking for NaN) 2011-04-18 Robert Reif * test/testtokenize.cpp: fix previous patch: test for #2614 (missing varid on function parameter) 2011-04-18 Robert Reif * test/testtokenize.cpp: add test for #2614 (missing varid on function parameter) 2011-04-18 Martin Exner * lib/preprocessor.cpp, lib/token.cpp, lib/tokenize.cpp, test/testautovariables.cpp: Fixed #2676 (setVarId: variables with global scope qualification :: don't get varids) 2011-04-17 Tim Gerundt * htdocs/index.php: Web: Add link to Jenkins plugin 2011-04-16 Kimmo Varis * gui/settings.ui: GUI: Move internal error option to Advanced-tab. 2011-04-16 Kimmo Varis * gui/cppcheck_de.ts, gui/cppcheck_en.ts, gui/cppcheck_es.ts, gui/cppcheck_fi.ts, gui/cppcheck_fr.ts, gui/cppcheck_ja.ts, gui/cppcheck_nl.ts, gui/cppcheck_pl.ts, gui/cppcheck_ru.ts, gui/cppcheck_sr.ts, gui/cppcheck_sv.ts: GUI: Update translation files. 2011-04-16 Kimmo Varis * gui/common.h, gui/erroritem.cpp, gui/mainwindow.cpp, gui/settings.ui, gui/settingsdialog.cpp: GUI: Add option for enabling inconclusive checks. Add new "Advanced" page to preferences-dialog and add there a checkbox for enabling inconclusive checks. Now that checkbox is the only control in that new page but there will be more controls later on. 2011-04-16 Daniel Marjamäki * lib/tokenize.cpp: Tokenizer: Fixed bug. When varid is 0 then %varid% doesn't work. Ticket: #2723 2011-04-16 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: fix #2716 (Easy to reproduce crash) 2011-04-16 Daniel Marjamäki * lib/errorlogger.cpp, test/testerrorlogger.cpp: ErrorLogger: Refactoring/fixing the serializer/deserializer for inconclusive messages 2011-04-16 Kimmo Varis * gui/erroritem.cpp, gui/erroritem.h, gui/resultstree.cpp, gui/threadresult.cpp, gui/txtreport.cpp, gui/xmlreportv1.cpp, gui/xmlreportv2.cpp: GUI: Add support for inconclusive errors. This is the first (and quick) support for the inconclusive errors. We simply add [Inconclusive] to begin of the summary. This is temporary solution until better GUI is implemented. XML v1 won't be supporting inconclusive errors. For XML v2 we need still to decide what to do. 2011-04-16 Daniel Marjamäki * cli/cppcheckexecutor.cpp: astyle formatting 2011-04-16 Daniel Marjamäki * lib/tokenize.cpp, lib/tokenize.h, test/testother.cpp, test/testsimplifytokens.cpp: Fixed #2713 (False positive (Redundant assignment)) 2011-04-16 Stefan Weil * htmlreport/cppcheck-htmlreport: html report: better handling of non ASCII characters in C source code 2011-04-16 Stefan Weil * cli/cppcheckexecutor.cpp: CppcheckExecutor: Code cleanups and fixes 2011-04-14 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: fix #2720 (false positive: syntax error with c++0x code) 2011-04-14 Daniel Marjamäki * cli/threadexecutor.cpp, lib/check.h, lib/checkmemoryleak.cpp, lib/checkunusedfunctions.cpp, lib/cppcheck.cpp, lib/errorlogger.cpp, lib/errorlogger.h, lib/preprocessor.cpp, lib/symboldatabase.cpp, lib/token.cpp, lib/tokenize.cpp, test/testerrorlogger.cpp: Inconclusive checking: Report inconclusive errors with reportInconclusiveError. It takes the same parameters as reportError. 2011-04-14 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #2714 (False positive: ternary operator and += style warning.) 2011-04-13 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: fix #2718 (Analysis failed. If the code is valid then please report this failure.) 2011-04-13 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: fix #2717 (false positive: syntax error (typedef void f(int) const;)) 2011-04-13 Robert Reif * lib/errorlogger.h, test/testerrorlogger.cpp, test/testsimplifytokens.cpp: run astyle 2011-04-11 Reijo Tomperi * Makefile, tools/dmake.cpp: "#ifndef" can't be used in Makefile (it is considered a commented line). Replaced it with "ifndef". 2011-04-11 Daniel Marjamäki * createrelease: createrelease: minor updates 2011-04-10 Daniel Marjamäki * lib/cppcheck.cpp, lib/errorlogger.cpp, test/testerrorlogger.cpp: inconclusive: don't report such messages in xml version 1 format. until we decide how they will be reported in xml version 2 format I don't report it. 2011-04-10 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #2712 (false positive: Division by zero) 2011-04-10 Tim Gerundt * htdocs/index.php: Web: Update download to version 1.48 2011-04-10 Daniel Marjamäki * lib/errorlogger.h: ErrorLogger: Added severities for inconclusive error and inconclusive warning 2011-04-10 Robert Reif * lib/checkother.cpp, lib/checkother.h, test/testother.cpp: add check for same expression on both sides of an operator (part of #2700) 2011-04-10 Robert Reif * : commit 4a50aca7b2ba92a22c1115dccb04f1c14910b97c Author: Robert Reif Date: Sun Apr 10 09:57:09 2011 -0400 2011-04-10 Daniel Marjamäki * lib/checkbufferoverrun.cpp, lib/checkclass.cpp, lib/checkmemoryleak.cpp, lib/checkother.cpp, lib/preprocessor.cpp, lib/settings.cpp, lib/settings.h, test/testbufferoverrun.cpp, test/testclass.cpp, test/testmemleak.cpp, test/testother.cpp: Renamed Settings::stupid to Settings::experimental 2011-04-10 Daniel Marjamäki * lib/checkbufferoverrun.cpp, lib/checkclass.cpp, lib/checkmemoryleak.cpp, lib/checkother.cpp, lib/preprocessor.cpp, lib/settings.cpp, lib/settings.h, test/testbufferoverrun.cpp, test/testclass.cpp, test/testmemleak.cpp, test/testother.cpp: Added Settings::stupid flag that can be used to hide checking that generates false positives. 2011-04-10 Daniel Marjamäki * cli/cmdlineparser.cpp, lib/settings.h: --inconclusive : Added command line flag that enable inconclusive checking. It is added for experimental purposes. 2011-04-10 Daniel Marjamäki * lib/tokenize.cpp: Tokenizer: Code cleanup. Use %oror% to simplify code. 2011-04-10 Daniel Marjamäki * lib/checkother.cpp: CheckOther: Code cleanup. Use %oror% 2011-04-10 Daniel Marjamäki * lib/preprocessor.cpp: Preprocessor: Use %oror% in multiCompare pattern 2011-04-10 Daniel Marjamäki * lib/preprocessor.cpp: Preprocessor: Use %oror% in multiCompare pattern 2011-04-10 Daniel Marjamäki * lib/checkother.cpp: CheckOther: Use %op% in CheckUnsignedDivision 2011-04-10 Daniel Marjamäki * lib/checkuninitvar.cpp: CheckUninitVar: Use %op% 2011-04-10 Daniel Marjamäki * lib/tokenize.cpp: Tokenizer: Use %op% in simplifyOperatorName 2011-04-10 Daniel Marjamäki * lib/tokenize.cpp: Tokenizer: Use %op% in simplifyCalculations 2011-04-10 Daniel Marjamäki * test/testtoken.cpp: Token: Added testcase for matching of %op% 2011-04-10 Daniel Marjamäki * lib/tokenize.cpp: Tokenizer: Use %op% to clean up pattern 2011-04-10 Daniel Marjamäki * lib/tokenize.cpp: Tokenizer: Code cleanup. Removed redundant variable 2011-04-10 Daniel Marjamäki * lib/tokenize.cpp: Tokenizer: Fixed bug in last commit 2011-04-10 Daniel Marjamäki * lib/tokenize.cpp: Tokenizer: Use the %oror% in multiCompare patterns 2011-04-10 Daniel Marjamäki * lib/token.cpp, test/testtoken.cpp: Token::Match : Allow that %oror% and %or% is used in multiCompare patterns 2011-04-09 Robert Reif * lib/checkother.cpp, lib/checkother.h, test/testother.cpp: partial fix for #2700 (common logic or cut and paste errors) 2011-04-09 Robert Reif * lib/checkother.cpp, test/testother.cpp: fix bug in previous commit: fix #311 (add detection of duplicated if else-cases) 2011-04-09 Robert Reif * lib/checkother.cpp, lib/checkother.h, test/testother.cpp: fix #311 (add detection of duplicated if else-cases) 2011-04-09 Robert Reif * lib/checkclass.cpp, lib/token.h: Refactoring: add Token::isAssignmentOp and use it in CheckClass::checkConstFunc 2011-04-09 Daniel Marjamäki * lib/checkother.cpp: Refactoring: Use Token::isArithmeticalOp instead of hardcoded conditions 2011-04-09 Daniel Marjamäki * lib/checkmemoryleak.cpp: Refactoring: Use %op% instead of Token::isOp 2011-04-09 Daniel Marjamäki * lib/checknullpointer.cpp: Refactoring: Use %op% 2011-04-09 Daniel Marjamäki * lib/checkbufferoverrun.cpp: Refactoring: Use %op% instead of Token::isOp in CheckBufferOverrun 2011-04-09 Daniel Marjamäki * lib/tokenize.cpp: Refactoring: Use %op% 2011-04-09 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Refactoring: Use %op% 2011-04-09 Daniel Marjamäki * lib/tokenize.cpp: Refactoring: Use %op% 2011-04-09 Daniel Marjamäki * lib/token.cpp, lib/tokenize.cpp, test/testtoken.cpp: Token::multiCompare : allow that %op% is used in multiCompare pattern 2011-04-09 Daniel Marjamäki * lib/token.h, lib/tokenize.cpp: Refactoring: Use Token::isOp 2011-04-09 Daniel Marjamäki * lib/checkbufferoverrun.cpp, lib/checkmemoryleak.cpp, lib/token.h, lib/tokenize.cpp, test/testsimplifytokens.cpp: Refactoring: Use Token::isOp 2011-04-09 Daniel Marjamäki * Makefile: Makefile: Set debug mode 2011-04-09 Daniel Marjamäki * Makefile: Release: Updated Makefile for release 2011-04-09 Daniel Marjamäki * Changelog: Release: Updated the Changelog 2011-04-09 Daniel Marjamäki * test/testfilelister.cpp: TestFileLister: astyle formatting and removed commented debug code 2011-04-09 Daniel Marjamäki * cli/cppcheck.rc, cli/main.cpp, lib/cppcheck.cpp, man/manual.docbook, win_installer/productInfo.wxi: Release: Updated versions to 1.48 2011-04-09 Daniel Marjamäki * lib/token.h: Fixed cppcheck warnings: Removed extra 'Token::' from statement 2011-04-08 Daniel Marjamäki * lib/checkother.cpp, lib/token.h, lib/tokenize.cpp: Refactoring: there was almost duplicate functions 'isOp'. Created a new Token::isOp function instead. 2011-04-08 Robert Reif * test/testclass.cpp: added tests for #2710 (False negative on uninitialized member variable in a ctor.) 2011-04-07 Daniel Marjamaki * test/testfilelister.cpp: Fixed TestFileLister tests in windows 2011-04-07 Daniel Marjamäki * Makefile, test/CMakeLists.txt, test/test.pro, test/testfilelister.cpp, test/testfilelister_unix.cpp: Fixed #2684 (TestFileLister test assumes there are source files in the same directory) 2011-04-07 Markus Elfring * : commit fbc8223a6b32935e2001d688756600829baaec10 Author: Daniel Marjamaki Date: Thu Apr 7 16:53:42 2011 +0200 2011-04-07 Kimmo Varis * gui/main.cpp: GUI: Print command line help with -h and --help. 2011-04-07 Kimmo Varis * gui/mainwindow.cpp, gui/mainwindow.h: GUI: Allow giving project file to command line. GUI now recognizes -p command line parameter. When given (with path to valid project file) GUI automatically loads the project file and starts checking paths in it. Ticket: #2613 (GUI: Should accept project file from command line) 2011-04-07 Kimmo Varis * test/test.vcproj: Fix test VS2008 project file attributes. 2011-04-07 Stefan Weil * lib/checkobsoletefunctions.h, test/testobsoletefunctions.cpp: Obsolete functions: Fix messages for gethostbyaddr, gethostbyname 2011-04-06 Daniel Marjamäki * lib/preprocessor.cpp: fixed gcc compiler warning 2011-04-06 Daniel Marjamäki * : commit 1907590303a7e67c73c94bf092d7f19c12ec3dfc Author: Kimmo Varis Date: Wed Apr 6 21:34:11 2011 +0300 2011-04-06 Daniel Marjamaki * lib/preprocessor.cpp: Preprocessor: Use Settings::debugwarnings instead of NDEBUG to determine if 'missing system include' should be reported or not 2011-04-06 Markus Elfring * gui/CMakeLists.txt: Addition of Spanish translation in the GUI CMake script A file name was added to the GUI CMake script for the Spanish translation. Signed-off-by: Markus Elfring 2011-04-06 Markus Elfring * cli/CMakeLists.txt: Conditional inclusion of TinyXML source files in the CLI CMake script (bug #2679, #2524) The source files for the class library "TinyXML" will only be included into the build of the command line interface if the library "PCRE" was found before. Signed-off-by: Markus Elfring 2011-04-06 Kimmo Varis * gui/gui.pro: GUI: Sort language files in project file. 2011-04-06 Kimmo Varis * gui/cppcheck_de.ts, gui/cppcheck_en.ts, gui/cppcheck_es.ts, gui/cppcheck_fi.ts, gui/cppcheck_fr.ts, gui/cppcheck_ja.ts, gui/cppcheck_nl.ts, gui/cppcheck_pl.ts, gui/cppcheck_ru.ts, gui/cppcheck_sr.ts, gui/cppcheck_sv.ts: GUI: Update translation files. Adding new Spanish translation added one new translatable string and changed linenumbers in one file. 2011-04-06 Lauri Nurmi * gui/gui.pro, gui/translationhandler.cpp: GUI: Add Spanish translation. Patch to add loading Spanish translation to GUI. Ticket #2545 (cppcheck translated in spanish language) 2011-04-06 Kimmo Varis * gui/cppcheck_es.ts: GUI: Add Spanish translation. Add Spanish GUI translation contributed by qcondor@users.sourceforge.net. Ticket #2545 (cppcheck translated in spanish language) 2011-04-06 Kimmo Varis * gui/cppcheck_de.ts, gui/cppcheck_en.ts, gui/cppcheck_fi.ts, gui/cppcheck_fr.ts, gui/cppcheck_ja.ts, gui/cppcheck_nl.ts, gui/cppcheck_pl.ts, gui/cppcheck_ru.ts, gui/cppcheck_sr.ts: GUI: update translation files. 2011-04-05 Daniel Marjamaki * gui/cppcheck_sv.ts: gui: removed obsolete strings in the swedish translation 2011-04-05 Daniel Marjamaki * gui/cppcheck_sv.ts: gui: updated swedish translations 2011-04-04 Robert Reif * test/testmemleak.cpp: run astyle 2011-04-04 Robert Reif * lib/tokenize.cpp, test/testtokenize.cpp: fix #2706 (Analysis failed. If the code is valid then please report this failure.) 2011-04-04 Ettl Martin * test/testmemleak.cpp: Added todo testcase for ticket #2705 2011-04-04 Kimmo Varis * gui/mainwindow.cpp: GUI: Improve the error message for language loading error. 2011-04-04 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: clarify calculation: fixed false negative for 'int x = a - b ? 2 : 3' 2011-04-04 Daniel Marjamäki * lib/checkbufferoverrun.cpp: Buffer overrun: broke out duplicate code 2011-04-04 Kimmo Varis * gui/gui.pro: GUI: Project file cleanup. 2011-04-04 Kimmo Varis * gui/applicationlist.cpp: GUI: Don't show error when no application added. I earlier added a check for missing (editor) application command line parameters. If parameters are missing at GUI startup an message is shown to user to check the settings. Unfortunately my check was incomplete and it also triggered when there was no applications defined. Which happens when user starts GUI for a first time. Fix the check so that user is only informed in case the parameters are missing and name + path are set. 2011-04-04 Kimmo Varis * gui/application.ui, gui/applicationdialog.cpp: GUI: Improve the Application dialog layoyt. In GNOME the whole big text area was not shown without making the dialog bigger. So improve the layout for better scaling and adjust dialog size when it gets initialized. 2011-04-04 Kimmo Varis * gui/applicationdialog.cpp: GUI: Fix setting application path as name. The application dialog initialized name field with path. 2011-04-03 Daniel Marjamäki * lib/checkother.cpp, lib/checkother.h, test/testother.cpp: Clarify calculation: Added warnings for << and >> 2011-04-03 Daniel Marjamäki * lib/checknullpointer.cpp: Null pointer: cleanup the code. Ticket: #2642 2011-04-03 Martin Exner * lib/checknullpointer.cpp, test/testnullpointer.cpp: Fixed #2696 (False positive nullpointer) 2011-04-02 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Tokenizer: execute the simplifyIfNot and simplifyIfNotNull in the normal token list. ticket #2642 2011-04-02 Kimmo Varis * gui/gui.pro: GUI: Fix gui.pro EOL style. 2011-04-02 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: clarify precedence: made the short message shorter 2011-04-02 Kimmo Varis * gui/CMakeLists.txt: GUI: Add new files to CMake build file. 2011-04-02 Kimmo Varis * gui/applicationdialog.cpp, gui/applicationdialog.h, gui/settingsdialog.cpp: GUI: Modify ApplicationDialog to get/return Application class. 2011-04-02 Kimmo Varis * gui/application.h, gui/applicationlist.cpp, gui/applicationlist.h, gui/resultstree.cpp, gui/settingsdialog.cpp: GUI: Refactoring application definition. Using Application class as method parameters instead of separate application attributes. 2011-04-02 Kimmo Varis * gui/application.cpp, gui/application.h, gui/applicationlist.cpp, gui/gui.pro: GUI: Improving application handling code. Only allow access to Application's attributes through accessor methods. 2011-04-02 Kimmo Varis * gui/application.h, gui/applicationlist.cpp, gui/applicationlist.h, gui/gui.pro: GUI: Move application definition to own header file. 2011-04-02 Daniel Marjamäki * CMakeLists.txt: cmake: reduced message a little 2011-04-02 Daniel Marjamäki * : Merge commit 'elfring/2679d' 2011-04-02 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Tokenizer::simplifyCalculations: simplify division result if it's a whole number, even though it doesn't have precedence 2011-04-02 Daniel Marjamäki * lib/checkother.cpp, lib/checkother.h, test/testother.cpp: Clarify precedence 'a*b?c:d' : warn for addition, subtraction and division also. tried to clarify the message more 2011-04-02 Kimmo Varis * gui/cppcheck_de.ts, gui/cppcheck_en.ts, gui/cppcheck_fi.ts, gui/cppcheck_fr.ts, gui/cppcheck_ja.ts, gui/cppcheck_nl.ts, gui/cppcheck_pl.ts, gui/cppcheck_ru.ts, gui/cppcheck_sr.ts, gui/cppcheck_sv.ts: GUI: Update translation files. 2011-04-02 Kimmo Varis * gui/applicationdialog.cpp, gui/resultstree.cpp: GUI: Simplify handling applications with spaces in paths. Earlier user had to add quotation marks around application executable path in application dialog. Because we could not determine which part is path and which part is parameters. As we now have separate variables we can automatically add the quotation marks when needed before starting the application. This reduces the confusion users have had about the correct formatting of paths. 2011-04-02 Kimmo Varis * gui/application.ui: GUI: Update/fix application dialog texts. I forgot to update the dialog texts when adding the parameters field. 2011-04-02 Kimmo Varis * gui/application.ui: GUI: Add accel keys for application dialog and fix tab order. 2011-04-02 Kimmo Varis * gui/application.ui, gui/applicationdialog.cpp, gui/applicationdialog.h, gui/applicationlist.cpp, gui/applicationlist.h, gui/common.h, gui/mainwindow.cpp, gui/resultstree.cpp, gui/settingsdialog.cpp: GUI: Have separate setting for editor app path and params. Currently combined editor application path + params is a bit problematic (at least in Windows). We really don't know where the app path ends and parameters start. So proper quoting is not always possible. And application path and command line parameters are clearly different settings anyway. So make them separate settings. It has bunch of other positive sides too. Like one can now browse new path for the application without loosing the parameters. When starting Cppcheck version with these new settings user is warned that loading settings had problems and asked to check and fix the settings. 2011-04-02 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Tokenizer: better simplification of calculations in conditions 2011-03-31 Robert Reif * lib/symboldatabase.cpp: symbol database: add support for anonymous struct and union 2011-03-31 Robert Reif * lib/checkclass.cpp, lib/checkclass.h: change CheckClass::operatorEqToSelf to make better use of the symbol database 2011-03-31 Robert Reif * lib/checkclass.cpp, lib/checkclass.h, test/testclass.cpp: fix CheckClass::operatorEq to check return type more closely (to match check description) 2011-03-31 Daniel Marjamäki * lib/preprocessor.h, lib/settings.h: fixed doxygen warnings about undocumented function parameters 2011-03-30 Robert Reif * lib/symboldatabase.cpp, lib/symboldatabase.h: symbol database: improve function argument count and default argument count 2011-03-30 Robert Reif * lib/symboldatabase.cpp, lib/symboldatabase.h: symbol database: get function argument count using argument list size rather than counting commas 2011-03-30 Daniel Marjamäki * lib/checkother.cpp, test/testincompletestatement.cpp: Fixed #2655 (false positive: (warning) Redundant code: Found a statement that begins with numeric constant) 2011-03-30 Lieven de Cock * lib/path.cpp: Improve/cleanup Path::removeQuotationMarks(). 2011-03-30 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #2693 (__declspec attribute not removed properly) 2011-03-30 Stefan Weil * lib/checkbufferoverrun.cpp, lib/checknullpointer.cpp, lib/checkstl.cpp, lib/preprocessor.cpp, lib/preprocessor.h, lib/tokenize.cpp, lib/tokenize.h, test/testsimplifytokens.cpp, test/testtokenize.cpp: Spell checks 2011-03-30 Stefan Weil * lib/checkother.cpp, lib/checkother.h, test/testother.cpp: Spell checks 2011-03-29 Robert Reif * lib/symboldatabase.cpp: symbol database: handle default values for function arguments properly 2011-03-29 Robert Reif * lib/symboldatabase.cpp: add support for array of unnamed struct and union to symbol database 2011-03-29 Kimmo Varis * cli/cmdlineparser.cpp: CLI: Simplify ignore paths. Fixes #2656 (-i Give path to ignore does not ignore if start of the path is different than checked path) Simplify paths given as -i options. This makes it easier to match the paths as simplifying removes redundant parts. 2011-03-29 Kimmo Varis * lib/path.cpp, test/testpath.cpp: Remove './' at begin of path in Path::simplifyPath. The './' is not needed at begin of path for files we check. And it only makes paths longer. This also makes it easier to match paths. 2011-03-29 Daniel Marjamäki * lib/checknullpointer.cpp, test/testnullpointer.cpp: Fixed #2695 (False positive: null pointer dereference and ternary operator (?:)) 2011-03-29 Robert Reif * lib/symboldatabase.cpp: more support for anonymous struct to symbol database 2011-03-29 Robert Reif * lib/symboldatabase.cpp: add support for anonymous struct to symbol database 2011-03-28 Robert Reif * lib/tokenize.cpp, test/testtokenize.cpp: fix #2692 (False positive: if parsed as function in operator >>) 2011-03-28 Robert Reif * lib/checkstl.cpp, lib/checkstl.h, test/teststl.cpp: add support for checking struct/class member container in CheckStl::size() 2011-03-28 Kimmo Varis * cli/cmdlineparser.cpp: CLI: Remove quotation marks from user-given paths. Ticket #2686 (regression/bug in path handling) There are situations that paths given to command line can contain quotation marks. In normal situations shell removes them. For these cases they don't get removed add code to check paths from quotation marks and remove them. 2011-03-28 Kimmo Varis * lib/path.cpp, lib/path.h, test/testpath.cpp: Add Path::removeQuotationMarks() to clean path. 2011-03-28 Daniel Marjamäki * test/testnullpointer.cpp: Null pointer: Added TODO test case for ticket #2681 2011-03-28 Daniel Marjamäki * lib/checknullpointer.cpp, test/testnullpointer.cpp: Null pointer: prefer longer error message that says 'otherwise condition at line X is redundant' 2011-03-28 Daniel Marjamäki * lib/checknullpointer.cpp, test/testnullpointer.cpp: Null pointer: prefer longer error message that says 'otherwise condition at line X is redundant' 2011-03-28 Daniel Marjamäki * lib/checknullpointer.cpp, test/testnullpointer.cpp: Fixed #2691 (False positive: struct dereference and check (switch-break)) 2011-03-28 Markus Elfring * gui/CMakeLists.txt: Deletion of "htmlhelp" from link setting in a CMake script (bug #2524, #1957) The library "htmlhelp" is not needed by the graphical user interface at the moment. https://github.com/danmar/cppcheck/commit/2fea5f01d6b8af92a4739eb6bef29fd7044c27c3#gui/gui.proThere are difficulties to fulfil this dependency. Signed-off-by: Markus Elfring 2011-03-27 Robert Reif * lib/symboldatabase.cpp, test/testconstructors.cpp: skip nested anonymous unions when searching for variables in symbol database 2011-03-27 Daniel Marjamäki * lib/checknullpointer.cpp, test/testnullpointer.cpp: Fixed #2689 (False positive: Possible null pointer dereference) 2011-03-27 Robert Reif * lib/checkclass.cpp: output a debug message when a member variable is used that has a varid of 0 2011-03-27 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: make member variable change detection simpler and more accurate for CheckClass::checkConst 2011-03-27 Robert Reif * lib/symboldatabase.cpp: add anonymous union support to the symbol database 2011-03-27 Daniel Marjamäki * lib/checknullpointer.cpp, test/testnullpointer.cpp: Fixed #2674 (False positive: possible null pointer dereference (check if pointer is null in one function, dereference it in another function)) 2011-03-27 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #2660 (False positive: Variable 'v' is assigned a value that is never used) 2011-03-26 Markus Elfring * : Synchronisation of CMake build files with master branch (bug #2524) * 2524d: Renaming of the file for the Swedish translation in a CMake script (bug #2524) Renaming of the GUI executable to "cppcheck-gui" in a CMake script (bug #2524) Addition of a file name in a CMake script (bug #2524, #1690) 2011-03-26 Markus Elfring * gui/CMakeLists.txt: Renaming of the GUI executable to "cppcheck-gui" in a CMake script (bug #2524) The executable file for the graphical user interface was renamed in a CMake script to synchronise this setting with the qmake build specification. https://github.com/danmar/cppcheck/commit/b88ce77e4ac85d1b32981c63cb5c538e9740b6e9#gui/gui.proSigned-off-by: Markus Elfring 2011-03-26 Markus Elfring * test/CMakeLists.txt: Addition of a file name in a CMake script (bug #2524, #1690) A few source files were added because of the feature request "Ability to exclude files and directories from checks". https://github.com/danmar/cppcheck/commit/6401271ceb85ff93a697b2c09fb4765a560fb7a3A CMake build script was updated for these changes. Signed-off-by: Markus Elfring 2011-03-26 Daniel Marjamäki * createrelease: createrelease: generate manual.html. ticket: #2687 2011-03-26 Kimmo Varis * gui/mainwindow.cpp: GUI: Update online-help to open the HTML manual. 2011-03-26 Daniel Marjamaki * cli/CMakeLists.txt, gui/CMakeLists.txt, test/CMakeLists.txt: cmake: removed the non-working pcre. ticket: #2679 2011-03-26 Kimmo Varis * cli/cppcheckexecutor.cpp: Ticket #2688 (Missing include path shouldn't exit the program) Non-existing include path is not a fatal problem requiring exiting the program. Instead we just print a warning and remove the non- existing include path from the list. 2011-03-26 Kimmo Varis * gui/CMakeLists.txt: GUI: Remove help viewer files from CMake build. 2011-03-26 Kimmo Varis * win_installer/cppcheck.wxs: Installer: don't install local help file. 2011-03-26 Kimmo Varis * gui/gui.pro, gui/helpwindow.cpp, gui/helpwindow.h, gui/helpwindow.ui, gui/mainwindow.cpp, gui/mainwindow.h: GUI: Open online-help instead of local help. Local help does not currently work (ticket #2316) and building it is a bit painful in Windows. Hence it was decided on ticket #2677 and at IRC that we open on-line help from GUI until the local help issue is solved. 2011-03-26 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #2653 (segmentation fault of cppcheck 'x=b=0;') 2011-03-26 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Tokenizer::setVarId: Prevent that wrong varid is given when uncertain. Ticket: #2680 2011-03-26 Daniel Marjamäki * lib/CMakeLists.txt: CMake: There is no need for PCRE when building the lib 2011-03-26 Daniel Marjamäki * CMake/xmlto.cmake: Removed the CMake/xmlto.cmake file 2011-03-26 Daniel Marjamäki * CMakeLists.txt, cmake/modules/FindXmlTo.cmake, man/CMakeLists.txt: Fixed #2677 (XmlTo is now required for building?) 2011-03-26 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #2680 (setVarId: variables with class qualification don't get varid) 2011-03-25 Robert Reif * lib/checkclass.cpp: only break when we know we are inc/dec a member variable in CheckClass::checkConstFunc 2011-03-25 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: better checking of assignment to array element in CheckClass::checkConstFunc 2011-03-25 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: add support to CheckClass::checkConstFunc for ++/-- array elements 2011-03-25 Robert Reif * lib/checkclass.cpp: move 2 CheckClass helper functions to follow externally called functions so code matches comments 2011-03-26 Sebastien Debrard * cli/CMakeLists.txt, gui/CMakeLists.txt, test/CMakeLists.txt: sync cmake files with the master branch 2011-03-25 Daniel Marjamäki * man/CMakeLists.txt: CMake: Skip xmlto dependency. Ticket: #2677 2011-03-25 Robert Reif * test/testclass.cpp: add some missing ; at end of class and struct definitions in checkclass tests 2011-03-25 Daniel Marjamäki * cli/cli.pro, cli/cppcheck.vcproj, cli/cppcheck.vcxproj, test/test.pro, test/test.vcproj, test/test.vcxproj, test/testcppcheck.cpp, tools/dmake.cpp: Reverted non-CMake changes in previous 'Added CMake files' commit 2011-03-25 Markus Elfring * CMake/xmlto.cmake, CMakeLists.txt, cli/CMakeLists.txt, cli/cli.pro, cli/cppcheck.vcproj, cli/cppcheck.vcxproj, cmake/modules/FindPCRE.cmake, cmake/modules/FindXmlTo.cmake, gui/CMakeLists.txt, lib/CMakeLists.txt, lib/library_sources.cmake, man/CMakeLists.txt, test/CMakeLists.txt, test/test.pro, test/test.vcproj, test/test.vcxproj, test/testcppcheck.cpp, tools/dmake.cpp: Added CMake files 2011-03-24 Robert Reif * lib/tokenize.cpp, test/testtokenize.cpp: add support for global namespace to Tokenizer::simplifyVarDecl() 2011-03-24 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: fix #2675 (false positive: syntax error) 2011-03-24 Robert Reif * lib/symboldatabase.cpp, lib/symboldatabase.h: symbol database: add a link from a Function to its Function Scope namd make function parameters belong to Function Scope 2011-03-24 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #2673 (false positive: memory leak (address stored in list)) 2011-03-23 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: fix #1288 (Use of memset on struct - nested structs not handled) 2011-03-23 Robert Reif * lib/tokenize.cpp, test/testtokenize.cpp: fix Tokenizer::simplifyVarDecl() template assignment 2011-03-23 Robert Reif * lib/tokenize.cpp, test/testclass.cpp, test/testnullpointer.cpp: better fix for #2672 (False positive: function can be const, nested classes declared in one line) 2011-03-24 Sebastien Debrard * : commit 5f36ede4f5e7f8abc2dafa248a283e92feeed288 Author: Daniel Marjamäki Date: Wed Mar 23 18:45:47 2011 +0100 2011-03-23 Robert Reif * lib/tokenize.cpp, test/testtokenize.cpp: fix #2672 (False positive: function can be const, nested classes declared in one line) 2011-03-22 Robert Reif * test/testclass.cpp: add some more CheckClass::noMemset tests 2011-03-22 Robert Reif * lib/checkclass.cpp: fix pointer/reference check in CheckClass::noMemset symbol database conversion 2011-03-22 Robert Reif * lib/checkclass.cpp: convert remainder of CheckClass::noMemset to use symbol database 2011-03-22 Robert Reif * : commit 468a983db1356576214d854d8930dc9521fdc685 Author: Robert Reif Date: Tue Mar 22 21:24:28 2011 -0400 2011-03-23 Sebastien Debrard * tools/Makefile: fix compilation error 2011-03-23 Sebastien Debrard * tools/Makefile: fix compile error 2011-03-23 Sebastien Debrard * : commit d36ed9aff15e267f3f94f3e37432e0eb6380809a Author: Robert Reif Date: Tue Mar 22 19:23:36 2011 -0400 2011-03-22 Robert Reif * lib/checkmemoryleak.cpp, lib/cppcheck.cpp: run astyle 2011-03-22 Ettl Martin * lib/cppcheck.cpp, test/testfilelister_unix.cpp: fixed performance issues, found by selfcheck with cppcheck. 2011-03-22 Ettl Martin * lib/checkmemoryleak.cpp, test/testmemleak.cpp: extended checkmemoryleak-whitelist 2011-03-22 Zachary Blair * lib/token.cpp: Fixed #2665 (Slightly sped-up how Token::Match() parses patterns) 2011-03-21 Robert Reif * lib/tokenize.cpp, test/testtokenize.cpp: fix 2011-03-21 Robert Reif * lib/tokenize.cpp, test/testtokenize.cpp: fix invalid bitfield match and simplification that created invalid code 2011-03-21 Robert Reif * lib/symboldatabase.cpp, lib/symboldatabase.h: add virtual base class support to symbol database 2011-03-21 Robert Reif * cli/filelister.cpp, lib/checkmemoryleak.cpp, test/testmemleak.cpp: run astyle 2011-03-21 Ettl Martin * lib/checkmemoryleak.cpp, test/testmemleak.cpp: extended checkmemoryleak white list 2011-03-21 Ettl Martin * lib/checkmemoryleak.cpp, test/testmemleak.cpp: #2667 added open(), _open() and _wopen() function to checkmemoryleak whitelist, incl. unittests; 2011-03-21 Ettl Martin * lib/checkmemoryleak.cpp, test/testmemleak.cpp: #2667 added perror to checkmemoryleak white list; added unit-tests. 2011-03-21 Ettl Martin * lib/checkmemoryleak.cpp, test/testmemleak.cpp: #2668 fixed memory leak ( freopen() ) 2011-03-21 Ettl Martin * lib/checkmemoryleak.cpp, test/testmemleak.cpp: #2659 added chown,chmod and chdir functions to checkmemoryleak white list; added unittests for each case; 2011-03-20 Ettl Martin * lib/checkmemoryleak.cpp, test/testmemleak.cpp: #2659 added access()-function to checkmemoryleak white-list and provided untittests. 2011-03-20 Ettl Martin * test/testmemleak.cpp: #2667 removed wrong unittests; 2011-03-20 Ettl Martin * test/testmemleak.cpp: #2667 created unit-tests 2011-03-20 Ettl Martin * lib/checkmemoryleak.cpp, test/testmemleak.cpp: #2659 added stat function to white list and provide unit tests. 2011-03-20 Ettl Martin * lib/checkmemoryleak.cpp, test/testmemleak.cpp: fixed ticket 2659: added lstat function to white list; provided unit-tests. 2011-03-20 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: fix #2663 (False negative: function can be const (changing unknown or uninitialised variable)) 2011-03-20 Robert Reif * lib/symboldatabase.cpp, lib/symboldatabase.h, test/testclass.cpp: fix #2664 (False negative: function can be const (using type from another namespace)) 2011-03-20 Kimmo Varis * win_installer/cppcheck.wxs, win_installer/productInfo.wxi: Installer: Fix file modes of two installer files. The files had executable file mode set but they don't need it as they are normal data files read by the Wix tool. 2011-03-20 Kimmo Varis * win_installer/cppcheck.wxs: Installer: Remove old Swedish translation file. 2011-03-20 Kimmo Varis * win_installer/cppcheck.wxs: Installer: Update Swedish GUI translation filename 2011-03-20 Kimmo Varis * gui/cppcheck_de.ts, gui/cppcheck_en.ts, gui/cppcheck_fi.ts, gui/cppcheck_fr.ts, gui/cppcheck_ja.ts, gui/cppcheck_nl.ts, gui/cppcheck_pl.ts, gui/cppcheck_ru.ts, gui/cppcheck_sr.ts, gui/cppcheck_sv.ts: GUI: Update translation files. 2011-03-20 Kimmo Varis * gui/cppcheck_se.ts, gui/cppcheck_sv.ts, gui/gui.pro, gui/translationhandler.cpp: GUI: Rename Swedish translation file. Ln pointed out in IRC that 'se' is not ISO-639 name of the Swedish, but 'sv' is. So rename the translation file to use the correct ISO-639 name. This wrong name also probably caused the GUI not recognizing Swedish locale of the OS. 2011-03-20 Daniel Marjamäki * cli/filelister.cpp: FileLister: Fixed compile error with Qt Creator + MinGW 2011-03-20 Daniel Marjamäki * cli/cppcheck.vcproj, cli/cppcheck.vcxproj, cli/cppcheck.vcxproj.filters, test/test.vcproj, test/test.vcxproj, test/test.vcxproj.filters: FileLister: Updated Visual Studio files 2011-03-20 Daniel Marjamäki * cli/cli.pro, test/test.pro: FileLister: updated qmake files 2011-03-20 Daniel Marjamäki * Makefile, cli/cppcheckexecutor.cpp, cli/filelister.cpp, cli/filelister.h, cli/filelister_unix.cpp, cli/filelister_unix.h, cli/filelister_win32.cpp, cli/filelister_win32.h, test/testfilelister_unix.cpp, tools/dmake.cpp: FileLister: Moved back the code into a single cpp file 2011-03-20 Sebastien Debrard * : commit 27506b423195b4cc51664884922e34b24011ccd2 Author: Daniel Marjamäki Date: Sun Mar 20 09:55:26 2011 +0100 2011-03-20 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #2662 (Segfault: overloaded function call function with same name) 2011-03-19 Robert Reif * lib/tokenize.cpp, test/testtokenize.cpp: fix #1280 (Pointer to function support) 2011-03-19 Robert Reif * lib/tokenize.cpp, test/testtokenize.cpp: fix #1987 (Internal error:: CheckClass::SpaceInfo::getVarList found variable 'element_size' with varid 0.) 2011-03-19 Sebastien Debrard * : commit 2dcd0128b018733798eb4c15dbbd2e6f22bf777d Author: Daniel Marjamäki Date: Sat Mar 19 14:05:22 2011 +0100 2011-03-19 Sebastien Debrard * : commit 31af3a64bce89482ca9acd9c6044d4543faf3bd6 Author: Daniel Marjamäki Date: Sat Mar 19 11:09:51 2011 +0100 2011-03-19 Daniel Marjamäki * test/testmemleak.cpp: Refactoring: Renamed showAll flag to inconclusive 2011-03-19 Daniel Marjamäki * lib/tokenize.cpp, test/testmemleak.cpp, test/testtokenize.cpp: Tokenizer::setVarId: Better handling of class declarations when variable usage comes before variable declaration 2011-03-18 Robert Reif * lib/tokenize.cpp, test/testtokenize.cpp: #2630 (segmentation fault of cppcheck (template ) 2011-03-17 Robert Reif * lib/symboldatabase.cpp, test/testclass.cpp: fix #2657 (segmentation fault of cppcheck ( gcc-testsuite: return f(){} )) 2011-03-17 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: fix #2651 (Segmentation fault (typedef)) 2011-03-17 Reijo Tomperi * cppcheck.cbp: Update codeblocks project file to contain new files 2011-03-17 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #2648 (Tokenizer::simplifyTemplates: Segmentation fault (gcc-testsuite)) 2011-03-17 Sebastien Debrard * : commit 7e04ea0859215355ebbaa950aaa449c3b9822358 Author: Robert Reif Date: Wed Mar 16 19:54:52 2011 -0400 2011-03-16 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Tokenizer::simplifyTemplates: First simple fix for problems when using sizeof in template parameter 2011-03-15 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: fix #2581 (### Internal error in Cppcheck. Please report it.) 2011-03-15 Robert Reif * lib/symboldatabase.cpp, test/testclass.cpp: fix #2637 (segmentation fault of cppcheck ( {} const const )) 2011-03-15 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: fix #2651 function typedef with extra ()s 2011-03-15 Sebastien Debrard * : commit fa868e44ae2827f2efb2b5d3c2d5e7462295545e Author: Greg Hewgill Date: Tue Mar 15 20:19:30 2011 +1300 2011-03-14 Sebastien Debrard * : commit e1afd5eb0939ce1b7d6433699e9f89faf8fd75fc Author: Daniel Marjamäki Date: Mon Mar 14 19:35:22 2011 +0100 2011-03-14 Daniel Marjamäki * webreport.sh: webreport: refactoring 2011-03-14 Daniel Marjamäki * generate_coverage_report: LCOV: updated the generate_coverage_report to avoid some redundant compiler warnings 2011-03-14 Daniel Marjamäki * htdocs/index.php: htdocs: minor update of index.php 2011-03-13 Robert Reif * lib/symboldatabase.cpp: look for function prototypes but don't save them in the symbol database yet 2011-03-13 Robert Reif * lib/symboldatabase.cpp, lib/symboldatabase.h: save pointer to Function info in function scope in symboldatabase 2011-03-13 Robert Reif * lib/symboldatabase.cpp, lib/symboldatabase.h: save location of using directive (not used yet) 2011-03-13 Daniel Marjamäki * lib/checkbufferoverrun.cpp, lib/tokenize.cpp, test/testbufferoverrun.cpp, test/testtokenize.cpp: Fixed #2638 (Tokenizer::setVarId : varid is wrongly given when unknown macro is used) 2011-03-13 Daniel Marjamäki * lib/checkother.cpp, lib/checkother.h: Clarify condition: re-enabled check 2011-03-13 Daniel Marjamäki * lib/checknullpointer.cpp, test/testnullpointer.cpp: Fixed #2621 (Segmentation fault for GCC statement expression) 2011-03-13 Daniel Marjamäki * lib/checkstl.cpp: Refactoring: Use SymbolDatabase to determine if variable is a iterator 2011-03-13 Daniel Marjamäki * lib/checkstl.cpp: Refactoring: Use symbol database to get variable type 2011-03-13 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #2639 (False positive: confusion between struct and function) 2011-03-12 Robert Reif * lib/checkclass.cpp, lib/checkclass.h, test/testclass.cpp: Convert CheckClass::noMemset to use the symbol database to lookup types. This adds better support for namespaces and nested classes. 2011-03-12 Robert Reif * lib/symboldatabase.cpp: save start parentheses of global functions 2011-03-12 Daniel Marjamäki * lib/checknullpointer.cpp, test/testnullpointer.cpp: Fixed #2647 (False positive: Possible null pointer dereference (member function call)) 2011-03-12 Daniel Marjamäki * lib/checkstl.cpp, test/teststl.cpp: Fixed #2643 (False positive: iterator increment and insert) 2011-03-12 Robert Reif * lib/checknullpointer.cpp, test/testnullpointer.cpp: fix another false negative introduced by fix for #2641 2011-03-12 Robert Reif * lib/checknullpointer.cpp, lib/symboldatabase.h, test/testnullpointer.cpp: fix false negative introduced by fix for #2641 2011-03-12 Daniel Marjamäki * lib/checknullpointer.cpp, test/testnullpointer.cpp: Fixed #2641 (False positive: Possible null pointer dereference (global pointer, function call)) 2011-03-12 Daniel Marjamäki * : commit 2716b856f410a4235eea775f03b23de1dbe85310 Author: Greg Hewgill Date: Sat Mar 12 07:27:31 2011 +1300 2011-03-10 Robert Reif * lib/checkautovariables.cpp, lib/checkclass.cpp, lib/checkmemoryleak.cpp, lib/checkother.cpp, lib/symboldatabase.cpp, lib/symboldatabase.h, lib/tokenize.cpp, test/testsymboldatabase.cpp: refactor symbol database and checks to use list of Scope rather than list of Scope pointers 2011-03-10 Greg Hewgill * lib/settings.cpp, man/cppcheck.1.xml, man/manual.docbook, test/testsuppressions.cpp: Allow suppressing all warnings (using *) for specified file or files 2011-03-10 Greg Hewgill * lib/checkclass.cpp, lib/checkclass.h, test/testclass.cpp: Revert "Check for memset on nested structs (ticket #1288)" Turns out this fix is incomplete. This reverts commit a084697410bac0e08324236e78185a0c1a8a92ff. 2011-03-09 Daniel Marjamäki * lib/checkother.h: suspicious condition: commented out the check temporarily - there are some false positives I'll need to fix 2011-03-09 Daniel Marjamäki * lib/checkother.cpp, lib/checkother.h, test/testother.cpp: Suspicious condition: Added new check for conditions that contains assignment+comparison 2011-03-09 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #2632 (segmentation fault of cppcheck ( void>(); void>() )) 2011-03-09 Sébastien Debrard * : commit bea387538631337021d219ce70dc843858460898 Author: Daniel Marjamäki Date: Wed Mar 9 21:00:28 2011 +0100 2011-03-09 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #2635 (False positive: resource leak) 2011-03-09 Greg Hewgill * : commit a084697410bac0e08324236e78185a0c1a8a92ff Author: Greg Hewgill Date: Wed Mar 9 22:49:13 2011 +1300 2011-03-09 Greg Hewgill * lib/checkclass.cpp, test/testclass.cpp: Check for memset on objects with virtual functions (ticket #607) 2011-03-09 Greg Hewgill * lib/checkclass.cpp, lib/checkclass.h, test/testclass.cpp: refactor noMemset so it recursively checks parent classes for non-memset-compatible things 2011-03-08 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: fix #2630 (segmentation fault of cppcheck ( typedef ... ) 2011-03-08 Robert Reif * lib/symboldatabase.cpp: fix null pointer dereference found by clang++ --analyze 2011-03-08 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #2620 (Tokenizer::setVarId : wrong handling of member function parameters) 2011-03-08 Daniel Marjamäki * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #2634 (False positive: buffer access out of bounds) 2011-03-08 Kimmo Varis * gui/about.ui: GUI: Update About-dialog copyright year to 2011. 2011-03-07 Robert Reif * lib/token.cpp, lib/token.h, lib/tokenize.cpp: copy all flag fields in a Token 2011-03-07 Robert Reif * lib/checkstl.cpp, test/teststl.cpp: convert CheckStl::size() to use symbol database, fix false positives, and remove inconclusive 2011-03-07 Kimmo Varis * : commit d8ced1dbb1e2fa78cbd17c78c468a65b6338581d Author: Kimmo Varis Date: Mon Mar 7 23:43:59 2011 +0200 2011-03-07 Kimmo Varis * gui/resultstree.cpp, gui/resultstree.h: GUI: Add back translation of severity texts. Translation of severity texts was temporarily disabled by earlier commits. Now adding new method to ResultsTree for getting translated severity string. 2011-03-07 Kimmo Varis * gui/resultstree.cpp, gui/resultstree.h: GUI: Update more severity conversion methods. 2011-03-07 Daniel Marjamäki * lib/preprocessor.cpp: Preprocessor: made sure string::iterator is valid after string::erase 2011-03-07 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Incorrect string compare: reduce noise when using strncmp on string literal 2011-03-07 Kimmo Varis * gui/resultstree.cpp, gui/resultstree.h, gui/resultsview.cpp: GUI: Make Severity to ShowType use enum values. Continue converting Severity use in GUI from QString to enum values. 2011-03-07 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #2631 (Tokenizer::simplifyTemplates: template usage 'std::cout << (foo(r));') 2011-03-07 Kimmo Varis * gui/erroritem.cpp, gui/erroritem.h, gui/resultstree.cpp: GUI: Convert severity in ErrorLine to enum value. This commit continues converting severity in GUI to enum. 2011-03-07 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #2633 (False positive: Memory leak for tree node) 2011-03-07 Kimmo Varis * gui/csvreport.cpp, gui/erroritem.cpp, gui/erroritem.h, gui/resultstree.cpp, gui/resultsview.cpp, gui/threadresult.cpp, gui/txtreport.cpp, gui/xmlreportv1.cpp, gui/xmlreportv2.cpp: GUI: Use severity enum in ErrorItem. Convert from using string to enum values for severity in ErrorItem. Storing and handling severity as string was the easy way earlier but it is not convenient or efficient way to handle severities. This commit is the first step in converting severity handling to use the enum values instead of strings. 2011-03-06 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: fix #2630 (segmentation fault of cppcheck ( typedef y x () x )) 2011-03-06 Daniel Marjamäki * lib/checknullpointer.cpp: Refactoring of the CheckNullPointer::isPointer. Use the symbol database. Ticket: #2629 2011-03-06 Daniel Marjamäki * lib/symboldatabase.cpp, lib/symboldatabase.h: Symbol database: variable fix. ticket: #2629 2011-03-06 Daniel Marjamäki * lib/preprocessor.cpp: astyle formatting 2011-03-06 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Tokenizer::simplifyTemplates: better handling of '(foo())'. Ticket: #2631 2011-03-06 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Revert "Tokenizer::simplifyTemplates: better handling of '(foo())'. Ticket: #2631" This reverts commit de31ec1e4441eab3c065d3208f0be01bbf2c2bcf. 2011-03-07 Greg Hewgill * lib/preprocessor.cpp: Always pass unsigned char to ::isspace to prevent runtime error in MSVC 2011-03-06 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Tokenizer::simplifyTemplates: better handling of '(foo())'. Ticket: #2631 2011-03-06 Daniel Marjamäki * lib/errorlogger.h: error logger: explain the severities better 2011-03-06 Kimmo Varis * lib/errorlogger.h: Document error message severities. 2011-03-06 Daniel Marjamäki * readme.txt: readme: better build instructions 2011-03-06 Daniel Marjamäki * lib/checkmemoryleak.cpp: CheckMemoryLeak: Refactoring the code 2011-03-06 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #2612 (segmentation fault of cppcheck ( <><< )) 2011-03-05 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: finish fixing #2624 (better function pointer support needed) 2011-03-05 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: partial fix for #2624 (better function pointer support needed) 2011-03-06 Greg Hewgill * lib/checkother.cpp, lib/preprocessor.cpp, test/testother.cpp: switchCaseFallThrough is now an inconclusive check 2011-03-06 Greg Hewgill * lib/preprocessor.cpp, test/testother.cpp: Relax detection of 'fall through' comment so it only adds a suppression if it immediately precedes 'case' or 'default' 2011-03-06 Greg Hewgill * lib/checkother.cpp, lib/preprocessor.cpp, test/testother.cpp: switchCaseFallThrough is now a coding style check (ticket #2623) 2011-03-05 Kimmo Varis * cppcheck.cppcheck: Skip checking gui/temp when using project file. gui/temp directory contains code files generated by qmake so those files are not interesting to check. 2011-03-05 Greg Hewgill * lib/preprocessor.cpp, test/testother.cpp: Support a few more common styles of "fall through" comment 2011-03-05 Greg Hewgill * Makefile, cli/threadexecutor.cpp, cli/threadexecutor.h: Refactor ThreadExecutor::check() to handle child failures more gracefully 2011-03-05 Greg Hewgill * cli/threadexecutor.cpp, cli/threadexecutor.h: Normalise threading support checking into a single #define 2011-03-05 Greg Hewgill * : commit c5f8a06a97df57a47a2061e48b55e6fa15f19641 Author: Greg Hewgill Date: Fri Mar 4 20:26:14 2011 +1300 2011-03-04 Greg Hewgill * lib/preprocessor.cpp, test/testother.cpp: fix case where fall through comment precedes preprocessor line 2011-03-04 Greg Hewgill * test/testother.cpp: add TODO for pathological case 2011-02-23 Greg Hewgill * lib/checkother.cpp, test/testother.cpp: avoid warning on first case (in case there are declarations before first case) 2011-02-20 Greg Hewgill * lib/preprocessor.cpp: slightly more flexible detection of 'fall through' comment 2011-02-20 Greg Hewgill * lib/checkother.cpp: avoid crash when else condition doesn't have braces to link 2011-02-20 Greg Hewgill * lib/preprocessor.cpp, test/testother.cpp: recognise fall through in c style comments 2011-02-20 Greg Hewgill * lib/checkother.cpp: more gracefully handle unexpected blocks inside switch 2011-02-20 Greg Hewgill * lib/checkother.cpp, lib/checkother.h, test/testother.cpp: full implementation of switch case fall through 2011-02-19 Greg Hewgill * lib/checkother.cpp, lib/checkother.h, lib/preprocessor.cpp, test/testother.cpp: initial simplistic implementation of switchCaseFallThrough 2011-03-03 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: really fix #2620 reference of typedef of array not simplified properly 2011-03-03 Sébastien Debrard * : commit d7a6e729b84a72b3886dedb8fa7b50db3c68de3c Author: Daniel Marjamäki Date: Thu Mar 3 20:07:56 2011 +0100 2011-03-03 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: revert previous commit: simplified code isn't correct 2011-03-03 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: fix #2620 reference of typedef of array not simplified properly 2011-03-02 Robert Reif * lib/checkautovariables.cpp: convert some of the checks in CheckAutoVariables to use the variable symbol table 2011-03-02 Robert Reif * lib/symboldatabase.cpp, lib/symboldatabase.h, test/testautovariables.cpp: add debug message for function argument missing varid 2011-03-01 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #2618 (Tokenizer::simplifyKnownVariables: Don't use known string value if address is wanted) 2011-03-01 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #2616 (Segmentation fault with unknown macro) 2011-03-01 Daniel Marjamäki * gui/projectfiledialog.cpp, test/testpreprocessor.cpp: astyle formatting 2011-03-01 Greg Hewgill * test/testpreprocessor.cpp: add TODO for #elif inside #if 0 processing, also for #if 1 2011-03-01 Greg Hewgill * lib/preprocessor.cpp, test/testpreprocessor.cpp: refactor #if 0 handling to leave preprocessor statements alone 2011-03-01 Greg Hewgill * lib/preprocessor.cpp, test/testpreprocessor.cpp: handle #if (0) after removing parentheses 2011-03-01 Greg Hewgill * lib/preprocessor.cpp, test/testpreprocessor.cpp: handle embedded whitespace in #if 0 processing 2011-03-01 Greg Hewgill * test/testpreprocessor.cpp: test case for #if 0 exclusion 2011-02-28 Robert Reif * lib/tokenize.cpp, test/testtokenize.cpp: fix #2595 bitfield fix for case x: break; and default: break; 2011-02-28 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #2615 (Segmentation fault in cppcheck 1.47) 2011-02-28 Sébastien Debrard * : commit 81318bb4a12aa7d3bc470b17a5c2c8136a3703b5 Author: Kimmo Varis Date: Mon Feb 28 17:41:52 2011 +0200 2011-02-28 Kimmo Varis * gui/projectfile.cpp, gui/projectfiledialog.cpp: GUI: Show native path separators. Show native path separators in project file-dialog. Convert paths to internal separators when reading from project file and when reading from the dialog. Convert to native separators when adding to the dialog (for the user). 2011-02-28 Kimmo Varis * : commit b1db29278d8d540bc71ca3337cb3ddba5e00f364 Author: Kimmo Varis Date: Mon Feb 28 16:31:46 2011 +0200 2011-02-28 Kimmo Varis * gui/projectfiledialog.cpp: GUI: Add path separator for ignore dirs. 2011-02-28 Kimmo Varis * gui/projectfile.cpp: GUI: Small cleanup for projectfile code. 2011-02-28 Kimmo Varis * gui/projectfiledialog.cpp: GUI: Fix bug mixing include and ignore dirs in GUI. 2011-02-28 Kimmo Varis * gui/projectfile.cpp: GUI: Write ignore paths to project file. 2011-02-28 Kimmo Varis * gui/project.cpp, gui/projectfile.ui, gui/projectfiledialog.cpp, gui/projectfiledialog.h: GUI: Add GUI for ignored paths in project files. Add similar GUI than include paths has. Currently there is only possibly select directories directly from the GUI. But filename can be added to the path by editing it. 2011-02-28 Kimmo Varis * gui/filelist.cpp, gui/filelist.h, gui/mainwindow.cpp, gui/projectfile.cpp: GUI: Take filtering into use in GUI. Add applying of filtering into list of files to check if we have an active project file. Filtering is quite much similar to the filtering in CLI. If we have directory filter ("gui/") then we check all paths if they contain "gui" part. In practice we search for string "/gui" from the paths. If we have filename filtering ("gui/projectfile.cpp") then we check if any of the paths end with that. 2011-02-27 Zachary Blair * lib/checkother.cpp, lib/checkother.h, test/testother.cpp: Fixed #432 (New check: wrong usage of ! operator in conditions) 2011-02-27 Kimmo Varis * gui/mainwindow.cpp: GUI: If project open failed project got invalid. The project was deleted but not set as NULL when the project open failed. Fix this by deleting the project only when the opening succeeds. 2011-02-27 Kimmo Varis * gui/projectfile.cpp, gui/projectfile.h: GUI: Convert some projectfile method arguments const. 2011-02-27 Kimmo Varis * gui/projectfile.cpp, gui/projectfile.h: GUI: Add ignored paths support to project file. This patch adds support for ignored paths in the project file. There is new element which can contain one or more elements with name attribute containing the path to ignore. 2011-02-27 Robert Reif * lib/symboldatabase.cpp: fix symbol database bug where delete can be considered a variable declaration 2011-02-27 Robert Reif * lib/symboldatabase.cpp, lib/symboldatabase.h, test/testsymboldatabase.cpp: add an array flag to symbol database Variable class 2011-02-27 Robert Reif * lib/symboldatabase.cpp: fix a symbol database bug where a return statement could be considered a variable declaration 2011-02-26 Daniel Marjamäki * lib/symboldatabase.cpp: Symbol database: Fixed debug warnings for true/false. true/false doesn't have varId. 2011-02-26 Robert Reif * lib/symboldatabase.cpp: fix a bug in symbol database while scope processing 2011-02-26 Robert Reif * lib/symboldatabase.h: fix potential null pointer dereference for unnamed function arguments 2011-02-26 Robert Reif * lib/checkclass.cpp: convert CheckClass::noMemset to use new variable lookup capability 2011-02-26 Robert Reif * lib/symboldatabase.cpp, lib/symboldatabase.h: add a varId to Variable lookup table and fill it in with all variables 2011-02-26 Robert Reif * lib/symboldatabase.cpp, lib/symboldatabase.h: add local scopes to the symbol database 2011-02-26 Robert Reif * lib/symboldatabase.cpp, lib/symboldatabase.h: add a list of function arguments to symbol database Function class 2011-02-26 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #2031 (Tokenizer: simplify known value (string has known value after strcpy)) 2011-02-26 Daniel Marjamäki * lib/preprocessor.cpp: astyle formatting 2011-02-26 Daniel Marjamäki * lib/checkuninitvar.cpp, test/testuninitvar.cpp: fix 2011-02-26 Daniel Marjamäki * : merge from subversion client 2011-02-26 Robert Reif * lib/symboldatabase.cpp, lib/symboldatabase.h: extend symbol database Variable with more information 2011-02-26 Robert Reif * lib/tokenize.cpp, lib/tokenize.h: expose number of variables found by Tokenizer 2011-02-26 Kimmo Varis * gui/cppcheck_de.ts, gui/cppcheck_en.ts, gui/cppcheck_fi.ts, gui/cppcheck_fr.ts, gui/cppcheck_ja.ts, gui/cppcheck_nl.ts, gui/cppcheck_pl.ts, gui/cppcheck_ru.ts, gui/cppcheck_se.ts, gui/cppcheck_sr.ts: GUI: Update translation files. 2011-02-26 Kimmo Varis * gui/projectfile.ui, gui/projectfiledialog.cpp, gui/projectfiledialog.h: GUI: Use list to manage paths in project file. Handling paths in line edit control is quite hard. List control is much more pleasant to use for it. Convert Project file path handling to similar list control usage than include paths earlier. 2011-02-25 Kimmo Varis * gui/projectfile.ui, gui/projectfiledialog.cpp, gui/projectfiledialog.h: GUI: Edit project's include directories as list. Editing include directories in edit control is not nice. Instead add new tab and list control for the include directories. They are now added, edited and removed like global include directories in settings dialog. 2011-02-25 Kimmo Varis * gui/applicationlist.cpp: GUI: Fix for initializing default application. 2011-02-25 Robert Reif * lib/symboldatabase.cpp, test/testsymboldatabase.cpp: fix symboldatabase global variable detection 2011-02-25 Kimmo Varis * gui/settingsdialog.cpp: GUI: Select the default application in app list. 2011-02-25 Kimmo Varis * gui/applicationlist.cpp, gui/applicationlist.h, gui/settingsdialog.cpp: GUI: Rename methods. We don't need the 'type' postfix. We are handling applications, not application types. 2011-02-25 Kimmo Varis * gui/resultstree.cpp, gui/resultstree.h: GUI: Fix opening error item with default app. 2011-02-25 Kimmo Varis * gui/settingsdialog.cpp: GUI: Fix for removing application. The default application was not handled correctly when removing application from the list. If the default application is removed then we reset the default application to unknown. Otherwise we make sure the default application is correct after the removal of other application. 2011-02-25 Kimmo Varis * gui/applicationlist.cpp, gui/applicationlist.h, gui/common.h, gui/settingsdialog.cpp: GUI: Show default application with [Default] text. Instead of keeping the default application as a first item in the application list point the default application by adding a "[Default]" text after its name. 2011-02-25 Kimmo Varis * gui/settings.ui, gui/settingsdialog.cpp, gui/settingsdialog.h: GUI: Improve edit application setttings dialog. Make the editor application settings dialog to look similar than include paths dialog. Move buttons right to the list, not below. And remove unnecessary "application" word from button texts. Rename Modify-button to Edit-button since we are not modifying the application but editing its info. Similarly rename Delete- button to Remove-button since we are not deleting the application but removing from the list. 2011-02-25 Kimmo Varis * gui/settingsdialog.cpp, gui/settingsdialog.h: GUI: Rename method. SettingsDialog::PopulateListwidget() was a bit confusing name as there are more than one list widgets already in settings-dialog. 2011-02-24 Robert Reif * lib/checkclass.cpp, lib/checkclass.h, test/testclass.cpp: code cleanup and add more tests to CheckClass::noMemset() 2011-02-24 Kimmo Varis * gui/settings.ui, gui/settingsdialog.cpp, gui/settingsdialog.h: GUI: Add list control for include paths. Instead of hard-to-use single line edit control, use list control for include paths. Have separate buttons for adding, editing and removing paths. Paths are still stored as one string where paths are separated with ";". Empty paths are ignored. 2011-02-24 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #2610 (segmentation fault of cppcheck ( if () < {} )) 2011-02-24 Chuck Larson * lib/checkclass.cpp, test/testclass.cpp: memset: using memset on struct/class that has std::string member variable. ticket: #1655 2011-02-24 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: fix #2609 (False positive on template dependent name) 2011-02-24 János Maros * lib/checkpostfixoperator.cpp: Fixed #2608 ([lib/checkpostfixoperator.cpp:87]: (error) Possible null-pointer dereference: decltok) 2011-02-23 Daniel Marjamäki * lib/preprocessor.cpp, test/testpreprocessor.cpp: Fixed #2578 (Preprocessor does not correctly handle #define A 0 / #if A) 2011-02-23 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #2604 (Segmentation fault of cppcheck ( sizeof <= A )) 2011-02-23 Greg Hewgill * gui/checkthread.cpp: fix CppCheck constructor to allow gui to compile 2011-02-23 Greg Hewgill * : commit ec4e0c8bf5dba7803c0ebf8313827794d905a674 Author: Greg Hewgill Date: Wed Feb 23 20:59:30 2011 +1300 2011-02-16 Greg Hewgill * cli/cmdlineparser.cpp, test/testcmdlineparser.cpp: add --suppress= command line option 2011-02-22 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: fix #2403 (simplifyTypedef: array of function pointers) Internal error message 2011-02-23 Sébastien Debrard * lib/checkobsoletefunctions.h: update the message when bcopy function is used 2011-02-22 Kimmo Varis * cli/cmdlineparser.cpp: CLI: Fix CLI help text to fit in 80-char terminal. 2011-02-22 Reijo Tomperi * test/testbufferoverrun.cpp: Fix test array_index_24() to share code with environments where plain char is either signed or unsigned. This was done, because that particular test has been already fixed a couple of times and it is still broken in some systems. 2011-02-22 Daniel Marjamäki * lib/preprocessor.cpp, test/testpreprocessor.cpp: Fixed #2605 (cppcheck hangs with 100% cpu load ( #define = )) 2011-02-22 Sébastien Debrard * : commit dd12fc177fb827d3d54648ec725c9403cb9edf1a Author: Robert Reif Date: Tue Feb 22 07:48:34 2011 -0500 2011-02-22 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: fix #2601 (segmentation fault of cppcheck) 2011-02-22 Robert Reif * lib/checkclass.cpp, test/testunusedprivfunc.cpp: fix #2602 (segmentation fault of cppcheck ( class A {A& operator=(const A&); }; )) 2011-02-21 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: fix #2600 (segmentation fault of cppcheck ( enum{const} )) 2011-02-21 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: fix #2599 (segmentation fault of cppcheck ( sizeof )) 2011-02-21 Robert Reif * lib/symboldatabase.cpp, test/testclass.cpp: fix segfault: #2591 (cppcheck hangs with 100% cpu load ( class A : )) 2011-02-21 root * : commit 55711698d0b51b881d13c4537914e86f43ffba31 Author: Daniel Marjamäki Date: Mon Feb 21 19:41:34 2011 +0100 2011-02-20 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: fix #2595 (False positive Technically the member function 'A::foo' can be const) 2011-02-20 Robert Reif * lib/tokenize.cpp, test/testtokenize.cpp: fix bitfields to support non-numeric bitfield width 2011-02-20 Daniel Marjamäki * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #2597 (False positive: Buffer access out-of-bounds for u_char, uint*_t, ...) 2011-02-20 Daniel Marjamäki * lib/preprocessor.cpp: astyle formatting 2011-02-20 Daniel Marjamäki * lib/preprocessor.cpp, test/testpreprocessor.cpp: Fixed #2563 (#if equality testing does not ignore parentheses) 2011-02-20 Daniel Marjamäki * test/testpreprocessor.cpp: Preprocessor: Added TODO test case for #2563 2011-02-20 Daniel Marjamäki * lib/tokenize.cpp: cppcheckError: Rephrazed the error message. The 'internal error' sounds like something dangerous happens that needs to be fixed. So I think 'analysis failed' is better. If the code has a syntax error then 'analysis failed' is entirely ok. 2011-02-20 Daniel Marjamäki * test/testnullpointer.cpp: Null pointer: Added TODO test case. Ticket: #2379 2011-02-20 Daniel Marjamäki * lib/tokenize.cpp, lib/tokenize.h, test/testsimplifytokens.cpp, test/testtokenize.cpp: Tokenizer: fixed so that 'p=&x; if(p)' is simplified to 'p=&x;if(&x)'. Ticket: #2596 2011-02-20 Daniel Marjamäki * lib/checknullpointer.cpp, test/testnullpointer.cpp: Null pointers: Fixed false negative for such code: 'if (p && *p) {} else { *p=0; }'. Ticket: #2379 2011-02-20 Robert Reif * lib/checkclass.cpp: use func->start rather than searching for '{' in CheckClass::privateFunctions 2011-02-20 Robert Reif * lib/symboldatabase.cpp, lib/symboldatabase.h: save start of function '{' and start of variable declaration in symbol database so checks don't have to find them 2011-02-20 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: astyle formatting 2011-02-20 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Tokenizer::simplifyTemplates: Better handling for multi-token template arguments such as 'Foo' 2011-02-19 Robert Reif * lib/checkclass.cpp: fix comment in CheckClass::initializeVarList 2011-02-19 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: fix #2592 (False positive: 'operator=' should return reference to self) 2011-02-20 Greg Hewgill * : commit 98ab34b2b5e92fe47cfc4d279fcc14186ef9e05a Author: Greg Hewgill Date: Sun Feb 20 11:36:03 2011 +1300 2011-02-19 Daniel Marjamäki * lib/checknullpointer.cpp, test/testnullpointer.cpp: Null pointers: Fixed false negative for such code 'if (p && *p==0) {} *p = 0;'. Ticket: #2379 2011-02-19 Daniel Marjamäki * lib/checknullpointer.cpp, test/testnullpointer.cpp: Null pointers: Fixed false negative for such code: 'abc->a = 0; if (abc && ..'. Ticket: #2379 2011-02-19 Daniel Marjamäki * lib/checknullpointer.cpp, test/testnullpointer.cpp: Null pointer: fixed false negative when dereferencing struct and then checking if it's null. Ticket: #2379 2011-02-19 Robert Reif * lib/checkbufferoverrun.cpp, lib/symboldatabase.cpp, test/testclass.cpp: fix [B#2589 (segmentation fault of cppcheck (struct B : A)) 2011-02-19 Daniel Marjamäki * lib/executionpath.cpp, test/testnullpointer.cpp, test/testuninitvar.cpp: Fixed #2231 (uninitialized variable: undetected when initialization in for loop) 2011-02-19 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: fix #2587 (Spurious warning about struct hiding typedef) 2011-02-19 Robert Reif * lib/symboldatabase.cpp: fix Scope::findInNestedListRecursive to check all children 2011-02-19 Daniel Marjamäki * lib/checkother.cpp: Fixed #2590 (segmentation fault of cppcheck ( {}int )) 2011-02-19 Greg Hewgill * lib/tokenize.cpp: remove stray BOM from source file 2011-02-18 Sébastien Debrard * : commit f3b211378cec53a500d2e11f7ad8781f0a138d74 Author: Daniel Marjamäki Date: Fri Feb 18 20:22:09 2011 +0100 2011-02-18 Daniel Marjamäki * lib/tokenize.cpp: Borland C++: Fixed compiler error 2011-02-18 Daniel Marjamäki * lib/checknullpointer.cpp, test/testnullpointer.cpp: Fixed #2582 (segmentation fault of cppcheck ( if() )) 2011-02-17 Daniel Marjamäki * Makefile: Makefile: updated with dmake 2011-02-17 Daniel Marjamäki * Makefile, tools/dmake.cpp: GCC: Disabled the -Wsign-conversion. It is quite noisy. 2011-02-17 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #2585 (segmentation fault of cppcheck (CheckOther::clarifyCalculation)) 2011-02-17 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #2586 (segmentation fault of cppcheck (template<>)) 2011-02-17 Daniel Marjamäki * test/testsuppressions.cpp: astyle formatting 2011-02-17 Sébastien Debrard * : commit e2581da30c2676e402240f51753d07531842514e Merge: 53aaf22 a4de6a3 Author: Greg Hewgill Date: Thu Feb 17 21:46:43 2011 +1300 2011-02-17 Greg Hewgill * lib/cppcheck.cpp, lib/settings.cpp, lib/settings.h, test/testsuppressions.cpp: be sure to list unmatched suppressions only for the currently processed file 2011-02-16 Daniel Marjamäki * test/testclass.cpp: CheckClass::noMemset: Added TODO test case 2011-02-16 Daniel Marjamäki * cli/cppcheckexecutor.cpp, lib/cppcheck.cpp, lib/errorlogger.h: Fixed gcc compiler warnings (signedness) 2011-02-16 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #2584 (false positive 'variable n is never used') 2011-02-16 Sébastien Debrard * : commit f6872a7008b56f0933eb6c3faff29992a5693d20 Merge: 5998ec4 de00ad6 Author: Greg Hewgill Date: Thu Feb 17 07:13:16 2011 +1300 2011-02-16 Greg Hewgill * AUTHORS: add self to authors file 2011-02-16 Greg Hewgill * Makefile, cli/cppcheckexecutor.cpp, cli/threadexecutor.cpp, cli/threadexecutor.h, lib/cppcheck.cpp, lib/cppcheck.h, lib/errorlogger.cpp, lib/errorlogger.h, lib/settings.cpp, lib/settings.h, test/testcppcheck.cpp, test/testsuppressions.cpp: implement unmatchedSuppression information message 2011-02-16 Greg Hewgill * lib/settings.cpp, lib/settings.h: factor out addSuppressionLine from file reading function 2011-02-15 Greg Hewgill * lib/settings.cpp: use suppression wildcard glob instead of special-case empty filename 2011-02-15 Raphael Geissert * test/testbufferoverrun.cpp: Really fix the build failure this time 2011-02-14 Robert Reif * lib/symboldatabase.cpp, test/testunusedprivfunc.cpp: fix #2580 (false postive with Unused private function) 2011-02-14 Daniel Marjamäki * build-pcre.txt, build.txt: renamed build.txt to build-pcre.txt 2011-02-14 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Tokenizer::simplifyCalculations: basic handling of bitwise operators 2011-02-14 Daniel Marjamäki * cli/cli.pro, readme.txt: Renaming HAVE_DEPENDENCIES to HAVE_RULES 2011-02-14 Daniel Marjamäki * Makefile, cli/cmdlineparser.cpp, lib/cppcheck.cpp, tools/dmake.cpp: Build: Renamed HAVE_DEPENDENCIES to HAVE_RULES 2011-02-13 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Really fix #2348 perl-tk 2011-02-13 Ettl Martin * lib/preprocessor.cpp: fixed pre/post increment warings, found during selfcheck 2011-02-13 Daniel Marjamäki * test/testbufferoverrun.cpp: Revert "Buffer overruns: Removed TODO test case. We intentionally don't check struct/class arrays fully to avoid false positives" This reverts commit 87cc42e6f0b0c8db37a314e5ef5be2c48cc3f4bd. 2011-02-13 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Tokenizer::simplifyKnownVariables: Fixed TODO testcases (better handling of comparisons) 2011-02-13 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Tokenizer::simplifyKnownVariables: Fixed TODO testcase (better handling of ^) 2011-02-13 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Tokenizer::simplifyKnownVariables: Fixed TODO testcase (better handling of |) 2011-02-13 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Tokenizer::simplifyKnownVariables: Fixed TODO testcase (better handling of %) 2011-02-13 Sébastien Debrard * : commit 87cf0949f2cd01c47194e058afe655fcff8e2ff3 Author: Daniel Marjamäki Date: Sun Feb 13 21:48:13 2011 +0100 2011-02-13 Daniel Marjamäki * test/testbufferoverrun.cpp: Buffer overruns: Removed TODO test case. We intentionally don't check struct/class arrays fully to avoid false positives 2011-02-13 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fix #2579 (segmentation fault of cppcheck) 2011-02-13 Robert Reif * lib/tokenize.cpp: Really fix: #2376 (simplifyTypedef: upx-ucl) 2011-02-13 Daniel Marjamäki * : commit 8c5ec0df7dac25011a26078dd88d9cffeed5ebae Merge: b3e19c2 a4fd5e8 Author: Daniel Marjamäki Date: Sun Feb 13 18:13:35 2011 +0100 2011-02-13 Greg Hewgill * test/testpreprocessor.cpp: change failing tests into TODO_ASSERT_EQUALS 2011-02-12 Raphael Geissert * cli/filelister_unix.cpp: Fix build when PATH_MAX is not defined POSIX says it _may_ be defined. Alternative implementation follows POSIX.1-2008. 2011-02-13 Greg Hewgill * lib/settings.cpp: astyle formatting 2011-02-13 Greg Hewgill * lib/settings.cpp: use std::stack instead of std::list where appropriate 2011-02-12 Robert Reif * lib/symboldatabase.cpp, test/testclass.cpp: fix #2577 (segmentation fault of cppcheck) 2011-02-12 Daniel Marjamäki * lib/tokenize.cpp, lib/tokenize.h: Tokenizer: comments/refactorings 2011-02-12 Daniel Marjamäki * lib/tokenize.cpp, lib/tokenize.h: Tokenizer::simplifyTemplates: Broke out the functionality that instantiates a template 2011-02-12 Daniel Marjamäki * lib/tokenize.cpp, lib/tokenize.h: Tokenizer::simplifyTemplates: Broke out the functionality that handles default template arguments 2011-02-12 Daniel Marjamäki * lib/tokenize.cpp, lib/tokenize.h: Tokenizer::simplifyTemplates: Broke out the functionality that extract a list of template instantiations 2011-02-12 Daniel Marjamäki * lib/tokenize.cpp, lib/tokenize.h: Tokenizer::simplifyTemplates: broke out the functionality that extract a list of template declarations 2011-02-12 Daniel Marjamäki * lib/tokenize.cpp, lib/tokenize.h: Tokenizer::simplifyTemplates: Broke out handling for 'template<>..' 2011-02-12 Daniel Marjamäki * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #2576 (False positive: (error) Buffer access out-of-bounds) 2011-02-12 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #2549 (segmentation fault of cppcheck) 2011-02-12 Daniel Marjamäki * lib/checkautovariables.h, test/testautovariables.cpp: Fixed #2558 (false positive: (error) Returning reference to auto variable) 2011-02-12 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #2502 (False positive: redundant assingment of object to itself) 2011-02-12 Daniel Marjamäki * test/testuninitvar.cpp: Uninitialized variables: Added TODO test case 2011-02-12 Sébastien Debrard * : commit 318f2e8a5733adb2e863dd229b8102bd6c4e2d06 Author: Daniel Marjamäki Date: Sat Feb 12 11:31:10 2011 +0100 2011-02-12 Raphael Geissert * test/testbufferoverrun.cpp: Fix test for architectures where char is unsigned 2011-02-12 Daniel Marjamäki * lib/tokenize.cpp, lib/tokenize.h: Tokenizer::simplifyKnownVariables: Split up the function into smaller functions. Broke out ..GetData function that extracts info about assigned variable before the simplification is made. 2011-02-12 Daniel Marjamäki * readme.txt: readme: show how cppcheck is compiled with g++ with or without dependencies 2011-02-12 Daniel Marjamäki * Makefile, cli/cli.pro, cli/cmdlineparser.cpp, lib/cppcheck.cpp, tools/dmake.cpp: cppcheck: Added HAVE_DEPENDENCIES define. Cppcheck cli can be compiled without dependencies. 2011-02-11 Robert Reif * lib/tokenize.cpp, lib/tokenize.h, test/testsimplifytokens.cpp: fix #2568 (False positive: (style) Union 'A_t' hides typedef with same name (forward declaration)) 2011-02-11 Sébastien Debrard * lib/checkother.cpp, lib/checkother.h, test/testother.cpp: fix #2569 check postfix increment on boolean 2011-02-11 Reijo Tomperi * runastyle: Add check to runastyle to enforce correct astyle version usage. 2011-02-11 Daniel Marjamäki * lib/tokenize.cpp, lib/tokenize.h: Tokenizer::simplifyKnownVariables: Broke out the simplification into a separate function 2011-02-11 Erik Lax * gui/mainwindow.cpp, gui/mainwindow.h: Fixed: #2572 (GUI: Disable all UI actions on Recheck) 2011-02-11 Erik Lax * gui/resultstree.cpp: Fixed: #2460 (GUI: Errors are sorted by line number alphabetically instead of numerically) 2011-02-11 Daniel Marjamäki * lib/checkclass.cpp, lib/preprocessor.cpp, lib/preprocessor.h, tools/dmake.cpp: astyle formatting 2011-02-11 Erik Lax * test/testbufferoverrun.cpp: Preprocessor: Test handling of strings with multiple spaces (Ticket: #2548) 2011-02-11 Greg Hewgill * lib/preprocessor.cpp, test/testpreprocessor.cpp: Fixed #2571 (Preprocessor: better handling for #undef) 2011-02-11 Greg Hewgill * lib/preprocessor.cpp, test/testpreprocessor.cpp: Fixed #2570 (Preprocessor: #define parsing when there is no whitespace between a macro symbol and its double-quoted string expansion) 2011-02-11 Robert Reif * lib/checkclass.cpp, test/testunusedprivfunc.cpp: fix #2567 Unused private function when implemented in different file 2011-02-11 Erik Lax * lib/preprocessor.cpp, lib/preprocessor.h, test/testpreprocessor.cpp: Fixed #2559 (Refactoring Preprocessor::read) 2011-02-10 Sébastien Debrard * : commit 90bf801c8352a170bb5946e3eb6a39449b669120 Author: Daniel Marjamäki Date: Thu Feb 10 22:10:45 2011 +0100 2011-02-10 Daniel Marjamäki * cli/cppcheck.vcproj, test/test.vcproj: Visual Studio 2008: Updated project files for cli and test 2011-02-10 Daniel Marjamäki * lib/checkbufferoverrun.cpp, lib/checkbufferoverrun.h: CheckBufferOverrun: Refactoring. Broke out checkScope code for parsing 'for' bodies 2011-02-10 Reijo Tomperi * Makefile, cli/cmdlineparser.cpp, lib/lib.pri, test/testcppcheck.cpp, tools/dmake.cpp: Change "tinyxml/tinyxml.h" includes into and modify dmake to work with it. This should allow usage of libtinyxml-dev or such libraries without modifications to code or makefile. 2011-02-10 Sébastien Debrard * : commit 2900d44ff0b5037bb43b14876c7699075b1a122e Author: Robert Reif Date: Thu Feb 10 07:37:55 2011 -0500 2011-02-09 Robert Reif * lib/tokenize.cpp, lib/tokenize.h: Tokenizer: refactor duplicated token copy code info function 2011-02-09 Robert Reif * tools/dmake.cpp: fix dmake.cpp cppcheck message: Include file: ../cli/fileLister_win32.h not found. 2011-02-09 Kimmo Varis * gui/test/main.cpp, gui/test/test.pro, gui/test/testxmlreportv2.cpp, gui/test/testxmlreportv2.h, gui/xmlreportv2.h: GUITEST: Add test reading XML format v2 file. 2011-02-09 Kimmo Varis * gui/test/main.cpp, gui/test/test.pro, gui/test/testxmlreport.cpp, gui/test/testxmlreportv1.cpp, gui/test/testxmlreportv1.h: GUITEST: Add test for reading old format XML report. 2011-02-09 Kimmo Varis * gui/test/testxmlreport.cpp, gui/test/testxmlreport.h, gui/test/xmlfiles/xmlreport_v1.xml, gui/test/xmlfiles/xmlreport_v2.xml: GUITEST: Add test for checking XML report version. 2011-02-09 Sébastien Debrard * : commit 5175e4ff3f04a7a8bb75c020694e262d456cf077 Author: Daniel Marjamäki Date: Wed Feb 9 19:20:44 2011 +0100 2011-02-09 Robert Reif * lib/tokenize.cpp: replace tok->strAt(0) with tok->str() 2011-02-09 Kimmo Varis * gui/test/main.cpp, runastyle, runastyle.bat: Astyle: add option to convert to linux EOLs. 2011-02-08 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #2554 (simplifyTypedef: wrong simplification for sizeof(array)) 2011-02-09 Kimmo Varis * gui/test/main.cpp, gui/test/test.pro, gui/test/testtranslationhandler.cpp, gui/test/testtranslationhandler.h, gui/test/testxmlreport.cpp, gui/test/testxmlreport.h: GUITEST: Add couple of tests for XmlReport. 2011-02-09 Reijo Tomperi * Makefile, tools/dmake.cpp: Change Makefile to allow another external library to be used instead of bundled one. E.g. make TINYXML="-ltinyxml" can be used to compile with libtinyxml-dev instead of externals/tinyxml (but won't compile yet, because of #include "tinyxml/tinyxml.h" in the code). 2011-02-08 Kimmo Varis * gui/test/test.pro, gui/test/testtranslationhandler.cpp, gui/translationhandler.h, runastyle, runastyle.bat: GUITEST: Add first GUI test testing TranslationHandler. 2011-02-08 Reijo Tomperi * readme.txt: Fix readme.txt instructions for g++ compiling 2011-02-08 Sébastien Debrard * : commit 56ae77ba87cb528372daf385f865230b938d2ff0 Author: Daniel Marjamäki Date: Tue Feb 8 20:18:15 2011 +0100 2011-02-08 Erik Lax * lib/checkother.cpp, lib/checkother.h, test/testother.cpp: Fixed #2550 (Bad substr/strncmp comparison) 2011-02-08 Kimmo Varis * gui/mainwindow.cpp, gui/translationhandler.cpp: GUI: Better handling of unknown language loading. If there were unknown language in settings the fallback to English language didn't work as expected. And there were no proper current language set after that. Initialize current language to English so we always have English as proper fallback. 2011-02-09 Greg Hewgill * lib/settings.cpp, man/cppcheck.1.xml, man/manual.docbook, test/testsettings.cpp: support wildcard characters * and ? in suppression list 2011-02-08 Greg Hewgill * lib/settings.cpp, lib/settings.h: factor out file matching into own class 2011-02-08 Greg Hewgill * test/testsettings.cpp: failing test for suppression glob 2011-02-08 Greg Hewgill * test/testpreprocessor.cpp: preprocessor check for #define A 0 2011-02-07 Robert Reif * lib/checkautovariables.cpp, test/testautovariables.cpp: checkautovariables: refactor to use the symbol database 2011-02-07 Daniel Marjamäki * lib/preprocessor.cpp, test/testpreprocessor.cpp: Fixed #2552 (preprocessor check XX is already guaranteed to be defined -- too eager?) 2011-02-07 Kimmo Varis * gui/translationhandler.cpp: GUI: Enable French translation. French translation file was added to the source tree but not added to the code loading translations. 2011-02-07 Kimmo Varis * gui/translationhandler.h: GUI: Add comments for translationhandler.h. 2011-02-07 Kimmo Varis * gui/mainwindow.cpp, gui/mainwindow.h, gui/settingsdialog.cpp, gui/settingsdialog.h, gui/translationhandler.cpp, gui/translationhandler.h: GUI: Store selected language as language code. GUI was storing selected language as index to the languages list. This is fragile since the order and count of items can change. This commit changes to using ISO language code (e.g. "en" for "English"). Fixes ticket #2446 (GUI: Don't use index number for language selection) 2011-02-06 Kimmo Varis * gui/translationhandler.cpp, gui/translationhandler.h: GUI: Refactoring translation handling. Instead of separate language name and filename lists use one list of structs. This makes language name and filename more connected and makes handling of them easier. 2011-02-06 Kimmo Varis * gui/mainwindow.cpp, gui/mainwindow.h: GUI: Remove unneeded translation code. 2011-02-06 Kimmo Varis * gui/translationhandler.cpp: GUI: Sort the languages list. 2011-02-06 Daniel Marjamäki * createrelease: createrelease: updated the instructions 2011-02-06 Daniel Marjamäki * Makefile: Makefile: set debug mode 2011-02-06 Daniel Marjamäki * Makefile: 1.47: Updated Makefile for release 2011-02-06 Daniel Marjamäki * Changelog: 1.47: Updated Changelog 2011-02-06 Daniel Marjamäki * cli/cppcheck.rc, cli/main.cpp, lib/cppcheck.cpp, win_installer/productInfo.wxi: 1.47: Updated versions 2011-02-06 Daniel Marjamäki * man/manual.docbook: manual: updated for 1.47 release 2011-02-06 Daniel Marjamäki * readme.txt: readme: tweaked the 'compiling cppcheck' section 2011-02-06 Zachary Blair * lib/checkexceptionsafety.cpp, lib/checkexceptionsafety.h: Ticket #2388. Added more detail to the 'exceptRethrowCopy' error message. 2011-02-06 Zachary Blair * : commit 2506c7db5cac7a04a143ca2f0d8fecbe0d9c22ba Author: Daniel Marjamäki Date: Sun Feb 6 10:04:28 2011 +0100 2011-02-06 Daniel Marjamäki * lib/tokenize.cpp: Tokenizer: Added a comment about sizeof for struct/class. We always assume that the size is 100 2011-02-05 Kimmo Varis * .gitignore: Add .obj files to gitignore. 2011-02-05 Kimmo Varis * gui/cppcheck_de.ts, gui/cppcheck_en.ts, gui/cppcheck_fi.ts, gui/cppcheck_fr.ts, gui/cppcheck_ja.ts, gui/cppcheck_nl.ts, gui/cppcheck_pl.ts, gui/cppcheck_ru.ts, gui/cppcheck_se.ts, gui/cppcheck_sr.ts: GUI: Update translation files. 2011-02-05 Kimmo Varis * win_installer/config.wxi: Installer: Update CLI build directory. 2011-02-05 Kimmo Varis * win_installer/cppcheck.wxs: Installer: Add French translation to installer. 2011-02-05 Kimmo Varis * gui/gui.pro: GUI: Add French translation to project file. 2011-02-05 Reijo Tomperi * cli/cmdlineparser.cpp: Improve --help listing by removing duplicate options list and using lt and gt characters for option arguments. 2011-02-05 Reijo Tomperi * man/cppcheck.1.xml: Update man page to contain more info about --rule options. 2011-02-05 Reijo Tomperi * man/cppcheck.1.xml: Update man page 2011-02-05 Daniel Marjamäki * cli/cmdlineparser.cpp: Cppcheck: Added short info about --rule and --rule-file to --help output 2011-02-05 Kimmo Varis * gui/cppcheck_de.ts, gui/cppcheck_en.ts, gui/cppcheck_fi.ts, gui/cppcheck_ja.ts, gui/cppcheck_nl.ts, gui/cppcheck_pl.ts, gui/cppcheck_ru.ts, gui/cppcheck_se.ts, gui/cppcheck_sr.ts: GUI: Update translation files. 2011-02-05 Kimmo Varis * gui/xmlreportv2.cpp, gui/xmlreportv2.h: GUI: Fix reading multiple error locations from XML. 2011-02-05 Kimmo Varis * : commit f279fcd351e5331551b34ab0f7c26730eb0af068 Author: Kimmo Varis Date: Sat Feb 5 16:07:59 2011 +0200 2011-02-05 Kimmo Varis * gui/xmlreportv2.cpp, gui/xmlreportv2.h: GUI: Read XML format version 2 files. Implement the parsing of XML format v2 error data. 2011-02-05 Daniel Marjamäki * scripts/tabs.pl, test/testclass.cpp, test/testmathlib.cpp, test/testnullpointer.cpp, test/testuninitvar.cpp: scripts: added tabs.pl - in my opinion it is bad to use tabs inside string constants. spaces or \t should be used instead. 2011-02-05 Kimmo Varis * gui/resultsview.cpp, gui/xmlreport.h, gui/xmlreportv1.cpp, gui/xmlreportv1.h, gui/xmlreportv2.cpp, gui/xmlreportv2.h: GUI: Read ErrorItems instead of ErrorLines from XML report. XML report format 1 only had error "lines" that we promoted to "items" when adding to GUI. XML report format 2 contains error "items" so change the code to read items and do the promotion directly when reading and parsing the data. 2011-02-05 Kimmo Varis * gui/resultsview.cpp, gui/xmlreport.cpp, gui/xmlreport.h, gui/xmlreportv2.cpp, gui/xmlreportv2.h: GUI: Determine the XML report format before reading report. 2011-02-05 Zachary Blair * lib/checkexceptionsafety.cpp, lib/checkexceptionsafety.h, test/testexceptionsafety.cpp: Fixed #2388 (Use throw without argument to rethrow exceptions) 2011-02-05 Robert Reif * lib/tokenize.cpp, test/testtokenize.cpp: Tokenizer: Replace __null with 0 (gcc constant) 2011-02-05 Robert Reif * lib/symboldatabase.cpp, test/testclass.cpp: Fixed #2547 (segmentation fault of cppcheck) 2011-02-05 Sébastien Debrard * : commit c078d804b98d484e242e81683260aed5d2bd94d1 Author: Reijo Tomperi Date: Sat Feb 5 00:40:12 2011 +0200 2011-02-05 Kimmo Varis * gui/xmlreport.cpp, gui/xmlreport.h, gui/xmlreportv1.cpp, gui/xmlreportv2.cpp: GUI: Quote special chars in the XML output. Fixes ticket #2543 (GUI: Xml report does not quote special characters) 2011-02-04 Kimmo Varis * gui/gui.pro, gui/resultsview.cpp, gui/xmlreport.cpp, gui/xmlreport.h, gui/xmlreportv1.cpp, gui/xmlreportv1.h, gui/xmlreportv2.cpp, gui/xmlreportv2.h: GUI: Add base class for XML report classes. A base class is needed for e.g. some common routines that can be shared between the formats. 2011-02-04 Daniel Marjamäki * gui/cppcheck_se.ts: GUI: Updated the swedish translation 2011-02-03 Kimmo Varis * gui/gui.pro, gui/mainwindow.cpp, gui/report.h, gui/resultsview.cpp, gui/xmlreportv2.cpp, gui/xmlreportv2.h: GUI: Write XML version 2. Ticket #2521 (GUI: Add XML format 2 support) 2011-02-04 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #2498 (False positive: redundant assignment) 2011-02-04 Stefan Weil * cli/cmdlineparser.cpp: Add missing \n in CLI help. 2011-02-04 Daniel Marjamäki * lib/checkother.h: Fixed #2531 (False positive: Redudant assignment to itself) 2011-02-04 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #2503 (false positive: memory leak (struct member, address is taken)) 2011-02-04 Robert Reif * lib/symboldatabase.cpp, test/testclass.cpp: Fixed #2539 (segmentation fault of cppcheck) 2011-02-04 Robert Reif * lib/checkmemoryleak.cpp: Fixed #2546 (make CheckMemoryLeakInClass also check structures) 2011-02-04 Daniel Marjamäki * lib/errorlogger.cpp, test/testerrorlogger.cpp: Fixed #2544 (XML output does not specify encoding used) 2011-02-04 Kimmo Varis * lib/checkother.cpp, lib/checkpostfixoperator.cpp, lib/checkstl.cpp: Clarify few verbose messages. Dan pointed out to me earlier that he wants both short- and verbose messages to be independently understandable. So modifying some verbose messages to be easier to understand without the short message. 2011-02-04 Sébastien Debrard * : commit 39c68e12cedec7424f64751398f1d6995e689ffe Author: Daniel Marjamäki Date: Thu Feb 3 22:29:32 2011 +0100 2011-02-03 Daniel Marjamäki * lib/check.h, test/testcppcheck.cpp: astyle formatting 2011-02-03 Tim Gerundt * : commit 53492209fc892557a82bd30d72ec555bc21b44cb Author: Tim Gerundt Date: Thu Feb 3 21:23:03 2011 +0100 2011-02-03 Tim Gerundt * htdocs/devinfo/index.php: Web: Add 'View all commits' link to devinfo page 2011-02-03 Tim Gerundt * htdocs/devinfo/index.php: Web: Add last Trac timeline items to devinfo page 2011-02-03 Tim Gerundt * htdocs/devinfo/index.php: Web: Add RSS link to Trac Timeline 2011-02-03 Kimmo Varis * test/test.vcproj, test/test.vcxproj, test/test.vcxproj.filters: Update VS 2008/2010 project files for tests. 2011-02-03 Kimmo Varis * cli/cmdlineparser.cpp, cli/pathmatch.cpp, test/testcmdlineparser.cpp, test/testpathmatch.cpp: Allow to exclude filenames (with paths). This expands the CLI exclude feature to also allow excluding filenames (with paths). When filename with recognized extension is given to -i option then matching filenames (with paths) are ignored when checking. Ticket #2538 (Allow excluding files from the checking) 2011-02-03 Kimmo Varis * cli/filelister.h, cli/filelister_unix.cpp: Make FileLister::acceptFile() a static method. We don't need different acceptFile() implementations per platform so it is better to have one static method. 2011-02-03 Kimmo Varis * test/testerrorlogger.cpp: Add test for XML format version 2. 2011-02-03 Kimmo Varis * cli/pathmatch.cpp, test/testpathmatch.cpp: Tighten the directory name mathing with -i. Only match full directory names as parts of whole paths. So -isrc matches src/file.cpp and proj/src/file.cpp. But does not match mysrc/file.cpp or proj/srcfiles/file.cpp. 2011-02-03 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #2536 (cppcheck hangs with 100% cpu load) 2011-02-03 Robert Reif * lib/symboldatabase.cpp, lib/symboldatabase.h, test/testclass.cpp: Fixed #2537 (segmentation fault of cppcheck) 2011-02-02 Raphael Geissert * rules/error-reporting.xml, rules/stl.xml: Add a few more rules 2011-02-02 Raphael Geissert * rules/token-matching.xml: Add rules for tokAt(0) and strAt(0), suggested by reif 2011-02-02 Kimmo Varis * test/test.pro: Add testsymboldatabase.cpp to test.pro. Also add comment explaining omitting testfilelister_unix.cpp. 2011-02-02 Raphael Geissert * lib/tokenize.cpp: A few more Token::Match -> ::simpleMatch replacements 2011-02-02 Raphael Geissert * rules/token-matching.xml: Yet another tweak to the regex, use ungreedy mode 2011-02-02 Raphael Geissert * lib/checkbufferoverrun.cpp, lib/checkclass.cpp, lib/checkmemoryleak.cpp, lib/checknullpointer.cpp, lib/checkother.cpp, lib/checkstl.cpp, lib/symboldatabase.cpp, lib/tokenize.cpp: Use Token::simpleMatch where no special patterns are needed 2011-02-02 Raphael Geissert * lib/cppcheck.cpp: Try to match custom rules as many times as possible, not just once 2011-02-02 Raphael Geissert * lib/cppcheck.cpp: Remove uneeded indentation 2011-02-02 Raphael Geissert * lib/checkautovariables.cpp, lib/checkbufferoverrun.cpp, lib/checkclass.cpp, lib/checkmemoryleak.cpp, lib/checknullpointer.cpp, lib/checkother.cpp, lib/checkstl.cpp, lib/executionpath.cpp, lib/preprocessor.cpp, lib/tokenize.cpp: Use Token::simpleMatch where no patterns are used 2011-02-02 Raphael Geissert * lib/checkbufferoverrun.cpp, lib/checkclass.cpp, lib/checkother.cpp, lib/checkstl.cpp, lib/symboldatabase.cpp, lib/tokenize.cpp: Remove useless spacing at the end of *Match strings 2011-02-02 Raphael Geissert * rules/token-matching.xml: Also detect useless spacing at the end of *Match calls 2011-02-02 Raphael Geissert * cli/cmdlineparser.cpp: Support multiple rules in a single XML file 2011-02-02 Raphael Geissert * rules/token-matching.xml: Introduce some rules for checking cppcheck's use of Token::*Match 2011-02-02 Kimmo Varis * : commit d592250284cdf3f1ded17814c29ea4bae06b3126 Author: Raphael Geissert Date: Wed Feb 2 10:56:02 2011 -0600 2011-02-02 Daniel Marjamäki * cli/cppcheckexecutor.cpp, lib/errorlogger.cpp, lib/errorlogger.h, test/testerrorlogger.cpp: xml2: added element 2011-02-02 Daniel Marjamäki * : commit 1a83e3ef8124cffaa43d900dc4c71b79f7772def Author: Kimmo Varis Date: Tue Feb 1 23:02:07 2011 +0200 2011-02-01 Kimmo Varis * cli/pathmatch.cpp: Don't check empty paths for path ignore. 2011-02-01 Kimmo Varis * cli/cppcheck.vcproj, cli/cppcheck.vcxproj, cli/cppcheck.vcxproj.filters, test/test.vcproj, test/test.vcxproj, test/test.vcxproj.filters: Update VS2008/VS2010 project files. 2011-02-01 Kimmo Varis * Makefile, test/testpathmatch.cpp, tools/dmake.cpp: Run dmake to update Makefile. 2011-01-31 Kimmo Varis * cli/cli.pro, cli/cmdlineparser.cpp, cli/cmdlineparser.h, cli/cppcheckexecutor.cpp, cli/pathmatch.cpp, cli/pathmatch.h, test/test.pro, test/testcmdlineparser.cpp, test/testpathmatch.cpp: Add CLI support for ignoring paths. Add support for giving list of ignored paths from CLI. This way user can define paths one doesn't want to check (like generated code). This first simple implementation only does exact matching, no support for wildcards etc. And matching is always agains dir names. If the filtered dir name is part of the checked filename then the file is ignored. Ticket #1690 (Ability to exclude files and directories from checks) 2011-02-02 Kimmo Varis * cli/cmdlineparser.cpp, test/testcmdlineparser.cpp: Imrove --xml-version option parsing. Allow --xml-version parsing to recognize also version 1 and print errors about invalid values. 2011-02-02 Kimmo Varis * test/testcmdlineparser.cpp: Add couple of tests for xml-version cmd line option. 2011-02-02 Kimmo Varis * cli/cmdlineparser.cpp: Expose --xml-version=version cmd line option. Make the --xml-version=version command line option public by adding it to the command line help. 2011-02-02 Greg Hewgill * lib/check.h: use instances of less to compare pointers for list::sort() 2011-02-02 Greg Hewgill * lib/check.h, lib/checkautovariables.h, lib/checkbufferoverrun.h, lib/checkclass.cpp, lib/checkclass.h, lib/checkexceptionsafety.h, lib/checkmemoryleak.h, lib/checknullpointer.h, lib/checkobsoletefunctions.h, lib/checkother.h, lib/checkpostfixoperator.h, lib/checkstl.h, lib/checkuninitvar.h, lib/checkunusedfunctions.h: initialise Check::_name in constructor rather than relying on virtual Check::name() 2011-02-02 Greg Hewgill * test/testcppcheck.cpp: test case to check whether instances are sorted 2011-02-02 Robert Reif * lib/tokenize.cpp, lib/tokenize.h, test/testsimplifytokens.cpp: Fixed #2530 (Tokenizer: Remove redundant 'MyClass::' inside MyClass class declaration) 2011-02-02 Sébastien Debrard * : commit defeded4b56eb272aa96db1475754a1895724dbe Author: Daniel Marjamäki Date: Tue Feb 1 21:46:07 2011 +0100 2011-02-01 Tim Gerundt * .gitignore: Drop htdocs/ from gitignore 2011-02-01 Tim Gerundt * readme.txt: Switch website URL in readme.txt 2011-02-01 Tim Gerundt * : commit 015fa92b4a98590692c9fefbaf9a7b7df2b5ecd2 Merge: 606a90a b7494d5 Author: Sébastien Debrard Date: Tue Feb 1 19:30:00 2011 +0100 2011-02-01 Tim Gerundt * : commit c2de1a8a52d21a37ee49ecf21be16abc9b3c0f09 Author: Kimmo Varis Date: Mon Jan 31 22:49:52 2011 +0200 2011-02-01 Pete Johns * cli/filelister_win32.cpp: Astyle formatting. 2011-02-01 Pete Johns * test/testother.cpp: Turned failing ASSERT_EQUALS into TODO_ASSERT_EQUALS. 2011-02-01 Pete Johns * : Merge https://github.com/ghewgill/cppcheck 2011-01-31 Sébastien Debrard * : commit 3e558fdada3b42c1af4deeafe4eea04d7e2c14ad Author: Sébastien Debrard Date: Mon Jan 31 23:51:13 2011 +0100 2011-01-31 Robert Reif * cppcheck.cppcheck, gui/gui.cppcheck: Ticket #2522 (update project files to fix missing include messages) 2011-02-01 Greg Hewgill * test/testother.cpp: check that misused scope object does not pick nested class 2011-01-31 Daniel Marjamäki * lib/checknullpointer.cpp, test/testnullpointer.cpp: Fixed #2525 (False positive 'Possible null pointer dereference') 2011-01-31 Daniel Marjamäki * cli/filelister_win32.cpp, test/testbufferoverrun.cpp, test/testpreprocessor.cpp: astyle formatting 2011-01-31 Ettl Martin * : commit f3111b541ee117c09bafd62f8333718e5ddf5bd8 Author: Ettl Martin Date: Mon Jan 31 13:46:51 2011 +0100 2011-01-31 Kimmo Varis * gui/cppcheck_de.ts, gui/cppcheck_en.ts, gui/cppcheck_fi.ts, gui/cppcheck_ja.ts, gui/cppcheck_nl.ts, gui/cppcheck_pl.ts, gui/cppcheck_ru.ts, gui/cppcheck_se.ts, gui/cppcheck_sr.ts: GUI: Update translation files. 2011-01-31 Kimmo Varis * gui/settings.ui: GUI: Reword the option for checking all #ifdefs. The current wording was confusing (espcially related to CLI) since it said the option will make Cppcheck to check all #ifdef configs. But this really is case only when there is excessive amount of those configs and without the option some would be ignored. So format the option text in line of CLI switch and say it is forcing not enabling checking of all configurations. 2011-01-31 Kimmo Varis * gui/csvreport.cpp, gui/txtreport.cpp: GUI: Write error summary to CSV and TXT reports. It makes more sense to write the one-line summary to TXT and especially to CSV reports. Long multi-line verbose messages ruin the layout these files. 2011-01-31 Kimmo Varis * gui/xmlreport.cpp: GUI: Fill summary data when reading XML file. When reading XML file there is no summary data stored so we must dublicate the message data to summary. Since message can be long try to find full stop from the message and cut summary to it. Ticket: #2402 ([GUI] Summary is not shown for loaded .xml file) 2011-01-31 Kimmo Varis * Makefile, tools/dmake.cpp: Cleanup makefile a bit. Align object file lists first line. Remove excessive use of tabs. 2011-01-30 Raphael Geissert * lib/preprocessor.cpp: Formatting, sorry 2011-01-30 Raphael Geissert * lib/preprocessor.cpp: Minor optimisations to the preprocessor 2011-01-30 Raphael Geissert * lib/preprocessor.cpp: Reduce std::string::find() abuse 2011-01-30 Raphael Geissert * lib/preprocessor.cpp, test/testpreprocessor.cpp: Handle "#endif !defined" conditionals 2011-01-30 Raphael Geissert * lib/preprocessor.cpp, test/testpreprocessor.cpp: Check for cpp conditionals where a define is already guaranteed 2011-01-30 Sébastien Debrard * : commit 098f0bf3e659436eedae2655d78eb1867576f728 Author: Pete Johns Date: Sun Jan 30 22:54:19 2011 +1100 2011-01-30 Pete Johns * cli/filelister_win32.cpp: astyle formatting. 2011-01-30 Raphael Geissert * lib/checknullpointer.cpp: Detect null pointer dereferences for many FILE-related functions Ticket #1415: check for calling f{eof,read,close,...} with NULL 2011-01-30 Raphael Geissert * lib/preprocessor.cpp, test/testpreprocessor.cpp: Remove duplicated defines After simplifying define(A) conditionals, the final list of configurations could end up containing duplicate items. Ticket #1468 2011-01-30 Robert Reif * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Memory leaks: less conservative checking of classes. ticket: #2517 2011-01-30 Daniel Marjamäki * lib/tokenize.cpp, lib/tokenize.h, test/testtokenize.cpp: Tokenizer: remove some unhandled macros in the global scope. ticket: #2523 2011-01-29 Sébastien Debrard * : commit 0624e418f108835da1c2d243b451438a1497ba06 Author: Daniel Marjamäki Date: Sat Jan 29 18:46:55 2011 +0100 2011-01-29 Kimmo Varis * test/testcmdlineparser.cpp: Several fixes to cmd line tests. There were several tests handling two parameters as one string. Eg. "-I path" which doesn't work correctly. Fixed these problematic tests. 2011-01-29 Kimmo Varis * cli/cmdlineparser.cpp, test/testcmdlineparser.cpp: Make --exitcode-suppressions option consistent. The --exitcode-suppressions option was inconsistent with other long options by taking the filename as separate argument. Now it expects format --exitcode-suppressions=filename.txt like other long options. Ticket: #1837 (--suppresions file.txt inconsistent) 2011-01-29 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Tokenizer: Better simplifications of static constants 2011-01-28 Sébastien Debrard * : commit 081e3642980aa7809976fddb7ef1a45ea9bf49d4 Author: Kimmo Varis Date: Fri Jan 28 13:18:07 2011 +0200 2011-01-28 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #2505 (Check processing of a preprocessor macro 'FREE') 2011-01-28 Robert Reif * lib/symboldatabase.cpp, lib/symboldatabase.h, test/testsymboldatabase.cpp: Symbol database: better unit testing. ticket: #2468 2011-01-28 Kimmo Varis * cli/cmdlineparser.cpp: Add --errorlist to CLI help. Fixes ticket #2253 (Make CLI error listing documented and public switch) 2011-01-27 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #2518 (Crash when checking rockbox's firmwire) 2011-01-27 Sébastien Debrard * : commit 524498e439b988e1c13a917b4ff59f5a6b797324 Author: Daniel Marjamäki Date: Thu Jan 27 18:44:20 2011 +0100 2011-01-27 Kimmo Varis * test/testcmdlineparser.cpp: Add cmd line parser tests for XML ver 2 options. 2011-01-27 Kimmo Varis * gui/aboutdialog.cpp: GUI: Update homepage URL to About-dialog. 2011-01-27 Kimmo Varis * cli/cmdlineparser.cpp, cli/cppcheckexecutor.cpp, test/testcmdlineparser.cpp: Don't stop processing cmd line after --errorlist. Ticket #2441 (Parsing of command line arguments breaks after --errorlist) Instead of stopping processing command line options after --errorlist process them all. This way e.g. --verbose can be given also after the --errorlist. 2011-01-27 Kimmo Varis * cli/cmdlineparser.cpp, cli/cmdlineparser.h, cli/cppcheckexecutor.cpp: Don't print "files not found" after showing help. Fix ticket #2496 (Is error reporting for an unneeded parameter wrong?) There are several command line options / commands after which we don't want Cppcheck to even try to open any files. Eg. printing help or listing errors. So add new attribute for CmdLineParser to track use of these options and exit before checking files when the attribute is set. 2011-01-27 Kimmo Varis * gui/erroritem.cpp: Fix formatting of debug messages to log view. Ticket #2513 (GUI: Garbage printed to log after missing include warning) The linenumber was not properly converted to the QString so there were garbage printed to the log. 2011-01-26 Kimmo Varis * gui/mainwindow.cpp: GUI: Enable warnings about missing include files. 2011-01-26 Sébastien Debrard * : commit 078c36921da4c650f0cb4f1edc7e6a56e7126d33 Author: Sébastien Debrard Date: Wed Jan 26 20:10:56 2011 +0100 2011-01-26 Sébastien Debrard * lib/checkother.cpp, test/testother.cpp: fix #2510 Improve check 'sizeof for array given as function argument' 2011-01-26 Sébastien Debrard * lib/checkother.cpp: typo: message 2011-01-25 Tim Gerundt * htdocs/index.php, htdocs/site/css/all.css: Web: Add "Download Now!" link 2011-01-25 Sébastien Debrard * : commit 4cf56dac2b421a2034fe37618fbf81a6f5e903b7 Author: Sébastien Debrard Date: Tue Jan 25 09:57:58 2011 +0100 2011-01-24 Sébastien Debrard * : commit a596a7a8fe656314ae3686d81894cfd26419ba14 Author: Daniel Marjamäki Date: Mon Jan 24 21:40:49 2011 +0100 2011-01-24 Sébastien Debrard * : commit c7b8bd543f885bb90838ccd4f86c32cc315a7d03 Author: Sébastien Debrard Date: Mon Jan 24 19:04:56 2011 +0100 2011-01-24 Daniel Marjamäki * cli/cmdlineparser.cpp: cleanup old ifdefs in cmdlineparser 2011-01-23 Sébastien Debrard * : commit 5b5e8ca5182bb34c7b3d4933fd9e515b0e5e07f8 Author: Sébastien Debrard Date: Sun Jan 23 23:09:31 2011 +0100 2011-01-23 Robert Reif * lib/symboldatabase.cpp: Symbol database: better handling of functions returning function pointer. ticket: #2468 2011-01-23 Sébastien Debrard * : commit 86ba9dc908352839af581b1d4db1ef349efd5b2d Author: Sébastien Debrard Date: Sun Jan 23 16:32:33 2011 +0100 2011-01-23 Daniel Marjamäki * test/testuninitvar.cpp: when using TODO_ASSERT_EQUALS it's a good idea to pair it with a ASSERT_EQUALS 2011-01-23 Daniel Marjamäki * lib/tokenize.cpp: Tokenizer: Upon createLinks error, report error and bailout 2011-01-23 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #2376 (simplifyTypedef: upx-ucl) 2011-01-23 Robert Reif * lib/symboldatabase.cpp: Symbol database: fixed corruptions. ticket: #2468 2011-01-23 Daniel Marjamäki * lib/checknullpointer.cpp, test/testnullpointer.cpp: Fixed #2493 (false positive: (error) Possible null pointer dereference: pExpr) 2011-01-23 Sébastien Debrard * : commit b5cd37e822966c9bed7ff2fdedc8e0ce1ea0d268 Author: Sébastien Debrard Date: Sun Jan 23 03:37:38 2011 +0100 2011-01-22 Daniel Marjamäki * lib/checkbufferoverrun.cpp, lib/checkbufferoverrun.h, test/testbufferoverrun.cpp: Fixed #1952 (false negative: buffer acces out of bounds with memcpy) 2011-01-22 Debrard Sébastien * lib/checkother.cpp, lib/checkother.h, test/testother.cpp: Fixed #155 (check size of a variable whose type is a sized array) 2011-01-22 Sébastien Debrard * : commit 0984d556352b0e45d1464e7e9da283c6482ea997 Author: Tim Gerundt Date: Sat Jan 22 18:05:42 2011 +0100 2011-01-22 Sébastien Debrard * : commit 8abae6f1e52283454ecebf009811bd77d1943f35 Author: Robert Reif Date: Sat Jan 22 17:43:36 2011 +0100 2011-01-22 Daniel Marjamäki * lib/checkclass.cpp: Class: better check if there are friends. ticket: #2459 2011-01-22 Sébastien Debrard * : commit 000e03c85dba722844c8f4275565584cad212a96 Author: Sébastien Debrard Date: Sat Jan 22 14:06:02 2011 +0100 2011-01-22 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #2492 (False positive: memory leak 'return &self->foo;') 2011-01-22 Daniel Marjamäki * lib/checkclass.cpp, test/testunusedprivfunc.cpp: Fixed #2459 (False positive with unused private function and friend) 2011-01-22 Daniel Marjamäki * lib/tokenize.cpp: Fixed #2484 (false positive because template is not instantiated properly) 2011-01-22 Sébastien Debrard * lib/checkother.cpp, test/testother.cpp: ticket 155 2011-01-22 Sébastien Debrard * : commit bc31f317bca078d3025b331b7b109ec160ba6b66 Author: Daniel Marjamäki Date: Sat Jan 22 09:27:16 2011 +0100 2011-01-22 Robert Reif * lib/symboldatabase.cpp: Symbol database: Fixed memory leak. ticket: #2468 2011-01-22 Robert Reif * lib/tokenize.cpp: Tokenizer: Only create 1 symbol database. ticket: #2468 2011-01-22 Sébastien Debrard * : commit a83aced2ec9c97b571b34f64c487343fc0fee96e Author: Ettl Martin Date: Fri Jan 21 23:48:42 2011 +0100 2011-01-21 Daniel Marjamäki * Makefile, tools/dmake.cpp: dmake and Makefile updates 2011-01-21 Sébastien Debrard * lib/checkother.cpp, lib/checkother.h, test/testother.cpp: ticket 155 2011-01-21 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: Fixed #2478 (Crash when trying to analyze files (CheckClass::checkReturnPtrThis)) 2011-01-21 Sébastien Debrard * : commit bcfc751056e03574da70c84c8cc7a3fec46afd17 Author: Sébastien Debrard Date: Fri Jan 21 19:50:59 2011 +0100 2011-01-21 Daniel Marjamäki * Makefile: Makefile: updated with dmake 2011-01-21 Robert Reif * lib/checkclass.cpp, lib/checkmemoryleak.cpp, lib/checkother.cpp, lib/symboldatabase.cpp, lib/symboldatabase.h, lib/tokenize.cpp: Symbol database: rename variables. ticket: #2468 2011-01-20 Daniel Marjamäki * lib/checkstl.cpp, test/teststl.cpp: Fixed #2488 (false positive with updating iterator in a for loop) 2011-01-20 Daniel Marjamäki * cli/cmdlineparser.cpp: CLI: updated help text for --inline-suppr. Thanks rubicon_hdr for the suggestion 2011-01-20 Daniel Marjamäki * lib/checkstl.cpp, test/teststl.cpp: Fixed #2481 (false positive with break: After insert, the iterator '*' may be invalid) 2011-01-20 Robert Reif * lib/symboldatabase.cpp: Symbol database: refactoring of classAndStructTypes parsing. ticket: #2468 2011-01-19 Daniel Marjamäki * lib/checkstl.cpp, test/teststl.cpp: Fixed #2481 (false positive with 'break;': After insert, the iterator '*' may be invalid) 2011-01-19 Daniel Marjamäki * test/testincompletestatement.cpp: added unit test for #2482 2011-01-19 Daniel Marjamäki * lib/checkother.cpp, test/testincompletestatement.cpp: Fixed #2462 (false positive: (warning) Redundant code: Found a statement that begins with numeric constant) 2011-01-19 Pete Johns * lib/checkclass.cpp, test/testunusedprivfunc.cpp: Fixed #2480 (false positive on unused private function) 2011-01-19 Daniel Marjamäki * lib/symboldatabase.h: Fixed #2483 (SymbolDatabase compiler warning (VS2008/VS2010)) 2011-01-18 Kimmo Varis * cli/cppcheck.vcproj, cli/cppcheck.vcxproj, cli/cppcheck.vcxproj.filters, test/test.vcproj, test/test.vcxproj, test/test.vcxproj.filters: Update Visual Studio project files. Update Visual Studio 2008/2010 project files after moving filelister* files from lib/ to cli/. 2011-01-18 Kimmo Varis * Makefile, cli/cli.pro, cli/filelister.cpp, cli/filelister.h, cli/filelister_unix.cpp, cli/filelister_unix.h, cli/filelister_win32.cpp, cli/filelister_win32.h, lib/cppcheck.cpp, lib/filelister.cpp, lib/filelister.h, lib/filelister_unix.cpp, lib/filelister_unix.h, lib/filelister_win32.cpp, lib/filelister_win32.h, lib/lib.pri, lib/tokenize.cpp, test/test.pro, tools/Makefile, tools/dmake.cpp: Move filelister* to cli. Ticket #2445 (Move FileLister classes from LIB to CLI). 2011-01-18 Kimmo Varis * lib/filelister.h, lib/filelister_unix.cpp, lib/filelister_unix.h, lib/filelister_win32.cpp, lib/filelister_win32.h, lib/path.cpp, lib/path.h, lib/tokenize.cpp: Move sameFileName() method to Path class. Ticket #2445 (Move FileLister classes from LIB to CLI). Moving sameFileName() to Path allows moving FileLister* classes to CLI. 2011-01-18 Pete Johns * test/testunusedprivfunc.cpp: Added testDoesNotIdentifyCallback for #2480 TODO 2011-01-18 Pete Johns * : commit ea01c04108052921e29b81b84b6497c8670f2107 Author: Pete Johns Date: Tue Jan 18 21:07:33 2011 +1100 2011-01-18 Pete Johns * lib/symboldatabase.cpp: Refactored to remove code duplication. 2011-01-18 Pete Johns * lib/symboldatabase.cpp, test/testsymboldatabase.cpp: Made isVariableDeclarationIdentifiesTemplatedPointerToPointerVariable() pass. And added isVariableDeclarationIdentifiesTemplatedArrayVariable() (passing) into the bargain. 2011-01-18 Pete Johns * test/testsymboldatabase.cpp: Added TODO test cases for template variables with multiple levels of pointer indirection Following email from Robert Reif 2011-01-18 Robert Reif * lib/checkclass.cpp, lib/checkclass.h, test/testconstructors.cpp: Fixed #2474 (false positive: Member variable 'A::m_SemVar' is not initialised in the constructor.) 2011-01-18 Robert Reif * lib/checkclass.cpp, lib/checkmemoryleak.cpp, lib/symboldatabase.cpp, lib/symboldatabase.h: Symbol database: Refactor the variables API. ticket: #2468 2011-01-17 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #2475 (False positive in structure initialisation: The scope of the variable bits can be reduced) 2011-01-17 Kimmo Varis * cli/cmdlineparser.cpp, test/testcmdlineparser.cpp: Improve checking -D arguments for command line. 2011-01-17 Kimmo Varis * cli/cmdlineparser.cpp, test/testcmdlineparser.cpp: Fix crash when giving -D without argument. Fixes ticket #2476 (Crash when -D used without parameters.) 2011-01-17 Daniel Marjamäki * lib/checknullpointer.cpp, lib/checknullpointer.h, lib/checkuninitvar.cpp, test/testnullpointer.cpp: Fixed #2467 (false positive: possible nullptr dereference) 2011-01-17 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #2473 (False positive: Memory leak when there is local struct) 2011-01-17 Robert Reif * lib/checkclass.cpp, lib/checkclass.h, lib/checkmemoryleak.cpp, lib/checkmemoryleak.h, lib/checkother.cpp, lib/symboldatabase.cpp, lib/symboldatabase.h, lib/tokenize.cpp, test/testsymboldatabase.cpp: Symbol database: renamed classes. ticket: #2468 2011-01-17 Robert Reif * lib/checkclass.cpp, lib/checkclass.h, lib/checkmemoryleak.cpp, lib/checkmemoryleak.h, lib/checkother.cpp, lib/symboldatabase.cpp, lib/symboldatabase.h, lib/tokenize.cpp, test/testsymboldatabase.cpp: Symbol database: pulled out classes into global scope. ticket: #2468 2011-01-16 Zachary Blair * lib/checkother.cpp: Fixed #2457 (CheckOther::checkIncorrectLogicOperator: hang if variable id is 0) 2011-01-17 Pete Johns * lib/preprocessor.cpp: Fixed gcc warning. 2011-01-02 Pete Johns * lib/symboldatabase.cpp, lib/symboldatabase.h, test/testsymboldatabase.cpp: isVariableDeclaration() now detects template variables. 2011-01-01 Pete Johns * lib/symboldatabase.cpp, lib/symboldatabase.h, test/testclass.cpp, test/testsymboldatabase.cpp: Moved array declaration detection into isVariableDeclaration() 2011-01-16 Daniel Marjamäki * lib/checkautovariables.cpp, lib/checkother.cpp, lib/symboldatabase.cpp, lib/symboldatabase.h: Refactoring: Check if type is class/struct through symbol database 2011-01-16 Daniel Marjamäki * lib/checkother.cpp, test/testcppcheck.cpp: Fixed #2302 (Duplicate id 'unusedVariable') 2011-01-16 Robert Reif * lib/checkclass.cpp, lib/checkclass.h, lib/checkmemoryleak.cpp, lib/checkmemoryleak.h, lib/checkother.cpp, lib/tokenize.cpp, lib/tokenize.h: Symbol database: increased constness. ticket: #2468 2011-01-16 Daniel Marjamäki * cli/cppcheckexecutor.cpp, cli/cppcheckexecutor.h, lib/cppcheck.cpp: cppcheck: output errorlist to stdout 2011-01-16 Daniel Marjamäki * test/testcppcheck.cpp: testcppcheck: check that Cppcheck::getErrorMessages output is not empty 2011-01-16 Daniel Marjamäki * test/testcppcheck.cpp: testcppcheck: test Cppcheck::getErrorMessages 2011-01-16 Daniel Marjamäki * test/testcppcheck.cpp: testcppcheck: cleanup 2011-01-16 Robert Reif * lib/checkclass.cpp, lib/checkclass.h, lib/symboldatabase.cpp, lib/symboldatabase.h: Symbol database: Refactorings. Move check-specific code to check. Ticket: #2468 2011-01-16 Daniel Marjamäki * test/testcppcheck.cpp: testcppcheck: removed 'parseArgsAndCheck' and 'parseOutputtingArgs'. Such tests belong to testcmdlineparser 2011-01-16 Daniel Marjamäki * test/testcppcheck.cpp: testcppcheck: removed nonexistingpath and include tests. The Cppcheck class doesn't handle this. 2011-01-16 Daniel Marjamäki * test/testcppcheck.cpp: testcppcheck: the xml and template output is tested in testerrorlogger instead 2011-01-16 Daniel Marjamäki * test/testcppcheck.cpp: testcppcheck: the testcmdlineparser tests invalid command line arguments 2011-01-16 Daniel Marjamäki * test/testcppcheck.cpp: testcppcheck: linenumbers are tested in the other tests 2011-01-16 Daniel Marjamäki * test/testcppcheck.cpp: testcppcheck: command line parsing of -D is tested in testcmdlineparser.cpp 2011-01-16 Daniel Marjamäki * test/testcppcheck.cpp: testcppcheck: parsing templates is tested in testcmdlineparser.cpp 2011-01-16 Tim Gerundt * htdocs/devinfo/index.php, htdocs/site/js/github.js: Web: Add recent commits to devinfo page 2011-01-16 Daniel Marjamäki * lib/checkclass.cpp, test/testunusedprivfunc.cpp: Fixed #2407 (False positive: unused private function) 2011-01-16 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #2449 (segfault in tokenize.cpp, incorrect parsing) 2011-01-16 Raphael Geissert * lib/tokenize.cpp, test/testsimplifytokens.cpp: Tokenizer: simplify restrict 2011-01-16 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #980 (false negative: division by zero when using enum) 2011-01-16 Robert Reif * lib/checkclass.cpp, lib/checkclass.h, lib/symboldatabase.cpp, lib/symboldatabase.h, test/testclass.cpp: Symbol database: Refactorings 2011-01-16 Daniel Marjamäki * lib/checkmemoryleak.cpp: astyle formatting 2011-01-16 Daniel Marjamäki * lib/checkmemoryleak.cpp: Memory leaks: Optimised and refactored 2011-01-15 Daniel Marjamäki * lib/checkstl.cpp: STL: Optimised checking 2011-01-15 Daniel Marjamäki * lib/checkother.cpp: fixed unit test 2011-01-15 Daniel Marjamäki * lib/checkother.cpp, lib/checkother.h: Optimising: about 5% improvement with Visual Studio executable 2011-01-15 Daniel Marjamäki * lib/checknullpointer.cpp, test/testnullpointer.cpp: Fixed #2463 (false positive: possible nullpointer dereference) 2011-01-15 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #2454 (Tokenizer::simplifyKnownVariables: problem with float/double variables) 2011-01-15 Daniel Marjamäki * test/testtokenize.cpp: removed old comment 2011-01-15 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #2466 (Tokenizer: simplification of enum) 2011-01-15 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #2464 (False positive: not initialised/not assigned Static variable in copy constructors.) 2011-01-15 Robert Reif * lib/symboldatabase.cpp, lib/symboldatabase.h, test/testclass.cpp: Fixed #2465 (False positive: not initialised variable, but there is default constructor for it.) 2011-01-14 Tim Gerundt * htdocs/index.php, htdocs/site/css/all.css, htdocs/site/simplepie/LICENSE.txt, htdocs/site/simplepie/README.txt, htdocs/site/simplepie/cache/dummy.txt, htdocs/site/simplepie/simplepie.inc: Web: Add News to homepage 2011-01-14 Daniel Marjamäki * lib/checkstl.cpp, test/teststl.cpp: Fixed #2451 (False positive when incrementing map value via iterator) 2011-01-14 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #2452 (syntax error when 'void f(typedef int x)' is used. causes segmentation fault.) 2011-01-13 Kimmo Varis * gui/settingsdialog.cpp: GUI: Fix compiler warning from GCC. Thanks for vBm for reporting this! 2011-01-13 Kimmo Varis * lib/cppcheck.h: Fix doxgen comment. 2011-01-13 Kimmo Varis * cli/cmdlineparser.cpp, cli/cppcheckexecutor.cpp: Add couple of missing path separator conversions. 2011-01-13 Kimmo Varis * lib/cppcheck.cpp, lib/cppcheck.h: Modify Cppcheck::addFile() only take one file as a parameter. CLI and GUI already do the directory walking for us and we have list of files to check. So we were duplicating this directory walking. Practically doing check again for each file if it is a directory. Which can take some time with large amount of files. 2011-01-13 Daniel Marjamäki * lib/checkstl.cpp, test/teststl.cpp: Fixed #2450 (False positive when iterator reused) 2011-01-13 Daniel Marjamäki * lib/checkother.cpp, test/testincompletestatement.cpp: Fixed #2458 (false positive: (warning) Redundant code: Found a statement that begins with numeric constant) 2011-01-12 Zachary Blair * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #2434 (FP memleakOnRealloc) 2011-01-11 Daniel Marjamäki * lib/checkmemoryleak.cpp, lib/checkmemoryleak.h, test/testmemleak.cpp: Fixed #2440 (False negative: basic memory leak) 2011-01-11 Kimmo Varis * cli/cmdlineparser.cpp, cli/cppcheckexecutor.cpp, lib/preprocessor.cpp, test/testcmdlineparser.cpp: Accept include paths ending with backslash. Convert include path to use internal path separators when parsing command line. Convert back to native separators when using paths. Ticket #2448 (Error in handling -I command line parameter) 2011-01-11 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #2296 (Tokenizer: simplifyKnownVariable doesn't simplify pointer properly 'delete [] p;') 2011-01-11 Tim Gerundt * htdocs/devinfo/index.php: Web: Add Atom link to Recent Commits to cppcheck:master 2011-01-10 Daniel Marjamäki * scripts/define.pl: scripts: Added define.pl that warns if #define is used. Related with ticket #689 2011-01-10 Daniel Marjamäki * htdocs/build.bat: removed unused htdocs/build.bat 2011-01-10 Daniel Marjamäki * lib/checknullpointer.cpp, test/testnullpointer.cpp: Fixed #2443 (Possible null pointer dereference: xxx - otherwise it is redundant to check if xxx is null at line) 2011-01-10 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #2442 (False positive: Memory leak when function returns in 'if' instead of 'else if') 2011-01-10 Kimmo Varis * gui/cppcheck_de.ts, gui/cppcheck_en.ts, gui/cppcheck_fi.ts, gui/cppcheck_ja.ts, gui/cppcheck_nl.ts, gui/cppcheck_pl.ts, gui/cppcheck_ru.ts, gui/cppcheck_se.ts, gui/cppcheck_sr.ts: GUI: Update translation files. 2011-01-10 Kimmo Varis * gui/main.ui, gui/mainwindow.cpp, gui/mainwindow.h: GUI: Remove Language-menu. We now have language selection in Settings-dialog. 2011-01-10 Kimmo Varis * gui/mainwindow.cpp, gui/settings.ui, gui/settingsdialog.cpp, gui/settingsdialog.h, gui/translationhandler.cpp: GUI: Add language selection panel to settings-dialog. Settings-dialog is more natural place for language selection than the main menu. We also have more space and freedom there to have longer text etc to make the selection easier (menus are quite limited controls). 2011-01-09 Reijo Tomperi * cli/cmdlineparser.cpp, cli/cmdlineparser.h, cli/cppcheckexecutor.cpp, cli/cppcheckexecutor.h, cli/main.cpp, cli/threadexecutor.cpp, cli/threadexecutor.h, gui/aboutdialog.cpp, gui/aboutdialog.h, gui/applicationdialog.cpp, gui/applicationdialog.h, gui/applicationlist.cpp, gui/applicationlist.h, gui/checkstatistics.cpp, gui/checkstatistics.h, gui/checkthread.cpp, gui/checkthread.h, gui/common.h, gui/csvreport.cpp, gui/csvreport.h, gui/erroritem.cpp, gui/erroritem.h, gui/filelist.cpp, gui/filelist.h, gui/fileviewdialog.cpp, gui/fileviewdialog.h, gui/helpwindow.cpp, gui/helpwindow.h, gui/logview.cpp, gui/logview.h, gui/main.cpp, gui/mainwindow.cpp, gui/mainwindow.h, gui/project.cpp, gui/project.h, gui/projectfile.cpp, gui/projectfile.h, gui/projectfiledialog.cpp, gui/projectfiledialog.h, gui/report.cpp, gui/report.h, gui/resultstree.cpp, gui/resultstree.h, gui/resultsview.cpp, gui/resultsview.h, gui/settingsdialog.cpp, gui/settingsdialog.h, gui/statsdialog.cpp, gui/statsdialog.h, gui/threadhandler.cpp, gui/threadhandler.h, gui/threadresult.cpp, gui/threadresult.h, gui/translationhandler.cpp, gui/translationhandler.h, gui/txtreport.cpp, gui/txtreport.h, gui/xmlreport.cpp, gui/xmlreport.h, lib/check.h, lib/checkautovariables.cpp, lib/checkautovariables.h, lib/checkbufferoverrun.cpp, lib/checkbufferoverrun.h, lib/checkclass.cpp, lib/checkclass.h, lib/checkexceptionsafety.cpp, lib/checkexceptionsafety.h, lib/checkmemoryleak.cpp, lib/checkmemoryleak.h, lib/checknullpointer.cpp, lib/checknullpointer.h, lib/checkobsoletefunctions.cpp, lib/checkobsoletefunctions.h, lib/checkother.cpp, lib/checkother.h, lib/checkpostfixoperator.cpp, lib/checkpostfixoperator.h, lib/checkstl.cpp, lib/checkstl.h, lib/checkuninitvar.cpp, lib/checkuninitvar.h, lib/checkunusedfunctions.cpp, lib/checkunusedfunctions.h, lib/cppcheck.cpp, lib/cppcheck.h, lib/errorlogger.cpp, lib/errorlogger.h, lib/executionpath.cpp, lib/executionpath.h, lib/filelister.cpp, lib/filelister.h, lib/filelister_unix.cpp, lib/filelister_unix.h, lib/filelister_win32.cpp, lib/filelister_win32.h, lib/mathlib.cpp, lib/mathlib.h, lib/path.cpp, lib/path.h, lib/preprocessor.cpp, lib/preprocessor.h, lib/settings.cpp, lib/settings.h, lib/symboldatabase.cpp, lib/symboldatabase.h, lib/timer.cpp, lib/timer.h, lib/token.cpp, lib/token.h, lib/tokenize.cpp, lib/tokenize.h, man/cppcheck.1.xml, test/testautovariables.cpp, test/testbufferoverrun.cpp, test/testcharvar.cpp, test/testclass.cpp, test/testcmdlineparser.cpp, test/testconstructors.cpp, test/testcppcheck.cpp, test/testdivision.cpp, test/testerrorlogger.cpp, test/testexceptionsafety.cpp, test/testfilelister_unix.cpp, test/testincompletestatement.cpp, test/testmathlib.cpp, test/testmemleak.cpp, test/testnullpointer.cpp, test/testobsoletefunctions.cpp, test/testother.cpp, test/testpath.cpp, test/testpostfixoperator.cpp, test/testpreprocessor.cpp, test/testrunner.cpp, test/testsettings.cpp, test/testsimplifytokens.cpp, test/teststl.cpp, test/testsuite.cpp, test/testsuite.h, test/testsymboldatabase.cpp, test/testthreadexecutor.cpp, test/testtoken.cpp, test/testtokenize.cpp, test/testuninitvar.cpp, test/testunusedfunctions.cpp, test/testunusedprivfunc.cpp, test/testunusedvar.cpp, test/testutils.h, tools/dmake.cpp: Change year 2010 -> 2011 in license texts. 2011-01-09 Daniel Marjamäki * lib/checknullpointer.cpp, test/testnullpointer.cpp: Fixed #1219 (improve check: null pointer not detected 'if (p) return; *p = 0;') 2011-01-09 Daniel Marjamäki * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #2211 (false negative: buffer access out of bounds for(int i=0; i !=6;i++)) 2011-01-09 Daniel Marjamäki * test/testtokenize.cpp: astyle formatting 2011-01-09 Tim Gerundt * htdocs/devinfo/index.php: Web: Change title from devinfo page 2011-01-09 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #2429 (Tokenizer: Wrong simplification of 'sizeof .1250E+04') 2011-01-09 Daniel Marjamäki * cli/cmdlineparser.cpp, cli/cppcheckexecutor.cpp, lib/filelister.h, lib/filelister_unix.cpp, lib/filelister_unix.h, lib/filelister_win32.cpp, lib/filelister_win32.h: Fixed #2409 (print a warning if provided path (commandline option -I [PATH]) does not exist) 2011-01-08 Tim Gerundt * htdocs/index.php: Web: Add RSS link to project news 2011-01-08 Tim Gerundt * htdocs/site/css/all.css: Web: Tweak style sheets for printing 2011-01-08 Tim Gerundt * htdocs/index.php: Web: Add meta description to homepage 2011-01-08 Daniel Marjamäki * lib/checknullpointer.cpp, test/testnullpointer.cpp: Fixed #2437 (false positive: possible null pointer dereference: tok2) 2011-01-08 Tim Gerundt * htdocs/devinfo/index.php: Web: Add "Source Code" paragraph to devinfo page 2011-01-08 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Error message: Replace " with ' around variable name 2011-01-08 Daniel Marjamäki * man/buildman.sh: buildman: build writing-rules-3.pdf 2011-01-08 Daniel Marjamäki * man/writing-rules-3.docbook: Writing rules: minor tweak for the C++ intro 2011-01-08 Daniel Marjamäki * man/writing-rules-3.docbook: Writing rules: Added one more example for the C++ intro 2011-01-08 Daniel Marjamäki * lib/checkother.cpp: Fixed #2433 (strtol: false positive when strtol isn't used in function call) 2011-01-07 Daniel Marjamäki * gui/erroritem.h, lib/filelister_win32.cpp, lib/preprocessor.cpp: astyle formatting 2011-01-07 Daniel Marjamäki * lib/checkexceptionsafety.cpp, test/testexceptionsafety.cpp: Fixed #2428 (false alarm with code containing a throw clause) 2011-01-07 Daniel Marjamäki * lib/preprocessor.cpp: Preprocessor: fix bug when determining location when there is a missing include. ticket: #2326 2011-01-07 Robert Reif * test/testclass.cpp: Fixed #2425 (segmentation fault of cppcheck) 2011-01-07 Tim Gerundt * : commit 9fbbb910901ba2df61b79799024efeae34a8d415 Author: Tim Gerundt Date: Fri Jan 7 16:04:01 2011 +0100 2011-01-07 Tim Gerundt * htdocs/.htaccess, htdocs/devinfo/index.php, htdocs/index.php: Web: Move devinfo.html to a new place 2011-01-07 Tim Gerundt * htdocs/site/css/all.css: Web: Add separator to tab items 2011-01-07 Tim Gerundt * htdocs/index.php, htdocs/site/css/all.css: Web: Move style sheets to own file 2011-01-07 Ettl Martin * lib/filelister_win32.cpp, test/testmathlib.cpp: #ticket 2429: added a test to the mathlib to ensure the used floating point number is recognized correctly 2011-01-07 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #2426 (### Internal error in Cppcheck. Please report it.) 2011-01-07 Robert Reif * lib/symboldatabase.cpp: Fixed #2425 (segmentation fault of cppcheck) 2011-01-06 Daniel Marjamäki * scripts/comment.pl: scripts: update 'comment.pl' so it understand /* 2011-01-06 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Tokenizer: simplify NULL to 0 in the normal token list 2011-01-06 Daniel Marjamäki * lib/preprocessor.cpp, lib/preprocessor.h: Preprocessor: Reverted fix for #2131, it didn't work well so a better fix is needed 2011-01-06 Kimmo Varis * gui/erroritem.h: GUI: Add comment about storing paths. 2011-01-06 Kimmo Varis * gui/resultstree.cpp: GUI: Convert path to native separators before copying it. Ticket #2424 (Windows GUI: "Copy full path" doesn't copy the visible full path if it has been changed in preferences) We keep paths internally with / separator and only convert to native separators (for Windows) when showing them. Conversion was missing from path copying function. 2011-01-06 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: memsetZeroBytes: improved error message. ticket: #2421 2011-01-06 Tim Gerundt * : commit 70a29ccb8a5e5a40435b5c00c3755aaaa9ad21d2 Author: Tim Gerundt Date: Thu Jan 6 13:32:04 2011 +0100 2011-01-06 Daniel Marjamäki * lib/checknullpointer.cpp: Null pointers: Added comments 2011-01-06 Daniel Marjamäki * lib/checkbufferoverrun.cpp: Buffer overrun: Added comments 2011-01-06 Daniel Marjamäki * scripts/comment.pl: scripts: reduced false positives given by 'comments.pl'. given when declaring operator= 2011-01-06 Daniel Marjamäki * lib/checkstl.cpp: CheckStl: Added comments 2011-01-06 Daniel Marjamäki * lib/tokenize.cpp: Tokenizer: simple refactorings. and added a few comments 2011-01-06 Daniel Marjamäki * test/testother.cpp: astyle formatting 2011-01-06 Raphael Geissert * lib/checkother.cpp, lib/checkother.h, test/testother.cpp: [PATCH] Check for calls to memset() where 0 bytes are to be filled Inspired by Silvio Cesare's work 2011-01-06 Daniel Marjamäki * scripts/magic-numbers.pl: scripts: improved the 'magic-numbers.pl' script 2011-01-06 Daniel Marjamäki * lib/checknullpointer.cpp, test/testnullpointer.cpp: Fixed #2413 (fflush() with NULL argument is valid.) 2011-01-06 Robert Reif * lib/symboldatabase.cpp, test/testclass.cpp: Fixed #2415 (false positive: Member variable not initialized in constructor calling assignment operator) 2011-01-06 Robert Reif * test/testsimplifytokens.cpp: typedef: fixed problem. ticket: #2414 2011-01-05 Kimmo Varis * gui/mainwindow.cpp: GUI: Enable information messages. Dan added new enable-flag for information messages in commit 033e759. Enable that flag for GUI so that the information messages are visible in the GUI. 2011-01-05 Daniel Marjamäki * lib/checknullpointer.cpp, test/testnullpointer.cpp: Fixed #2411 (possible null pointer dereference (aborting via function pointer not detected)) 2011-01-05 Daniel Marjamäki * cli/cmdlineparser.cpp, lib/checkclass.cpp, lib/checkother.cpp, lib/settings.cpp, test/testclass.cpp, test/testother.cpp: command line: added 'information' id to enable 2011-01-05 Daniel Marjamäki * lib/checkuninitvar.cpp, test/testuninitvar.cpp: Fixed #2401 (false positive: Uninitialized variable: result) 2011-01-05 Daniel Marjamäki * lib/executionpath.cpp, test/teststl.cpp, test/testuninitvar.cpp: Uninitialized variables. Fixed false positive when there are multiple related conditions. ticket: #2399 2011-01-05 Tim Gerundt * : commit a0d62e041f426e2c4ce14c5e2880f96dcfb2d4f6 Author: Daniel Marjamäki Date: Wed Jan 5 19:38:22 2011 +0100 2011-01-05 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #2412 (typedef: struct with inheritance) 2011-01-05 Robert Reif * lib/tokenize.cpp: typedef: better handling. ticket: #2414 2011-01-05 Zachary Blair * lib/checkobsoletefunctions.h: Removed an unnecessary newline in the message. Ticket #2343 2011-01-04 Zachary Blair * lib/checkobsoletefunctions.h: Fixed #2343 (The ftime obsolete function warning seems wrong) 2011-01-05 Tim Gerundt * htdocs/index.php: Web: Add a first version of a website 2011-01-04 Kimmo Varis * lib/checkstl.cpp, test/teststl.cpp: Improve suspicious condition (string::find) message. See forum thread: https://sourceforge.net/apps/phpbb/cppcheck/viewtopic.php?f=3&t=192 2011-01-04 Kimmo Varis * lib/checkstl.cpp, test/teststl.cpp: Improve dangerous iterator usage (after erase()) message. See forum thread: https://sourceforge.net/apps/phpbb/cppcheck/viewtopic.php?f=3&t=192 2011-01-03 Kimmo Varis * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Improve strncat 3rd parameter usage warning message. See forum thread: https://sourceforge.net/apps/phpbb/cppcheck/viewtopic.php?f=3&t=192 2011-01-04 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp, test/testtokenize.cpp: Fixed #2399 (Tokenizer::simplifyKnownVariables: variables in conditions) 2011-01-04 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #2398 (false positive: Uninitialized variable) 2011-01-04 Daniel Marjamäki * scripts/comment.pl, scripts/magic-numbers.pl, scripts/readme.txt: scripts: added a two simple perl scripts for checking code. 2011-01-04 Daniel Marjamäki * lib/checkbufferoverrun.cpp: Fixed #2393 (Token::Match called with varid 0) 2011-01-04 Daniel Marjamäki * : commit 85897c3991cacbceab2d121b989d6de9664f9f76 Merge: 45b6d09 2b1ec9a Author: Daniel Marjamäki Date: Tue Jan 4 18:17:39 2011 +0100 2011-01-04 Daniel Marjamäki * man/writing-rules-3.docbook: Writing rules: Added part 3. Introduction to writing rules with C++. 2011-01-04 Robert Reif * lib/tokenize.cpp, lib/tokenize.h, test/testsimplifytokens.cpp: typedef: delete unhandled typedefs. ticket: #2348 2011-01-04 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: typedef: fix testcase 4. ticket: #2375 2011-01-04 Robert Reif * lib/tokenize.cpp: Fixed #2400 (Tests crashing in Windows) 2011-01-03 Raphael Geissert * lib/checkmemoryleak.cpp: Mention the name of the variable in the inconclusive leak msg 2011-01-03 Markus Elfring * lib/checkclass.cpp, test/testclass.cpp, test/testconstructors.cpp: Fixed #2389 (mistakable warning from 'CheckClass::uninitVarError') 2011-01-03 Markus Elfring * lib/checkother.cpp, test/testother.cpp: Bug #2390: Enclose the output of a variable name with quotes in "CheckOther::variableScopeError" The variable name output was enclosed by quotation marks in the member function "CheckOther::variableScopeError" and corresponding test functions. Signed-off-by: Markus Elfring 2011-01-02 Raphael Geissert * lib/tokenize.cpp, test/testsimplifytokens.cpp: Simplify "x = realloc (0, n);" to "x = malloc(n);" 2011-01-02 Raphael Geissert * lib/tokenize.cpp: Move simplification of realloc after simplification of math ops 2011-01-02 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: typedef: Fixed testcase. ticket: #2375 2011-01-02 Daniel Marjamäki * lib/checkbufferoverrun.cpp: Buffer overruns: Added comments 2011-01-02 Daniel Marjamäki * lib/preprocessor.cpp, test/testpreprocessor.cpp: Fixed #2392 (Preprocessor: Wrong simplification of __VA_ARGS__) 2011-01-02 Daniel Marjamäki * test/testpreprocessor.cpp: Added TODO testcase for ticket #2392 (Preprocessor: Wrong simplification of __VA_ARGS__) 2011-01-02 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #2391 (cstdlib file and memory function check misbehavior) 2011-01-02 Daniel Marjamäki * test/testsimplifytokens.cpp: typedef: added more tests. ticket: #2375 2011-01-01 Daniel Marjamäki * lib/checkbufferoverrun.cpp, lib/checkbufferoverrun.h, test/testbufferoverrun.cpp: Fixed #2215 (Improve check: Writing outside malloc bounds not detected) 2011-01-01 Daniel Marjamäki * lib/tokenize.cpp: typedef: don't simplify typedef after 'case'. it means that there is a typedef and constant with the same names. Ticket: #2386 2011-01-01 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #2246 (Improve check: Memory leak, function is not noreturn if return value is taken) 2011-01-01 Daniel Marjamäki * lib/checkuninitvar.cpp: uninitialized variables: Added some comments 2011-01-01 Daniel Marjamäki * lib/checkclass.cpp, test/testclass.cpp: Fixed TODO testcase. Use symbol database instead of token list. Ticket: #2375 2011-01-01 Daniel Marjamäki * lib/checkmemoryleak.cpp: Added comments in the memory leaks checking 2011-01-01 Daniel Marjamäki * lib/checkmemoryleak.cpp: Memory leaks: localized variables 2011-01-01 Daniel Marjamäki * lib/tokenize.cpp: Tokenizer: Added more comments 2011-01-01 Daniel Marjamäki * lib/tokenize.h: Tokenizer: Added doxygen comments 2011-01-01 Daniel Marjamäki * lib/tokenize.h: Tokenizer: added doxygen comments 2011-01-01 Daniel Marjamäki * Makefile, test/testcmdlineparser.cpp, test/testerrorlogger.cpp, test/testfilelister_unix.cpp, test/testpreprocessor.cpp, test/testtoken.cpp, tools/dmake.cpp: gcc: disabled -Wconversion again - too many warnings 2010-12-31 Zachary Blair * lib/checkother.cpp: Fixed #2382 (Catching exceptions by value instead of reference) 2010-12-31 Daniel Marjamäki * lib/executionpath.cpp, lib/tokenize.cpp, test/testbufferoverrun.cpp: Fixed #2386 (segmentation fault occurs in the checking when typedef has same name as an enum constant) 2010-12-31 Daniel Marjamäki * lib/checknullpointer.cpp, lib/checknullpointer.h: Null Pointer: Refactoring - broke out CheckNullPointer::isPointer 2010-12-31 Daniel Marjamäki * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #2378 (Refactoring: create utility function that skips redundant if/for/while) 2010-12-31 Daniel Marjamäki * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #2385 (False positive: array index out of bounds) 2010-12-31 Daniel Marjamäki * lib/checknullpointer.cpp: astyle formatting 2010-12-31 Daniel Marjamäki * lib/checknullpointer.cpp: added more comments 2010-12-31 Daniel Marjamäki * lib/checknullpointer.cpp: Added comments for CheckNullPointer::nullPointerLinkedList 2010-12-31 Daniel Marjamäki * lib/checknullpointer.cpp: Remove redundant condition 2010-12-31 Daniel Marjamäki * lib/checknullpointer.cpp: gcc: fixed compiler warning (suggest parantheses around assignment) 2010-12-31 Daniel Marjamäki * lib/checknullpointer.cpp: Refactoring and commenting CheckNullPointer::nullPointerAfterLoop 2010-12-31 Daniel Marjamäki * lib/checknullpointer.h: added doxygen comments 2010-12-31 Daniel Marjamäki * lib/checkexceptionsafety.cpp, lib/checkexceptionsafety.h: added some comments 2010-12-31 Pete Johns * lib/symboldatabase.cpp, lib/symboldatabase.h, test/testclass.cpp, test/testsymboldatabase.cpp: Fixed #2384 ("The function 's::f' can be const" reported for pointer-to-pointer) Moved check for pointer variables into isVariableDeclaration() Can now handle multiple scopes and multiple levels of indirection. Simplified check for strucs and unions, too, reducing the size of getVarList(). skipScopeIdentifiers() and skipPointers() should probably be methods on class Token. 2010-12-31 Daniel Marjamäki * cli/threadexecutor.cpp: testrunner: fix runtime problems with TestThreadExecutor 2010-12-31 Zachary Blair * lib/checkother.cpp, lib/checkother.h, test/testother.cpp: Fixed #2382 (Catching exceptions by value instead of reference) 2010-12-31 Daniel Marjamäki * cppcheck.cbproj, cppcheck.sln, lib/cppcheck.cpp, lib/symboldatabase.h, lib/tokenize.cpp: Borland C++: Fixed compiler errors 2010-12-31 Daniel Marjamäki * cli/threadexecutor.cpp, lib/checkbufferoverrun.cpp, lib/checkuninitvar.cpp, lib/tokenize.cpp: gcc: fixed -Wconversion errors 2010-12-31 Daniel Marjamäki * lib/symboldatabase.h: gcc: Fixed -Wconversion warnings in symbol database 2010-12-31 Daniel Marjamäki * lib/tokenize.cpp: gcc: fixed -Wconversion warnings in tokenizer 2010-12-31 Daniel Marjamäki * lib/checkbufferoverrun.cpp, lib/checkbufferoverrun.h: gcc: fixed -Wconversion warnings 2010-12-30 Daniel Marjamäki * Makefile, test/testmathlib.cpp, test/testsuite.cpp, test/testsuite.h, tools/dmake.cpp: Added -Wconversion compiler flag. The ASSERT_EQUALS_DOUBLE was added that can be used when comparing double values. 2010-12-30 Daniel Marjamäki * lib/checkstl.cpp: improved TODO comments 2010-12-30 Daniel Marjamäki * lib/checkstl.cpp: CheckStl: Added comments 2010-12-30 Daniel Marjamäki * lib/settings.h, lib/tokenize.h: fixed doxygen warnings 2010-12-30 Daniel Marjamäki * lib/cppcheck.cpp: gcc: fixed compiler warning 2010-12-30 Daniel Marjamäki * lib/errorlogger.cpp: Added comments 2010-12-30 Daniel Marjamäki * cli/threadexecutor.cpp: usleep: use nanosleep instead of usleep as the usleep is obsolete. Ticket: #2283 2010-12-30 Daniel Marjamäki * lib/checkuninitvar.cpp, test/testuninitvar.cpp: Uninitialized variables: typeof doesn't dereference. Ticket: #2367 2010-12-30 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Tokenizer: Better handling of duplicate enums. Ticket: #2381 2010-12-30 Daniel Marjamäki * man/writing-rules-2.docbook: writing rules #2: tweaks. published 2010-12-30 Daniel Marjamäki * lib/checkpostfixoperator.cpp, test/testpostfixoperator.cpp: Fixed #2321 (false positive: (performance) Prefer prefix ++/-- operators for non-primitive types.) 2010-12-30 Daniel Marjamäki * man/cppcheck-design.docbook: Cppcheck design: more tweaks 2010-12-30 Daniel Marjamäki * man/writing-rules-1.docbook, man/writing-rules-2.docbook: writing rules: more tweaks 2010-12-30 Pete Johns * Makefile, lib/symboldatabase.cpp, lib/symboldatabase.h, test/testsymboldatabase.cpp, test/testtoken.cpp, test/testutils.h: Refactoring following #2377 (Technically the member function xxx can be const) symboldatabase now recognises variables with arbitrarily many scopes. Extracted method isVariableDeclaration() Added unit tests for isVariableDeclaration in new file testsymboldatabase.cpp Extracted givenACodeSampleToTokenize helper class into testutils.h to reduce duplication. 2010-12-30 Pete Johns * lib/symboldatabase.cpp, test/testclass.cpp: Fixed #2377 (Technically the member function xxx can be const) TODO: Add unit test for getVarList() and refactor variable check. [Removed my testcase for #2377 and removed two TODOs.] 2010-12-30 Ettl Martin * test/testclass.cpp: const correctness: added further testcases for increment/decrement member functions 2010-12-30 Ettl Martin * test/testclass.cpp: ticket 2377: added further testcases 2010-12-30 Ettl Martin * : commit c29824fc4936e100057d37393fcccdfd6bec8f5f Author: Ettl Martin Date: Thu Dec 30 01:29:09 2010 +0100 2010-12-30 Pete Johns * build.txt: Added Mac OSX build instructins for PCRE. 2010-12-29 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #2374 (False 'memory leak' report (assigning to map in subfunction)) 2010-12-29 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: simplifyTypedef: Better handling of 'typedef int RexxFunctionHandler();'. Ticket: #2348 2010-12-29 Robert Reif * lib/symboldatabase.cpp, lib/tokenize.cpp, test/testclass.cpp: simplifyTypedef: operator typedef. Ticket: #2375 2010-12-29 Daniel Marjamäki * man/cppcheck-design.docbook: Cppcheck Design: some more tweaks 2010-12-29 Daniel Marjamäki * cli/cmdlineparser.cpp, cli/cppcheckexecutor.cpp, lib/check.h, lib/checkautovariables.h, lib/checkbufferoverrun.h, lib/checkclass.h, lib/checkexceptionsafety.h, lib/checkmemoryleak.h, lib/checknullpointer.h, lib/checkobsoletefunctions.h, lib/checkother.h, lib/checkpostfixoperator.h, lib/checkstl.h, lib/checkuninitvar.h, lib/checkunusedfunctions.h, lib/cppcheck.cpp, lib/preprocessor.cpp, lib/preprocessor.h, lib/tokenize.cpp, lib/tokenize.h, test/testbufferoverrun.cpp: Fixed #2373 (Using XML2 in --errorlist output) 2010-12-29 Daniel Marjamäki * lib/checkother.cpp: Fixed #2372 (internal error in logicaloperator check (varid=0)) 2010-12-29 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: typedef: fixed problem with 'typedef int pread_f(int);'. ticket: #2348 2010-12-28 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: typedef: fix typedef simplification. ticket: #2348 2010-12-28 Daniel Marjamäki * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #2370 (false negative: Buffer access out-of-bounds (for with if, no break)) 2010-12-28 Daniel Marjamäki * man/buildman.sh, man/cppcheck-design-overview.docbook, man/cppcheck-design.docbook: Cppcheck Design: updated article 2010-12-28 Daniel Marjamäki * man/cppcheck-design-overview.docbook: Cppcheck Design Overview: Added article 2010-12-28 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #2355 (simplifyTypedef: wrong simplification of 'typedef FMAC1 void (*a)();') 2010-12-28 Daniel Marjamäki * man/writing-rules-1.docbook, man/writing-rules-2.docbook, man/writing-rules.docbook: Writing Rules: Added a second article about writing rules that discuss the data representation 2010-12-28 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #2354 (simplifyTypedef: function pointers are not simplified into valid code) 2010-12-28 Pete Johns * test/testsuite.cpp, test/testsuite.h: Fixed #2360 (testrunner fails to build in Mac OS X Leopard (10.5) - assert macro vs assert method) Renamed assert to assert_. Tested with gcc v4.0.1 on Snow Leopard. 2010-12-27 Daniel Marjamäki * lib/checkuninitvar.cpp, test/testuninitvar.cpp: Fixed #2367 (false positive: (error) Uninitialized variable: s) 2010-12-27 Daniel Marjamäki * lib/checkuninitvar.cpp, test/testuninitvar.cpp: Fixed #2367 (false positive: (error) Uninitialized variable: s) 2010-12-27 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp, test/testunusedvar.cpp: Fixed #2368 (assigned a value that is never used) 2010-12-27 Kimmo Varis * gui/settings.ui, gui/settingsdialog.cpp: GUI: Show ideal thread count next to current thread count. Ideal thread count is determined by Qt as number of available cores. Ticket: #2194 (Automatically match thread count to available cores) 2010-12-27 Kimmo Varis * lib/checkother.cpp, test/testother.cpp: Change 'Scope of variable'-message to information message. 2010-12-27 Ettl Martin * test/testunusedvar.cpp: Created to testcase (#2368) for assigned a value that is never used false positive 2010-12-27 Daniel Marjamäki * lib/checkother.cpp: Fixed #2365 (Internal error: Token::Match called with varid 0) 2010-12-27 Kimmo Varis * gui/cppcheck_de.ts, gui/cppcheck_en.ts, gui/cppcheck_fi.ts, gui/cppcheck_ja.ts, gui/cppcheck_nl.ts, gui/cppcheck_pl.ts, gui/cppcheck_ru.ts, gui/cppcheck_se.ts, gui/cppcheck_sr.ts: GUI: Update translation files. 2010-12-27 Kimmo Varis * gui/main.ui: GUI: Use simple "Errors" instead of "Common errors". We have only one "error" category nowadays so we don't need to separate different error categories anymore. 2010-12-27 Kimmo Varis * gui/main.ui: GUI: Improve toolbar button tooltips. 2010-12-27 Kimmo Varis * gui/stats.ui: GUI: Fix EOL style of stats.ui. 2010-12-27 Kimmo Varis * gui/stats.ui, gui/statsdialog.cpp: GUI: Add 'portability' warnings to statistics-dialog. 2010-12-27 Kimmo Varis * gui/common.h, gui/gui.qrc, gui/main.ui, gui/mainwindow.cpp, gui/mainwindow.h, gui/resultstree.cpp: GUI: Add GUI for showing 'portability' warnings. Add menuitem, icon and toolbar button for portability warnings. Ticket #2359 (Gui: Show portability warnings). 2010-12-27 Daniel Marjamäki * test/testclass.cpp: TestClass: addon for 12f28507, fix a few more error messages. 2010-12-27 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #2361 (false positive on t[0X10]) 2010-12-26 Kimmo Varis * gui/settings.ui: GUI: Fix building with Qt < 4.7.0. I accidentally added the 'placeholderText' attribute to settings.ui when editing it with Qt Creator. That attribute was added in Qt 4.7.0 and we are not using it for anything. So removing it to fix building with older Qt versions. 2010-12-26 Kimmo Varis * lib/checkclass.cpp, test/testclass.cpp: Improve the message about const function. See discussion thread: https://sourceforge.net/apps/phpbb/cppcheck/viewtopic.php?f=3&t=192 2010-12-26 Kimmo Varis * lib/checkstl.cpp, test/teststl.cpp: Improve message for container type range check. See thread: https://sourceforge.net/apps/phpbb/cppcheck/viewtopic.php?f=3&t=192&start=0 2010-12-26 Kimmo Varis * lib/checkother.cpp, test/testother.cpp: Improve error message about overlapping buffers for s[n]printf(). See forum thread: https://sourceforge.net/apps/phpbb/cppcheck/viewtopic.php?f=3&t=192&start=0 2010-12-26 Daniel Marjamäki * lib/checkbufferoverrun.cpp, lib/checkbufferoverrun.h, test/testbufferoverrun.cpp: Buffer overrun: UB when pointer arithmetic result points out of bounds. Ticket #1774 2010-12-26 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #2304 (Tokenizer::simplifyKnownVariables: known strcpy parameter) 2010-12-26 Daniel Marjamäki * lib/checknullpointer.cpp, test/testnullpointer.cpp: Fixed #2090 (False negative: null pointer dereference 's=0; strcpy(s,p);') 2010-12-26 Kimmo Varis * gui/settings.ui: GUI: Improve Preferences-dialog layout. Make threads-textfield smaller as it can contain only three numbers. Also set the input mask so that three numbers at max are accepted. 2010-12-26 Peter Pentchev * Makefile, tools/dmake.cpp: Makefile: honor the C preprocessor flags in CPPFLAGS. Ticket: #2254 2010-12-26 Kimmo Varis * gui/mainwindow.cpp: GUI: zero is not valid value for bool type. 2010-12-26 Kimmo Varis * gui/common.h: GUI: Reorder settings-constants in common.h It is easier to manage those constants when there is even some basic ordering and organization. 2010-12-26 Kimmo Varis * gui/common.h, gui/mainwindow.cpp, gui/settings.ui, gui/settingsdialog.cpp: GUI: Allow enabling inline suppressions from the GUI. Ticket #2342 (inline suppressions not available from the GUI) 2010-12-26 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Tokenizer: Bailout if @ is encountered in the code 2010-12-26 Kimmo Varis * gui/stats.ui, gui/statsdialog.cpp: GUI: Show information messages count in stats dialog. 2010-12-26 Kimmo Varis * gui/main.ui, gui/mainwindow.cpp, gui/mainwindow.h, gui/resultstree.cpp: GUI: Add "Information" errors items to menu and toolbar. 2010-12-26 Kimmo Varis * gui/gui.qrc, gui/main.ui, gui/resultstree.cpp: GUI: Change Style-warnings icon. I want to use the current Style-warning icon for Information messages. So change the Style-warning icon first to new icon. 2010-12-26 Kimmo Varis * gui/checkstatistics.cpp, gui/checkstatistics.h, gui/common.h, gui/mainwindow.cpp, gui/resultstree.cpp: GUI: Add Information-severity support. 2010-12-26 Daniel Marjamäki * lib/executionpath.cpp, test/testnullpointer.cpp: Fixed #2350 (false positive: possible null pointer dereference) 2010-12-26 Daniel Marjamäki * test/testfilelister_unix.cpp: astyle formatting 2010-12-26 Pete Johns * lib/filelister_unix.cpp: Fixed Linux build. OSX built without limits.h 2010-12-26 Pete Johns * Makefile, lib/filelister_unix.cpp, test/testfilelister_unix.cpp: Fixed #2358 (Compilation fail on Mac) Added test case to prove it works. Not a true unit-test as it accesses the file-system. 2010-12-26 Daniel Marjamäki * lib/preprocessor.cpp: Fixed #2326 (Preprocessor: inline-suppr does not work for id=missingInclude) 2010-12-26 Pete Johns * lib/filelister_unix.cpp: canonicalize_file_name() is a GNU-extension. Replaced with call to realpath() to build on non-Linux systems, such as Mac OSX. 2010-12-25 Daniel Marjamäki * lib/checkother.cpp, test/testunusedvar.cpp: Fixed #2346 (False positive: pointer is assigned value that is never used. used here: 'pCol = pCol->GetNext()') 2010-12-25 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #2339 (Tokenizer::setVarId : Wrong handling of 'int gr = id - (TLFPressProperties::OIL_FLUID * nb);') 2010-12-25 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp, test/testtokenize.cpp: Fixed #2353 (Tokenizer::simplifyKnownVariables: wrong simplification after return) 2010-12-25 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Misused scope objects: Don't use this check if the checked file is a pure C file. Ticket: #2352 2010-12-24 Daniel Marjamäki * lib/errorlogger.cpp: Fixed #2349 (Empty 'msg' in output when using '-j') 2010-12-24 Daniel Marjamäki * lib/checkstl.cpp, lib/checkstl.h, test/teststl.cpp: Fixed #2356 (False positive reported with iterator deletion) 2010-12-23 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Tokenizer::simplifyGoto: Don't simplify 'goto' inside unhandled macro calls. Ticket: #2348 2010-12-23 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Tokenizer: Fixed calculation simplification of '0*(*p)'. Ticket: #2348 2010-12-23 Daniel Marjamäki * lib/checkuninitvar.cpp, test/testuninitvar.cpp: Fixed #2345 (False positive: uninitialized variable (in sub-condition in if inside a loop)) 2010-12-22 Daniel Marjamäki * lib/filelister_unix.cpp, lib/filelister_unix.h: Fixed #2344 (FileLister Unix: Don't convert to absolute paths) 2010-12-22 Daniel Marjamäki * lib/checkclass.cpp, lib/errorlogger.h, lib/preprocessor.cpp, test/testclass.cpp: Information: Added new severity 2010-12-22 Daniel Marjamäki * lib/errorlogger.cpp: xml2: changed the format of the cppcheck-version info 2010-12-22 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #2341 (false positive for function pointer returning typedef) 2010-12-22 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #2337 (False Positive: memory leak) 2010-12-22 Daniel Marjamäki * lib/errorlogger.cpp, lib/errorlogger.h: xml2: Added cppcheck-version 2010-12-22 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #2338 (False positive: Deallocating a deallocated pointer) 2010-12-21 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #2336 (False positive: memory leak (passing pointer to subfunction)) 2010-12-21 Daniel Marjamäki * lib/checkother.cpp, test/testunusedvar.cpp: Fixed #2330 (unreadVariable error for a fstream object when only extraction operator (>>) is used) 2010-12-21 Robert Reif * lib/checkother.cpp, lib/symboldatabase.cpp, lib/symboldatabase.h, test/testunusedvar.cpp: unused variables: fixed false negatives with the help of the symbol database. ticket: #2317 2010-12-20 Daniel Marjamäki * lib/checkother.cpp, test/testunusedvar.cpp: Fixed #2317 ((style) Variable is allocated memory that is never used) 2010-12-20 Daniel Marjamäki * lib/checkobsoletefunctions.h, test/testobsoletefunctions.cpp: Fixed #2334 (Internal class index function (no need to 'strchr')) 2010-12-19 Daniel Marjamäki * lib/checknullpointer.cpp: Fixed #2331 (Token::Match is called with varid 0) 2010-12-19 Daniel Marjamäki * lib/checkother.cpp, test/testunusedvar.cpp: Fixed #2286 (Variable 'ownKilled' is assigned a value that is never used) 2010-12-19 Daniel Marjamäki * lib/filelister_unix.cpp: Fixed #2322 (cppcheck follows recursive symlinks) 2010-12-19 Daniel Marjamäki * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #2328 (false positive: buffer overrun (for loop with a break => the end value is not reached)) 2010-12-19 Daniel Marjamäki * cli/cppcheck.vcproj, cli/cppcheck.vcxproj, test/test.vcproj, test/test.vcxproj, test/test.vcxproj.filters: Visual Studio: updated project files with qmake 2010-12-18 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #2325 (Tokenizer: Remove for-loop if condition is false) 2010-12-18 Robert Reif * lib/checkother.cpp: CheckOther: Use SymbolDatabase. Ticket: #2318 2010-12-18 Kimmo Varis * Makefile: Update Makefile. 2010-12-18 Kimmo Varis * tools/dmake.cpp: Update dmake to use basepath in lib.pri. 2010-12-18 Kimmo Varis * test/test.pro: Update test.pro for using base path for included pri files. 2010-12-18 Kimmo Varis * cli/cli.pro, gui/gui.pro, lib/lib.pri: Don't use relative paths in lib.pri. Using relative path in included file binds it to be usable only included from one directory. Instead use variable for giving the base path for files. 2010-12-18 Kimmo Varis * cli/cli.pro, externals/tinyxml/tinyxml.pri: Don't use relative paths in tinyxml.pri. Using relative path in included file binds it to be usable only included from one directory. Instead use variable for giving the base path for files. 2010-12-18 Kimmo Varis * externals/tinyxml/tinyxml.pri: Reformat tinyxml qmake file. Have one filename at one line. 2010-12-18 Daniel Marjamäki * lib/preprocessor.cpp: Preprocessor: Report 'missing system include' with debug severity. temporary solution until the handling of system includes is better. 2010-12-18 Daniel Marjamäki * test/test.pro: QMake: added test/test.pro 2010-12-18 Kimmo Varis * cli/cli.pro: Add _CRT_SECURE_NO_WARNINGS for Windows CLI build. 2010-12-18 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Tokenizer: better handling for switch/break in the simplifyKnownVariables. Ticket: #2324 2010-12-18 Daniel Marjamäki * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #2323 (false positive: Buffer access out of bounds) 2010-12-18 Daniel Marjamäki * lib/checkuninitvar.cpp, test/testuninitvar.cpp: Fixed #2320 (false positive: Uninitialized variable: kbuf) 2010-12-18 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Tokenizer: Remove redundant parantheses in rhs. Ticket: #2320 2010-12-17 Daniel Marjamäki * cli/cppcheck.vcproj, cli/cppcheck.vcxproj, cli/cppcheck.vcxproj.filters, externals/tinyxml/tinyxml.pri, lib/lib.pri: QMake: auto-generate the visual studio project files with qmake 2010-12-17 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #2313 (False Positive: memory leak) 2010-12-17 Daniel Marjamäki * test/testmemleak.cpp: checkmemoryleaks: added assertion for todo assertion 2010-12-17 Daniel Marjamäki * lib/checkuninitvar.cpp, test/testuninitvar.cpp: Fixed #2306 (False positive: array of std::string is reported as uninitialized) 2010-12-17 Daniel Marjamäki * lib/checknullpointer.cpp, test/testnullpointer.cpp: Fixed #2299 (false positive: possible nullpointer dereference) 2010-12-17 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #2307 (No constructor defined false positive when class is enclosed in namespace) 2010-12-16 Daniel Marjamäki * lib/mathlib.h: removed the NOLONGLONG handling. it seems unlikely it is needed 2010-12-16 Daniel Marjamäki * lib/checknullpointer.cpp, test/testnullpointer.cpp: Fixed #2300 (false positive: possible nullpointer dereference) 2010-12-16 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #2301 (false positive: The given size 3 is mismatching) 2010-12-16 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #2311 (False positive: Index out of bounds) 2010-12-16 Daniel Marjamäki * test/testbufferoverrun.cpp: astyle formatting 2010-12-16 Daniel Marjamäki * build.txt: build.txt: some updated instructions 2010-12-16 Robert Reif * lib/checkother.cpp, lib/symboldatabase.cpp: Symbol database: reuse in CheckOther. Ticket: #2318 2010-12-16 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #2314 (False positive: (style) Template instantiation 'Foo' hides typedef with same name) 2010-12-15 Kimmo Varis * : commit ac8eb30d681c38f3951af77f410f18077b76b80b Author: Kimmo Varis Date: Wed Dec 15 22:39:46 2010 +0200 2010-12-15 Ettl Martin * test/testpreprocessor.cpp: test:testpreprocessor.cpp; fixed broken unit test due to wrong charcter encoding 2010-12-15 Kimmo Varis * cli/cppcheck.vcxproj, cli/cppcheck.vcxproj.filters, test/test.vcxproj, test/test.vcxproj.filters: Update VS2010 project files for new TinyXml location. 2010-12-15 Kimmo Varis * cli/cppcheck.vcproj, test/test.vcproj: Update VS2008 project files for new TinyXml location. 2010-12-15 Daniel Marjamäki * : Merge commit 'vBm/master' 2010-12-15 Kimmo Varis * win_installer/cppcheck.wxs: Installer: Fix typo 'IntallationPath' to 'InstallationPath'. 2010-12-15 Kimmo Varis * win_installer/cppcheck.wxs: Installer: Add Japanese and Serbian translation files. I forgot to add Japanese and Serbian translation files to the Windows installer when adding them. 2010-12-15 vBm * : commit 500c0a19c39ec8fdd434a0d6f97363f4db9b5275 Author: Zachary Blair Date: Tue Dec 14 23:51:21 2010 -0800 2010-12-14 vBm * : commit 05ebf120c3fd254ea1c896e48017f3202d6ddcfb Author: Zachary Blair Date: Tue Dec 14 00:16:26 2010 -0800 2010-12-13 Daniel Marjamäki * createrelease: createrelease: Added comment to test 'cppcheck --errorlist'. Ticket: #2292 2010-12-13 vBm * : commit 5ce63a1df0616e3d4e03841f45cb14caad361773 Author: Daniel Marjamäki Date: Mon Dec 13 18:17:33 2010 +0100 2010-12-13 vBm * man/manual.docbook: Change case for some standardized words 2010-12-13 Ettl Martin * tools/dmake.cpp: fixed mistake from previous commit. changes path from test/tinyxml to external/tinyxml; Thanks to kimmov. 2010-12-13 Ettl Martin * tools/dmake.cpp: dmake: added test/tinyxml path to make clean 2010-12-13 Kimmo Varis * gui/checkstatistics.cpp, gui/checkstatistics.h, gui/common.h, gui/resultstree.cpp: GUI: Add partial support for portability severity. Add 'backend' support for the new 'portability' severity. The new severity is handled, converted to new SHOW_PORTABILITY and added with correct type to the result view. There is no menuitem/toolbar button to show/hide portability items. Likewise there is no line for portability issues in stats- dialog. Ticket #2106 (More severities and new xml format) 2010-12-12 Daniel Marjamäki * cli/cli.pro, lib/lib.pri, tools/dmake.cpp: dmake: add include path '../externals' to lib.pri in case the pcre.h is placed there. 2010-12-12 Daniel Marjamäki * Makefile, build.txt, cli/cli.pro, cli/cmdlineparser.cpp, externals/tinyxml/changes.txt, externals/tinyxml/tinystr.cpp, externals/tinyxml/tinystr.h, externals/tinyxml/tinyxml.cpp, externals/tinyxml/tinyxml.h, externals/tinyxml/tinyxml.pri, externals/tinyxml/tinyxmlerror.cpp, externals/tinyxml/tinyxmlparser.cpp, gui/gui.pro, lib/cppcheck.cpp, lib/lib.pri, lib/settings.h, test/tinyxml/changes.txt, test/tinyxml/tinystr.cpp, test/tinyxml/tinystr.h, test/tinyxml/tinyxml.cpp, test/tinyxml/tinyxml.h, test/tinyxml/tinyxmlerror.cpp, test/tinyxml/tinyxmlparser.cpp, tools/dmake.cpp: Add support for user defined rules 2010-12-12 Daniel Marjamäki * Makefile: Makefile: switch back to debug mode 2010-12-12 Daniel Marjamäki * Makefile: 1.46: updated Makefile for release 2010-12-12 Daniel Marjamäki * Changelog: 1.46: Updated Changelog 2010-12-12 Daniel Marjamäki * cli/cppcheck.rc, cli/main.cpp, lib/cppcheck.cpp, win_installer/productInfo.wxi: 1.46: updated version information 2010-12-11 Daniel Marjamäki * lib/errorlogger.h: XML2: Added severity 'portability' for future use. Ticket: #2106 2010-12-11 Daniel Marjamäki * gui/help/buildhelp.bat: online-help: Remove old files before generating new ones. 2010-12-11 Daniel Marjamäki * gui/help/ch01.html, gui/help/ch02.html, gui/help/ch02s02.html, gui/help/ch02s03.html, gui/help/ch02s04.html, gui/help/ch02s05.html, gui/help/ch02s06.html, gui/help/ch02s07.html, gui/help/ch02s08.html, gui/help/ch03.html, gui/help/ch04.html, gui/help/ch05.html, gui/help/ch06.html, gui/help/ch07.html, gui/help/ch08.html, gui/help/ch09.html, gui/help/ch10.html, gui/help/ch10s02.html, gui/help/ch10s03.html, gui/help/ch10s04.html, gui/help/ch10s05.html, gui/help/index.html, gui/help/manual.html, gui/help/online-help.qhp: GUI: updated help file. Use latest manual. 2010-12-10 vBm * gui/cppcheck_de.ts, gui/cppcheck_en.ts, gui/cppcheck_fi.ts, gui/cppcheck_ja.ts, gui/cppcheck_nl.ts, gui/cppcheck_pl.ts, gui/cppcheck_ru.ts, gui/cppcheck_se.ts, gui/cppcheck_sr.ts, gui/gui.pro, gui/translationhandler.cpp: GUI: Initial addition of Serbian localization using clean English template. 2010-12-09 Daniel Marjamäki * man/manual.docbook: Manual: minor tweaks. remark that it is not certain that fixing 'performance' messages will have a positive effect on the speed. and in general it doesn't make the code more readable. 2010-12-09 Daniel Marjamäki * lib/checkobsoletefunctions.h: Obsolete functions: added better verbose messages 2010-12-09 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Tokenizer: Cleanup redundant statement '; x = x + 0;'. Ticket: #2283 2010-12-09 Daniel Marjamäki * cli/threadexecutor.cpp: ThreadExecutor: Fixed error message 'member variable _pipe not initialized'. Ticket: #2283 2010-12-09 Daniel Marjamäki * lib/checknullpointer.cpp, test/testnullpointer.cpp: Fixed #2284 (False positive: Possible null pointer reference) 2010-12-09 Robert Reif * lib/checkmemoryleak.cpp: Symbol database: use in checkmemoryleaks.cpp. ticket: #2219 2010-12-09 Daniel Marjamäki * test/testmemleak.cpp: memory leaks: fixed test that I broke in my last commit 2010-12-08 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #2285 (False Positive: memory leak) 2010-12-08 Kimmo Varis * gui/checkthread.cpp, gui/checkthread.h: GUI: Small cleanup - use const reference. 2010-12-08 Kimmo Varis * gui/threadhandler.cpp, gui/threadhandler.h: GUI: Small cleanup - use const reference. 2010-12-08 Kimmo Varis * gui/translationhandler.cpp: GUI: Fix typo in Japanese translation name. The typo was visible in the Language-menu. 2010-12-08 Kimmo Varis * gui/cppcheck_de.ts, gui/cppcheck_en.ts, gui/cppcheck_fi.ts, gui/cppcheck_ja.ts, gui/cppcheck_nl.ts, gui/cppcheck_pl.ts, gui/cppcheck_ru.ts, gui/cppcheck_se.ts: GUI: Update language files. 2010-12-08 Kimmo Varis * gui/cppcheck_ja.ts, gui/gui.pro, gui/translationhandler.cpp: GUI Add Japanese translation. The translation was contributed by cjohnk7@sourceforge.net. Ticket #2276. 2010-12-08 Kimmo Varis * gui/stats.ui: Fix EOL style for stats.ui. I accidentally committed stats.ui with Windows EOL style. 2010-12-08 Robert Reif * lib/checkmemoryleak.cpp, lib/checkmemoryleak.h, lib/symboldatabase.cpp, lib/symboldatabase.h: Symbol database: use symbol database in the memory leaks function checking. Ticket: #2219 2010-12-07 Robert Reif * lib/symboldatabase.cpp, lib/symboldatabase.h, test/testclass.cpp: Fixed #2282 (Improve check: Function can be const) 2010-12-07 Kimmo Varis * gui/cppcheck_de.ts, gui/cppcheck_en.ts, gui/cppcheck_fi.ts, gui/cppcheck_nl.ts, gui/cppcheck_pl.ts, gui/cppcheck_ru.ts, gui/cppcheck_se.ts: GUI: Update translation files. 2010-12-07 Kimmo Varis * gui/stats.ui: GUI: Don't translate placeholder texts in stats dialog. 2010-12-07 Robert Reif * lib/checkclass.cpp, lib/checkclass.h, lib/checkmemoryleak.cpp, lib/tokenize.cpp, lib/tokenize.h: Symbol database: creates a single symbol database within Tokenizer on demand and changes all checks to use it 2010-12-07 Robert Reif * test/testmemleak.cpp: Symbol database: adds new tests that verify that namespaces work for the class check 2010-12-07 Robert Reif * lib/checkmemoryleak.cpp, lib/checkmemoryleak.h, test/testmemleak.cpp: Symbol database: fixed a TODO test where class variables were qualified with the class name 2010-12-07 Robert Reif * lib/checkbufferoverrun.cpp, lib/checkmemoryleak.cpp, lib/symboldatabase.cpp, lib/tokenize.cpp: Symbol database: removed unnecessary null pointer checks 2010-12-06 Daniel Marjamäki * lib/checkmemoryleak.cpp, lib/checkmemoryleak.h, test/testmemleak.cpp: Memory leaks: Removed the experimental checking using ExecutionPath. 2010-12-06 Daniel Marjamäki * man/buildman.sh, man/writing-rules.docbook: Writing rules: converting the docbook to pdf with buildman.sh 2010-12-06 Daniel Marjamäki * man/writing-rules.docbook: Writing rules: More simplifications 2010-12-06 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #2280 (Tokenizer::setVarId : variable id not set for inner iterator) 2010-12-05 Kimmo Varis * .gitignore: Update GUI executable name to .gitignore. 2010-12-05 Kimmo Varis * Makefile: Update Makefile. 2010-12-05 Daniel Marjamäki * man/writing-rules.docbook: Writing rules: minor tweaks 2010-12-05 Kimmo Varis * : commit 3ab725fa047a1546339f22c96ee3442d1ec022c8 Author: Kimmo Varis Date: Sun Dec 5 22:23:36 2010 +0200 2010-12-05 Robert Reif * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Symbol database: better handling of inline functions. Ticket: #2219 2010-12-05 Daniel Marjamäki * lib/checkother.cpp, test/testunusedvar.cpp: Fixed #2279 ((style) struct of union member is never used) 2010-12-05 Daniel Marjamäki * man/writing-rules.docbook: Writing rules: use 'cppcheck --rule=.+' instead of 'cppcheck --debug' to see simplified code 2010-12-05 Daniel Marjamäki * man/writing-rules.docbook: Writing rules: Minor updates. Trying to make it easier. 2010-12-05 Daniel Marjamäki * man/writing-rules.docbook: Writing rules: rewrote the chapter about writing rule files 2010-12-04 Robert Reif * lib/symboldatabase.cpp, test/testclass.cpp: Fixed #2275 (False Positive: Member variable not initialized in the constructor) 2010-12-04 Daniel Marjamäki * man/writing-rules.docbook: Writing rules: Target this guide for beginners. Skip C++ and only describe how rules are created with regular expressions. 2010-12-04 Robert Reif * lib/checkclass.cpp, lib/symboldatabase.cpp, test/testclass.cpp: Fixed #2273 (False Positive: Member variable not initialized in the constructor) 2010-12-04 Daniel Marjamäki * man/writing-rules.docbook: Writing rules: Removed the C++ information. I'll focus on regular expressions to begin with. 2010-12-04 Daniel Marjamäki * lib/tokenize.cpp, lib/tokenize.h: Tokenizer: Added a few comments 2010-12-04 Daniel Marjamäki * cli/cmdlineparser.cpp, lib/settings.h: xml2: rename '--xmlver' to '--xml-version'. bugfix in settings, change the type of _xml_version from bool to int. 2010-12-04 Daniel Marjamäki * : commit c6c5fc6a1ce986e045ccbfcc4bfb05961f1e2ff5 Author: Kimmo Varis Date: Sat Dec 4 14:13:44 2010 +0200 2010-12-04 Daniel Marjamäki * man/writing-rules.docbook: Writing rules: Start writing document. A beginners guide to writing rules. 2010-12-04 Kimmo Varis * lib/checkstl.cpp, test/teststl.cpp: Improve 'Use x.empty() instead of x.size() for emptiness' warning. Improve the performance warning message as discussed at dev-forum: https://sourceforge.net/apps/phpbb/cppcheck/viewtopic.php?f=3&t=192#p926 2010-12-04 Kimmo Varis * lib/checkautovariables.cpp, test/testautovariables.cpp: Improving 'Wrong assignment of auto variable' error message. Improving the error message as discussed at dev-forum: https://sourceforge.net/apps/phpbb/cppcheck/viewtopic.php?f=3&t=192&start=0 2010-12-04 Robert Reif * lib/checkmemoryleak.cpp, lib/symboldatabase.cpp, test/testmemleak.cpp: Memory leaks: Determine that some classes are not auto-deallocated. Reduce false negatives. Ticket: #2219 and #1618 2010-12-03 Daniel Marjamäki * man/manual.docbook: Manual: updated the manual 2010-12-03 Daniel Marjamäki * lib/checkother.cpp, test/testunusedvar.cpp: Fixed #2264 (False positive: variable assigned value that is never used) 2010-12-03 Robert Reif * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #2271 (Tokenizer: simplify Qt signals and slots) 2010-12-03 Robert Reif * lib/symboldatabase.cpp, test/testclass.cpp: Symbol database: The symbol database has a bug where it can find an out of line constructor when looking for a destructor. Ticket: #2272 2010-12-02 Daniel Marjamäki * lib/checkother.cpp, test/testunusedvar.cpp: Fixed #2263 (False positive: variable assigned value that is never used) 2010-12-02 Daniel Marjamäki * lib/preprocessor.cpp, lib/preprocessor.h: Preprocessor: Don't include system headers twice. 2010-12-02 Robert Reif * lib/tokenize.cpp, lib/tokenize.h, test/testtokenize.cpp: Fixed #2271 (Tokenizer: simplify Qt signals and slots) 2010-12-02 Daniel Marjamäki * cli/cmdlineparser.cpp, cli/cppcheckexecutor.cpp, lib/check.h, lib/cppcheck.cpp, lib/errorlogger.cpp, lib/errorlogger.h, lib/preprocessor.cpp, lib/settings.cpp, lib/settings.h, test/testcppcheck.cpp: xml2: replace --xml2 with --xmlver=2. Ticket: #2106 2010-12-02 Robert Reif * lib/checkclass.cpp, lib/symboldatabase.cpp, lib/symboldatabase.h, test/testclass.cpp, test/testconstructors.cpp: Fixed #2172 (False positive: struct is not initialized in constructor) 2010-12-01 Daniel Marjamäki * cli/cmdlineparser.cpp, cli/cppcheckexecutor.cpp, lib/check.h, lib/cppcheck.cpp, lib/errorlogger.cpp, lib/errorlogger.h, lib/preprocessor.cpp, lib/settings.cpp, lib/settings.h, test/testcppcheck.cpp: xml2: Added experimental --xml2 result format. Ticket: #2106 2010-12-01 Daniel Marjamäki * lib/checkuninitvar.cpp: checkuninitvar: fixed possible null-pointer dereference. thanks orbitcowboy for spotting it. 2010-12-01 Robert Reif * lib/preprocessor.cpp, lib/tokenize.cpp, lib/tokenize.h, test/testautovariables.cpp, test/testbufferoverrun.cpp, test/testcharvar.cpp, test/testclass.cpp, test/testconstructors.cpp, test/testdivision.cpp, test/testexceptionsafety.cpp, test/testincompletestatement.cpp, test/testmemleak.cpp, test/testnullpointer.cpp, test/testobsoletefunctions.cpp, test/testother.cpp, test/testpostfixoperator.cpp, test/testpreprocessor.cpp, test/testsimplifytokens.cpp, test/teststl.cpp, test/testtoken.cpp, test/testtokenize.cpp, test/testuninitvar.cpp, test/testunusedfunctions.cpp, test/testunusedprivfunc.cpp, test/testunusedvar.cpp: Tokenizer: add assert(_settings) to Tokenizer to insure the tokenizer always has settings. Ticket: #2219 2010-12-01 Kimmo Varis * gui/resultsview.cpp: GUI: Don't show summary/details for the parent items. 2010-12-01 Kimmo Varis * gui/resultsview.cpp: Fix ticket #2269 ([GUI] Crash when rechecking files while having hidden stuff) If there is no current item show empty details panel. 2010-12-01 Kimmo Varis * lib/checkclass.cpp: Fixed #2268 ([GUI] Generic class name is shown for 'Message' while correct one for 'Summary') 2010-11-30 Kimmo Varis * gui/checkstatistics.cpp, gui/checkstatistics.h: GUI: Add files I forgot to add when committing statistic patches. 2010-11-30 Kimmo Varis * gui/resultsview.cpp: GUI: Show also summary in the details pane. Show both short summary and verbose message in lower details panel in the GUI: Add titles for short summary and message. Hopefully this makes it easier to read the messages and copy/paste them too. 2010-11-30 Kimmo Varis * gui/statsdialog.cpp, gui/statsdialog.h: GUI: Copy statistics also to clipboard. 2010-11-30 Kimmo Varis * gui/gui.pro, gui/mainwindow.cpp, gui/resultstree.cpp, gui/resultstree.h, gui/resultsview.cpp, gui/resultsview.h, gui/stats.ui, gui/statsdialog.cpp, gui/statsdialog.h: GUI: Collect statistics about amount of different severities. Add new class for collecting statistics per each error severity. Add a new tab to Statistics-dialog for these numbers. 2010-11-30 Robert Reif * lib/symboldatabase.cpp, test/testclass.cpp: Fixed #2252 (segmentation fault with enable=all) 2010-11-30 Robert Reif * lib/symboldatabase.cpp, test/testclass.cpp: Fixed #2252 (segmentation fault with enable=all) 2010-11-30 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #2261 (False positive: memory leak) 2010-11-30 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #2262 (False positive: Resource leak: fd) 2010-11-30 Daniel Marjamäki * lib/checkuninitvar.cpp, test/testuninitvar.cpp: Fixed #2265 (False positive: Uninitialized variable: path) 2010-11-29 Daniel Marjamäki * lib/checknullpointer.cpp, test/testnullpointer.cpp: Fixed #2251 (False positive: Possible null pointer reference) 2010-11-29 Daniel Marjamäki * lib/checknullpointer.cpp, test/testnullpointer.cpp: Fixed #2245 (False positive: Possible null pointer dereference) 2010-11-29 Daniel Marjamäki * Makefile: Makefile: updated with dmake 2010-11-29 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #2248 (memory leak : pointer inserted in an object) 2010-11-29 Kimmo Varis * lib/checkstl.cpp: Remove extra space char from begin of verbose message. 2010-11-29 Kimmo Varis * lib/checkstl.cpp, test/teststl.cpp: Improve redundant STL container condition -message. Have separate summary and verbose messages. Se discusion at forum: https://sourceforge.net/apps/phpbb/cppcheck/viewtopic.php?f=3&t=192 2010-11-29 Kimmo Varis * lib/checkother.cpp, test/testother.cpp: Improve "Assert statement 'varname' -message. Modifying the message so that we have short message and verbose message. As discussed in dev-forum: https://sourceforge.net/apps/phpbb/cppcheck/viewtopic.php?f=3&t=192 2010-11-29 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #2232 (segmentation fault of cppcheck) 2010-11-28 Kimmo Varis * lib/checkother.cpp: Run astyle. 2010-11-28 Kimmo Varis * gui/resultstree.cpp, gui/resultstree.h, gui/resultsview.ui: GUI: Allow selecting multiple items in results tree. If multiple items are selected then other than "Hide" context menu items are disabled. 2010-11-28 Kimmo Varis * lib/checkother.cpp, test/testother.cpp: Improve the 'suspicious code sizeof sizeof' -message. As discussed at dev-forum: https://sourceforge.net/apps/phpbb/cppcheck/viewtopic.php?f=3&t=192 2010-11-28 Daniel Marjamäki * lib/preprocessor.cpp: Preprocessor: Temporarily skip 'missing include' warnings for system headers in release mode. When the handling works better these messages should not be skipped. Ticket: #1937 2010-11-28 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #2236 (False positive: Assignment to itself) 2010-11-28 Daniel Marjamäki * lib/tokenize.cpp: Fixed #2241 (Segfault checking a file) 2010-11-27 Kimmo Varis * lib/checkpostfixoperator.cpp: Remove extra space from error message. 2010-11-27 Kimmo Varis * lib/checkother.cpp: Small fix to error message. Start with capital letter and no space in beginning. 2010-11-27 Daniel Marjamäki * lib/checkuninitvar.cpp, test/testuninitvar.cpp: Fixed #2218 (False positive: Data is allocated but not initialized) 2010-11-27 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #2235 (false Resource leak) 2010-11-27 Kimmo Varis * lib/checkstl.cpp, test/teststl.cpp: Ticket #2237 (Too long "short" message about iterator increment) Improve the message for suspicious iterator increment in loop. 2010-11-27 Kimmo Varis * lib/checkother.cpp, test/testother.cpp: Ticket #2239 (Too long "short" message about function parameter passing) Have a proper short message for the parameter passing warning and improve the message. 2010-11-27 Kimmo Varis * lib/checkpostfixoperator.cpp, test/testpostfixoperator.cpp: Ticket #2238 (Improve postincrement warning message) Have a proper short message for post ++/-- operators. Pre ++/-- operators are usually more efficient for non-primitive types. 2010-11-27 Kimmo Varis * lib/checkclass.cpp, test/testclass.cpp, test/testconstructors.cpp: Ticket #2240 (Improve no constructor-message). Improve the message about missing constructor but having class attributes. Have proper short and long messages. 2010-11-26 Kimmo Varis * gui/cppcheck_de.ts, gui/cppcheck_en.ts, gui/cppcheck_fi.ts, gui/cppcheck_nl.ts, gui/cppcheck_pl.ts, gui/cppcheck_ru.ts, gui/cppcheck_se.ts: GUI: Update translation files. 2010-11-26 Kimmo Varis * gui/application.ui: GUI: Change text in Add Application-dialog back to plain text. Revert change ca9f8a7036559415e22364e0d078c20647943a32 that converted text in Add Application -dialog to rich text. The text is plain text and doesn't use any formatting so plain text is good for it. 2010-11-26 Kimmo Varis * gui/mainwindow.cpp, gui/mainwindow.h: GUI: Cleanup duplicate code. 2010-11-26 Kimmo Varis * gui/common.h, gui/mainwindow.cpp, gui/settings.ui, gui/settingsdialog.cpp, gui/settingsdialog.h: GUI: Add Setting for global include paths. This commit adds new setting and GUI for global include dirs. When project file with include dirs is loaded, global includes dirs are added first and after them the include dirs from project file. 2010-11-25 Robert Reif * lib/checkmemoryleak.cpp, lib/checkmemoryleak.h: Symbol database: refactor CheckMemoryLeakInClass::checkPublicFunctions to use the symbol database. Ticket: #2219 2010-11-25 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #2234 (Variable is assigned a value that is never used) 2010-11-25 Robert Reif * lib/symboldatabase.cpp: Symbol database: Avoid possible null pointer dereference if _settings is null. Ticket: #2219 2010-11-25 Robert Reif * lib/symboldatabase.cpp, test/testclass.cpp: Fixed #2230 (segmentation fault of cppcheck) 2010-11-25 Robert Reif * lib/symboldatabase.cpp, test/testclass.cpp: Fixed #2228 (False positive: Claims function can be const when it can not be (shared_ptr)) 2010-11-24 Kimmo Varis * win_installer/cppcheck.wxs, win_installer/productInfo.wxi: Installer: Write Cppcheck version and install path to registry. As suggested by mcartoixa at forums. This helps 3rd party software to find the Cppcheck in Windows environment. Note that this commit writes to HKCU instead of suggested HKLM. 2010-11-24 Daniel Marjamäki * lib/checkuninitvar.cpp, test/testuninitvar.cpp: Fixed #2226 (segmentation fault of cppcheck) 2010-11-24 Kimmo Varis * gui/resultsview.cpp, gui/resultsview.h: GUI: Fixing includes. 2010-11-24 Kimmo Varis * : commit c6046b6663209770a00964e9a7bf405a5eda9fa5 Author: Kimmo Varis Date: Wed Nov 24 17:09:02 2010 +0200 2010-11-24 Zachary Blair * gui/main.ui, gui/mainwindow.cpp, gui/resultstree.cpp, gui/resultstree.h, gui/resultsview.cpp, gui/resultsview.h: Fixed #1861 (GUI: Allow hiding error) Disabled menu item when not applicable 2010-11-23 Kimmo Varis * gui/resultstree.cpp, gui/resultstree.h, gui/resultsview.cpp, gui/resultsview.h: GUI: Improve updating details view. After previous patches the details view was only updated when the item was clicked with mouse. This patch improves the updating and now it works also when changing selected item using keyboard. 2010-11-23 Kimmo Varis * gui/common.h, gui/mainwindow.cpp, gui/resultsview.cpp, gui/resultsview.h: GUI: Remember main window splitter state. Save and restore the vertical splitter state (sizes of tree view and details panel). 2010-11-23 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #2225 (false positive: variable is assigned a value that is never used '*(stack[0])+=arg') 2010-11-23 Kimmo Varis * gui/resultsview.ui: GUI: Rename the splitter widget. 2010-11-23 Robert Reif * lib/checkclass.cpp, lib/checkclass.h, lib/checkmemoryleak.cpp, lib/checkmemoryleak.h, lib/symboldatabase.cpp, lib/tokenize.cpp, lib/tokenize.h, test/testmemleak.cpp, test/testtokenize.cpp: reuse symbol database in checkmemoryleak.cpp. ticket: #2219 2010-11-23 Robert Reif * lib/symboldatabase.cpp, test/testclass.cpp: Fixed #2221 (segmentation fault of cppcheck) 2010-11-23 Kimmo Varis * gui/resultsview.cpp, gui/resultsview.h: GUI: Add missing include lines. 2010-11-22 Kimmo Varis * gui/resultstree.cpp: GUI: Remove Message-column from the error tree view. The full detailed message is shown in the own panel below error tree. 2010-11-22 Kimmo Varis * gui/resultsview.cpp, gui/resultsview.h, gui/resultsview.ui: GUI: Add own panel for detailed error messages. This commit adds new rich text panel for the detailed error messages. When user clicks error item the detailed error text is updated to the panel. This way we have much more freedom in formatting the message and user can easily copy/paste (parts of) the message. 2010-11-21 Zachary Blair * gui/main.ui, gui/mainwindow.cpp, gui/resultstree.cpp, gui/resultstree.h, gui/resultsview.cpp, gui/resultsview.h: Fixed #1861 (GUI: Allow hiding error) 2010-11-21 Daniel Marjamäki * lib/tokenize.cpp: Tokenizer::simplifyKnownVariables: suppress debug warnings about pointer aliases. Temporary solution that limits the amount of debug warnings somewhat. 2010-11-21 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Tokenizer::simplifyKnownVariables: Reduce debug-warnings for conditional increment 2010-11-21 Daniel Marjamäki * test/testbufferoverrun.cpp: Buffer overflow: Added unit test that makes sure that array index out of bounds is detected inside loop. Ticket: #2199 2010-11-21 Daniel Marjamäki * lib/checkbufferoverrun.cpp, lib/checkbufferoverrun.h: VS: Fixed compiler warnings. Ticket: #2200 2010-11-21 Daniel Marjamäki * lib/mathlib.cpp: gcc: fixed compiler warnings 2010-11-21 Zachary Blair * cli/cmdlineparser.cpp, lib/checkother.cpp, lib/checkother.h, test/testother.cpp: Fixed #2162 (false positive: Mutual exclusion over ||) 2010-11-20 Reijo Tomperi * cli/cmdlineparser.cpp: Increase number of cores allowed by the cli to 10000 and add comment about the limit (it is there just to catch typos) 2010-11-20 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #2216 (wrong warning when C++0x keyword delete is used) 2010-11-20 Ettl Martin * lib/mathlib.h: mathlib: toString() parameter changed to const reference 2010-11-20 Daniel Marjamäki * lib/checkbufferoverrun.cpp: VS: Fixed compiler warnings 2010-11-20 Daniel Marjamäki * lib/checkother.cpp: VS: fixed compiler warning. Ticket: #2200 2010-11-20 Daniel Marjamäki * lib/checkuninitvar.cpp, lib/mathlib.cpp, lib/mathlib.h, lib/tokenize.cpp, test/testmathlib.cpp: Fixed #2200 (MathLib: Calculation overflow) 2010-11-20 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #2214 (Improve check: Memory leak not detected when pointer is incremented) 2010-11-20 Daniel Marjamäki * lib/checkother.cpp, lib/checkother.h, test/testother.cpp: Mutual exclusion: Disable this check until #2162 is fixed. 2010-11-20 Robert Reif * lib/checkclass.cpp, lib/symboldatabase.cpp, lib/symboldatabase.h: Symbol database: add global space and add all global functions and variables to it. Ticket: #2198 2010-11-19 Kimmo Varis * gui/resultstree.cpp, gui/resultstree.h: GUI: Right-align line number. 2010-11-19 Kimmo Varis * gui/resultstree.cpp, gui/resultstree.h: GUI: Add tooltips for error items. 2010-11-18 Daniel Marjamäki * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #2210 (False positive: buffer overrun (snprintf, unknown type)) 2010-11-16 Daniel Marjamäki * lib/checkuninitvar.cpp, test/testuninitvar.cpp: Uninitialized variables: Fixed simple undetected case for '= %var% |' and '| %var% ;' 2010-11-16 Daniel Marjamäki * lib/checkuninitvar.cpp: Uninitialized variables: Cleanup '+=' handling. This is simplified in the Tokenizer now. 2010-11-16 Daniel Marjamäki * lib/checkuninitvar.cpp, test/testuninitvar.cpp: Uninitialized variables: Fixed simple undetected case for '= %var% -' 2010-11-16 Daniel Marjamäki * lib/checkuninitvar.cpp, test/testuninitvar.cpp: Uninitialized variables: Fixed false negative. Ticket: #2207 2010-11-16 Robert Reif * lib/checkclass.cpp, lib/symboldatabase.cpp, lib/symboldatabase.h, test/testconstructors.cpp: Fixed #2204 (False positive when using const class members) 2010-11-15 Ettl Martin * test/testmathlib.cpp: fixed: wrong testcase from my last commit im testmathlib.cpp 2010-11-15 Ettl Martin * test/testmathlib.cpp, test/testother.cpp: mathlib: added todo testcases for ticket #2200 2010-11-15 Daniel Marjamäki * lib/executionpath.cpp, test/testnullpointer.cpp, test/testuninitvar.cpp: Fixed #2207 (False positive: uninitialized variable (return if uninitialized)) 2010-11-15 Daniel Marjamäki * lib/checkother.cpp, test/testunusedvar.cpp: Fixed #2206 (False positive: variable is assigned a value that is never used (array initializers)) 2010-11-15 Daniel Marjamäki * lib/checkother.cpp, test/testunusedvar.cpp: Fixed #2205 (False positive: variable is assigned a value that is never used (assigning to dereferenced casted pointers)) 2010-11-15 Daniel Marjamäki * lib/checkuninitvar.cpp, test/testuninitvar.cpp: Fixed #2202 (false postive: Data is allocated but not initialized: rbdc) 2010-11-14 Zachary Blair * lib/checkother.cpp, lib/checkother.h, test/testunusedvar.cpp: Fixed #2058 (Warn for unused variable when only doing malloc/free) 2010-11-14 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #2201 (false positive: Uninitialized variable: __v0) 2010-11-14 Kimmo Varis * cli/cppcheck.vcxproj, cli/cppcheck.vcxproj.filters, test/test.vcxproj, test/test.vcxproj.filters: Update VS2010 solution/project files. 2010-11-14 Daniel Marjamäki * lib/preprocessor.cpp, lib/preprocessor.h: Fixed #2131 (Preprocessor: incorrect include file loading) 2010-11-14 Robert Reif * lib/checkclass.cpp, lib/checkclass.h: CheckClass: Refactoring - organize each check so the check function comes first, any helper functions come second, and the message functions come last. Ticket: #2198 2010-11-13 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Tokenizer::simplifyKnownVariables: Simplify known variables for struct members 2010-11-13 Daniel Marjamäki * test/testtokenize.cpp: Tokenizer: added assertions to check that no debug messages are given. 2010-11-13 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Tokenizer: Skip debug warnings in Tokenizer::simplifyKnownVariables for loop variable 2010-11-13 Daniel Marjamäki * test/testtokenize.cpp: Tokenizer: Added TODO test cases for splitting up variable declarations 2010-11-13 Daniel Marjamäki * lib/checkautovariables.cpp, lib/checkautovariables.h, test/testautovariables.cpp: Auto variables: improved the check for 'return retval.c_str()'. Ticket: #2191 2010-11-13 Daniel Marjamäki * lib/checkuninitvar.cpp, test/testuninitvar.cpp: Uninitialized variables: Fixed false negatives when calling unknown function with uninitialized variable by value: 'f(a+1)' 2010-11-13 Daniel Marjamäki * lib/preprocessor.cpp: system headers: merged the systemheaders branch into master. it works pretty well. Ticket: #1937 2010-11-13 Daniel Marjamäki * cli/cppcheck.vcproj, test/test.vcproj: Visual Studio 2008: Added lib/symboldatabase files 2010-11-13 Daniel Marjamäki * lib/checkuninitvar.cpp, test/testuninitvar.cpp: Fixed #2196 (False positive: Invalid data is allocated but not initialized (initialization in loop)) 2010-11-13 Daniel Marjamäki * lib/symboldatabase.cpp, lib/symboldatabase.h: Symbol database: Added files 2010-11-13 Daniel Marjamäki * lib/checkuninitvar.cpp, test/testuninitvar.cpp: uninitialized variables: fixed problem when parsing loop bodies 2010-11-13 Daniel Marjamäki * Makefile: Makefile: updated the Makefile. addon to my commit yesterday where I added new leak checking 2010-11-13 Robert Reif * Makefile, lib/checkclass.cpp, lib/checkclass.h, lib/lib.pri: Fixed #2198 (SymbolDatabase: separate SymbolDatabase from CheckClass) 2010-11-12 Daniel Marjamäki * lib/checkmemoryleak.cpp, lib/checkmemoryleak.h, test/testmemleak.cpp: Fixed #2151 (false negative: memory leak when calling subfunction that doesn't deallocate the memory) 2010-11-12 Daniel Marjamäki * lib/checknullpointer.cpp, test/testnullpointer.cpp: Fixed #2193 (false negative: nullpointer dereference) 2010-11-12 Robert Reif * lib/checkclass.cpp: This patch fixes a bug I introduced in the previous patch. It also speeds up nested class parsing by skipping the entire class implementation using { link to jump to } rather than parsing for }. Ticket: #2172 2010-11-12 Daniel Marjamäki * lib/checkuninitvar.cpp, test/testuninitvar.cpp: Uninitialized variables: Passing uninitialized array as parameter to function. Ticket: #2188 2010-11-12 Daniel Marjamäki * lib/checkuninitvar.cpp, test/testuninitvar.cpp: Fixed #914 (improve check: usage of uninitialized variable) 2010-11-12 Daniel Marjamäki * lib/checkuninitvar.cpp, test/testuninitvar.cpp: Fixed #2148 (uninitialized variable: false negative, function parameter that is passed by value) 2010-11-12 Daniel Marjamäki * lib/checkuninitvar.cpp, test/testuninitvar.cpp: Fixed #2188 (Does not detect initialization) 2010-11-12 Daniel Marjamäki * lib/errorlogger.cpp: Fixed #2195 (unit tests failing) 2010-11-11 Kimmo Varis * gui/resultstree.cpp: GUI: Add new "Summary" column to results. Summary column contains the short message core produces. 2010-11-11 Kimmo Varis * gui/csvreport.cpp, gui/erroritem.cpp, gui/erroritem.h, gui/resultstree.cpp, gui/threadresult.cpp, gui/txtreport.cpp, gui/xmlreport.cpp: GUI: Add new short summary to error structures. Also rename 'msg' in structures to 'message' for consistency. 2010-11-11 Kimmo Varis * gui/projectfiledialog.cpp: GUI: Add path separator in ProjectFiles dialog. Add path separator to end of the paths user added via Browse-dialog. 2010-11-11 Kimmo Varis * gui/projectfiledialog.cpp: GUI: Show native paths in ProjectFiles -dialog. When adding paths to the dialog convert them to native separators. When saving the paths convert them to internal separators. 2010-11-11 Kimmo Varis * gui/projectfile.ui, gui/projectfiledialog.cpp, gui/projectfiledialog.h: GUI: Add buttons to add new paths to ProjectFile dialog. 2010-11-11 Daniel Marjamäki * cli/cppcheckexecutor.cpp, cli/threadexecutor.cpp, gui/threadresult.cpp, lib/check.h, lib/checkother.cpp, lib/cppcheck.cpp, lib/errorlogger.cpp, lib/errorlogger.h, lib/preprocessor.cpp, test/testcppcheck.cpp, test/testsuite.cpp: Fixed #2167 (Drop linefeeds from error messages) 2010-11-11 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #2192 (false positive: resource leak) 2010-11-11 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: typedef: better handling of __typeof__ 2010-11-11 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: typedefs: handle __typeof__ 2010-11-10 Daniel Marjamäki * lib/checkuninitvar.cpp, test/testuninitvar.cpp: Fixed #2185 (False negative: when constant is undefined a 'dangerous usage of strncpy' is not found) 2010-11-10 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #2182 (Context sensitive false positive) 2010-11-10 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #2184 (False Positive: memory leak) 2010-11-10 Robert Reif * lib/checkclass.cpp, lib/checkclass.h: Symbol database: code cleanups 2010-11-09 Daniel Marjamäki * lib/filelister_win32.cpp: FileLister: fixed compiler errors in win32. accept all files given by user. 2010-11-09 Daniel Marjamäki * lib/filelister.cpp, lib/filelister_unix.cpp: Fixed #2181 (How can I select the extension of the files to check?) 2010-11-09 Daniel Marjamäki * cli/cppcheckexecutor.cpp, lib/cppcheck.cpp, lib/filelister.h, lib/filelister_unix.cpp, lib/filelister_unix.h, lib/filelister_win32.cpp, lib/filelister_win32.h, tools/dmake.cpp: FileLister: minor cleanup 2010-11-09 Daniel Marjamäki * lib/checkclass.cpp, test/testconstructors.cpp: Symbol database: add support for class inline functions with classes 2010-11-09 Robert Reif * lib/checkclass.cpp, lib/checkclass.h, test/testclass.cpp: Fixed #2179 (Segmentation fault in assignment operator) 2010-11-08 Daniel Marjamäki * lib/checkclass.cpp, test/testclass.cpp: Fixed #2178 (segmentation fault of cppcheck) 2010-11-08 Daniel Marjamäki * lib/filelister_win32.cpp: Fixed #2169 (Inline suppression does not work unless filename is given) 2010-11-08 Daniel Marjamäki * lib/tokenize.cpp: Tokenizer: Only show 'failed to instantiate template' debug messages if the --debug-warnings has been given 2010-11-08 Daniel Marjamäki * lib/checkother.cpp: Visual Studio: Fixed compiler warnings about assignment in condition 2010-11-08 Robert Reif * lib/checkclass.cpp: Symbol database: delay finding class variables until after all classes have been found. 2010-11-07 Daniel Marjamäki * lib/tokenize.cpp, test/testbufferoverrun.cpp: Tokenizer::simplifyKnownVariables: Fixed TODO test cases in TestBufferOverrun 2010-11-07 Daniel Marjamäki * lib/tokenize.cpp: Revert "Tokenizer: More specific bailout in simplifyKnownVariables for loop variable" This reverts commit 7e9bb62dffd0b13303c66560e92d5d818576d3c1. 2010-11-07 Daniel Marjamäki * lib/tokenize.cpp: Tokenizer: More specific bailout in simplifyKnownVariables for loop variable 2010-11-07 Daniel Marjamäki * lib/tokenize.cpp, test/testautovariables.cpp, test/testtokenize.cpp: Tokenizer: More specific bail outs in simplifyKnownVariables 2010-11-07 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Tokenizer: better bailout in simplifyKnownVariables when there is loop 2010-11-07 Daniel Marjamäki * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #2170 (false positive: After a strncpy() the buffer should be zero-terminated) 2010-11-07 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Tokenizer: better handling of const variables 2010-11-07 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Tokenizer: Bailout simplifyKnownVariables for loop variables 2010-11-06 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: Symbol database: fixed problem 2010-11-06 Daniel Marjamäki * lib/tokenize.cpp: Tokenizer: Refactoring the simplifyKnownVariable 2010-11-06 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Tokenizer: improved simplifyKnownVariables 2010-11-06 Daniel Marjamäki * lib/tokenize.cpp: Tokenizer: Refactoring. Merged two patterns into one pattern. 2010-11-06 Daniel Marjamäki * lib/tokenize.cpp: Tokenizer: Added debug warning that is shown when bailing out in simplifyKnownVariables 2010-11-06 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #2176 (Tokenizer::simplifyTypedef function pointer bug) 2010-11-06 Robert Reif * lib/checkclass.cpp: Symbol database: improved handling of out of line functions returning function pointers 2010-11-06 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #2175 (Tokenizer::simplifyTypedef : wrong simplification of 'typedef float vec_t[3];') 2010-11-06 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Tokenizer::simplifyKnownVariables : Fixed TODO test case when simplifying pointer alias in function call 2010-11-06 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Tokenizer::simplifyKnownVariables: Fixed TODO test case. 2010-11-06 Daniel Marjamäki * test/testtokenize.cpp: Refactoring: Added ASSERT_EQUALS above TODO_ASSERT_EQUALS to catch changes in the behaviour better 2010-11-06 Daniel Marjamäki * test/testsimplifytokens.cpp: Added TODO unit test for ticket #2175. simplify 'typedef float x[3];' 2010-11-06 Daniel Marjamäki * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #2136 (false negative: array bounds) 2010-11-06 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Tokenizer: removed redundant assignments such as 'x+=0;'. Ticket: #2173 2010-11-06 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #2174 (Tokenizer::simplifyFunctionReturn bug) 2010-11-05 Daniel Marjamäki * lib/tokenize.cpp, test/testbufferoverrun.cpp, test/testsimplifytokens.cpp: Tokenizer: simplify calculations with zero better 2010-11-05 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Tokenizer: simplifyknownvariables, improved handling of string constant 2010-11-05 Daniel Marjamäki * lib/checkuninitvar.cpp, test/testuninitvar.cpp: Uninitialized variables: better handling of for example 'a[1] = 1+a[2];' 2010-11-05 Daniel Marjamäki * lib/checkuninitvar.cpp, test/testuninitvar.cpp: Uninitialized variables: detect usage of dead pointer: '*p += 10' 2010-11-04 Daniel Marjamäki * lib/checknullpointer.cpp, test/testnullpointer.cpp: Null pointers: Fixed false negatives in the CheckAndDeRef checking 2010-11-04 Daniel Marjamäki * lib/checknullpointer.cpp, test/testnullpointer.cpp: Fixed #2171 (false positive: possible nullpointer dereference) 2010-11-04 Daniel Marjamäki * lib/checkother.cpp: GCC: Fixed compiler warnings about sign-conversion 2010-11-04 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp, test/testuninitvar.cpp: Fixed #2161 (false positive: assigned a value that is never used) 2010-11-04 Daniel Marjamäki * lib/tokenize.cpp: Tokenizer: Fixed 'a[b-1]+=1' 2010-11-04 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Tokenizer: simplify 'a[b-1]+=1' better 2010-11-04 Daniel Marjamäki * lib/checknullpointer.cpp, test/testnullpointer.cpp: Fixed #2166 (false positive: possible null pointer dereference) 2010-11-04 Robert Reif * lib/checkpostfixoperator.cpp, test/testpostfixoperator.cpp: Fixed #2168 (Segmentation fault of cppcheck) 2010-11-04 Zachary Blair * lib/checkother.cpp, test/testother.cpp: Fixed #2137 (Invalid mutual exclusion report) 2010-11-04 Robert Reif * lib/checkclass.cpp, lib/checkclass.h, test/testclass.cpp: Symbol database: Fixed bug. Ticket: #2149 2010-11-03 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: Symbol database: Bug fix 2010-11-03 Daniel Marjamäki * test/testtokenize.cpp: Tokenizer: Added TODO test case for better handling of function calls 2010-11-03 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #2160 (#2160 (Invalid unused variable report (style))) 2010-11-03 Daniel Marjamäki * lib/checkother.cpp, lib/checkother.h, test/testother.cpp: empty string test: Removed this check 2010-11-02 Daniel Marjamäki * lib/checkother.cpp, test/testunusedvar.cpp: Unused variables: better handling of '= %var% ++'. Ticket: #2160 2010-11-02 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp, test/testuninitvar.cpp: Tokenizer: simplify 'x[0] += 1;' 2010-11-02 Robert Reif * lib/checkclass.cpp, lib/checkclass.h, test/testclass.cpp: Symbol Database: Better handling of namespaces. Ticket: #2149 2010-11-01 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Tokenizer: simplify 'x.y += 1;' 2010-11-01 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Tokenizer: simplify 'case 0: x += y;' 2010-11-01 Daniel Marjamäki * lib/checknullpointer.cpp, test/testnullpointer.cpp: Fixed #2159 (False positive: Null pointer dereference 'if (!x) return *y;') 2010-11-01 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #2158 (False positive: value is not unused when using +=) 2010-10-31 Kimmo Varis * cli/cppcheck.vcxproj, cli/cppcheck.vcxproj.filters, test/test.vcxproj, test/test.vcxproj.filters: Update VS2010 project files. 2010-10-31 Daniel Marjamäki * lib/checknullpointer.cpp, test/testnullpointer.cpp: Null pointers: Fixed false positive for 'x && x->y' 2010-10-31 Daniel Marjamäki * lib/checknullpointer.cpp: CheckNullPointer: Reuse CheckNullPointer::isPointerDeRef in CheckNullPointer::nullPointerByDeRefAndChec 2010-10-31 Daniel Marjamäki * lib/checknullpointer.cpp: CheckNullPointer: Reuse the CheckNullPointer::isPointerDeRef function 2010-10-31 Daniel Marjamäki * lib/checknullpointer.cpp: CheckNullPointer: Reduced false negatives by making pattern more generic 2010-10-31 Daniel Marjamäki * lib/checknullpointer.cpp, lib/checknullpointer.h: CheckNullPointer: Refactoring. Created the function CheckNullPointer::isPointerDeRef that can be used to detect if a pointer is dereferenced 2010-10-31 Kimmo Varis * gui/aboutdialog.cpp, gui/applicationdialog.cpp, gui/applicationlist.cpp, gui/checkthread.cpp, gui/csvreport.cpp, gui/filelist.cpp, gui/projectfiledialog.cpp, gui/report.cpp, gui/resultstree.cpp, gui/settingsdialog.cpp, gui/statsdialog.cpp, gui/threadhandler.cpp, gui/threadresult.cpp, gui/xmlreport.cpp: Add missing include lines. 2010-10-31 Daniel Marjamäki * cli/cppcheck.vcproj, test/test.vcproj: Visual Studio 2008: added nullpointer and uninitvar files 2010-10-31 Daniel Marjamäki * lib/checkother.cpp: Visual Studio: Fixed compiler error 2010-10-31 Daniel Marjamäki * Makefile, lib/checkother.cpp, lib/checkother.h, lib/checkuninitvar.cpp, lib/checkuninitvar.h, lib/lib.pri, test/testother.cpp, test/testuninitvar.cpp: Uninitialized variables: Broke out the checking into separate file 2010-10-31 Daniel Marjamäki * Makefile, lib/checknullpointer.cpp, lib/checknullpointer.h, lib/checkother.cpp, lib/checkother.h, lib/lib.pri, test/testnullpointer.cpp, test/testother.cpp: Null pointers: Broke out the checking into separate file 2010-10-31 Daniel Marjamäki * lib/checkother.h: CheckOther: updated CheckOther::getErrorMessages 2010-10-31 Daniel Marjamäki * lib/tokenize.cpp: Tokenizer: Added a few comments 2010-10-31 Daniel Marjamäki * lib/checkother.cpp, test/testunusedvar.cpp: Variable usage: Fixed false negative that I introduced when simplifying compound assignments 2010-10-31 Daniel Marjamäki * lib/checkmemoryleak.cpp, lib/tokenize.cpp, lib/tokenize.h, test/testtokenize.cpp, test/testunusedvar.cpp: Fixed #2147 (uninitialized variable: false negative for 'x += y;') 2010-10-30 Daniel Marjamäki * lib/checkbufferoverrun.cpp: GCC: Fixed compiler warnings 2010-10-30 Daniel Marjamäki * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #2120 (False positive: array index out of bounds (unknown type in struct, sub function)) 2010-10-30 Daniel Marjamäki * lib/checkstl.cpp, test/teststl.cpp: Fixed #2154 (false positive: The loop might unintentionally skip an element in the container) 2010-10-29 Kimmo Varis * Makefile: Update Makefile. 2010-10-29 Kimmo Varis * test/test.vcxproj, test/test.vcxproj.filters: Update VS2010 project files. 2010-10-29 Kimmo Varis * test/test.vcproj, test/testfilelister.cpp, test/testpath.cpp: Update tests after moving simplifyPath method to Path class. 2010-10-29 Kimmo Varis * lib/cppcheck.cpp, lib/errorlogger.cpp, lib/filelister.cpp, lib/filelister.h, lib/filelister_unix.h, lib/path.cpp, lib/path.h, lib/preprocessor.cpp, lib/tokenize.cpp: Move simplifyPath method from FileLister to Path class. simplifyPath() "fits" better to Path class conceptually. It handles paths, not lists them. Also this way we get rid of few unneeded dependencies to FileLister class. 2010-10-28 Kimmo Varis * gui/application.ui: GUI: Improve External editor add/edit dialog layout. Get rid of the form layout stretching the Browse-button so wide. Use form-like but more flexible layout. Change the term 'Application to execute' to 'Command to execute'. This reduces duplication and makes clear difference between application name and the command to execute to start the application. Fix also tab ordering so that the application name field gets the focus initially. 2010-10-28 Kimmo Varis * gui/applicationlist.cpp, gui/applicationlist.h: GUI: Use Notepad in Windows as default editor if Notepad++ not found. 2010-10-28 Kimmo Varis * gui/applicationlist.cpp: GUI: Failed to start default Notepad++. Notepad++ found and set as editor by default failed to start. There were no quotation marks around path containing space chars. 2010-10-28 Kimmo Varis * gui/applicationlist.cpp: GUI: It is Notepad++ with capital first letter. 2010-10-28 Kimmo Varis * gui/application.ui, gui/settingsdialog.cpp: GUI: Fix modality of Application dialog when editing application. 2010-10-28 Kimmo Varis * gui/resultstree.cpp: GUI: Fix saving new error categories names. 2010-10-28 Daniel Marjamäki * lib/checkclass.cpp, lib/checkobsoletefunctions.cpp, lib/checkother.cpp, lib/tokenize.cpp, lib/tokenize.h: Tokenizer: Added function for checking if code is Java/C# 2010-10-28 Daniel Marjamäki * lib/checkclass.cpp, test/testclass.cpp: Java: Removed bailout added in 120073f0001 2010-10-27 Daniel Marjamäki * lib/checkother.cpp, lib/checkother.h, test/testother.cpp: Fixed #2130 (Invalid possible NULL pointer dereference, etc.) 2010-10-27 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #2141 (false positive: possible null pointer dereference) 2010-10-27 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #2142 (false positive: null pointer dereference (throw)) 2010-10-27 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: Fixed #1195 (Uninitialized member variable not detected 'std::vector *ints;') 2010-10-27 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: Fixed #2135 (False positive 'Can be const') 2010-10-27 Pete Johns * test/testtokenize.cpp: Fixed test case so that it would compile. 2010-10-27 Pete Johns * lib/tokenize.cpp, lib/tokenize.h: Removed unnecessary code duplication. 2010-10-26 Cary R * lib/settings.cpp: Fixed #2138 (Add support for comments in suppression file) 2010-10-26 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp, test/testtokenize.cpp: Tokenizer: Remove redundant semi colons 2010-10-26 Daniel Marjamäki * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: #2133 (cppcheck: floating point exception) 2010-10-26 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #2118 (Invalid syntax error report.) 2010-10-26 Kimmo Varis * readme_64-bit_Windows.txt: Update GUI build instructions for 64-bit Windows. 2010-10-26 Kimmo Varis * readme_64-bit_Windows.txt: Improve 64-bit VS compiling instructions for GUI. No extra tricks needed for compiling 64-bit GUI. Though it seems to work only in command prompt but not in IDE. 2010-10-25 Kimmo Varis * readme_64-bit_Windows.txt: Improve 64-bit VS compiling instructions. Format the instructions being specifically for VS Express editions. 2010-10-25 Kimmo Varis * readme_64-bit_Windows.txt: Couple of fixes to VS2010 and 64-bit compile doc. 2010-10-25 Kimmo Varis * cli/cppcheck.vcproj, cppcheck.sln, test/test.vcproj: Add 64-bit targets for VS2008 project/solution files. Since VS2008 Express does not support x64 platform we must create new configurations named Debug-x64 and Release-x64. 2010-10-24 Kimmo Varis * readme_64-bit_Windows.txt: Add readme file for building Cppcheck for 64-bit Windows. 2010-10-24 Kimmo Varis * cli/cppcheck.vcxproj, cppcheck_vs2010.sln, test/test.vcxproj: Add x64 build targets for VS 2010. This commit adds new x64-Debug and x64-Release -targets for VS 2010. To use those targets you need Windows SDK with x64 compiler. 2010-10-26 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #2134 (sizeof(*list) complains of null pointer dereference) 2010-10-26 Daniel Marjamäki * lib/checkbufferoverrun.cpp: Fixed #2132 (Internal error. Token::Match called with varid 0.) 2010-10-26 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #2129 (Invalid dereference after release report) 2010-10-26 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #2130 (Invalid possible NULL pointer dereference, etc.) 2010-10-25 Daniel Marjamäki * lib/checkother.cpp, lib/checkother.h, test/testother.cpp: null pointer: use simplified token list in the 'check and deref' checking 2010-10-25 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: uninitialized variables: fixed fp when analysing loops 2010-10-25 Daniel Marjamäki * lib/checkother.cpp, lib/checkother.h, test/testother.cpp: Fixed #2127 (null pointer dereference after condition (SRD nr 522)) 2010-10-25 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: using deallocated pointer: detect first problem reported in ticket #2090 2010-10-24 Zachary Blair * lib/checkother.cpp, lib/checkother.h, lib/token.cpp, lib/token.h, test/testother.cpp, test/testtoken.cpp: Fixed #2105 (Incorrect operator: mutual exclusion over ||) 2010-10-24 Daniel Marjamäki * lib/executionpath.cpp, test/testother.cpp: Execution Path: Fixed FP in improved handling of loop bodies 2010-10-24 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Null pointers: Better handling of loops 2010-10-24 Daniel Marjamäki * lib/checkother.cpp: uninitialized variables: handling loop bodies. end upon '}' 2010-10-24 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp, test/testsuite.cpp: uninitialized variables: refactoring handling of loop bodies 2010-10-24 Daniel Marjamäki * lib/checkother.cpp, lib/executionpath.cpp, lib/executionpath.h, test/testother.cpp: Fixed #2125 (uninitialized variable: better handling of for loops) 2010-10-24 Daniel Marjamäki * lib/checkclass.cpp, test/testclass.cpp: Fixed #2111 (Class methods writing to a union are detected as 'can be const') 2010-10-24 Kimmo Varis * cli/cppcheck.vcxproj, cli/cppcheck.vcxproj.filters, test/test.vcxproj, test/test.vcxproj.filters: Add missing files to VS2010 project/solution files. 2010-10-24 Daniel Marjamäki * lib/checkother.cpp: Visual Studio: Fixed compiler warning. Ticket: #2123 2010-10-24 Daniel Marjamäki * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Buffer overruns: Fixed TODO test case 2010-10-23 Daniel Marjamäki * test/testcppcheck.cpp: fixed 'deprecated conversion' compiler warning 2010-10-23 Daniel Marjamäki * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #2121 (False positive: Buffer access out-of-bounds when using uint32_t) 2010-10-23 Daniel Marjamäki * lib/checkclass.cpp, test/testclass.cpp: Java: fixed false positives about uninitialized variable 2010-10-23 Daniel Marjamäki * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #2120 (False positive: array index out of bounds (unknown type in struct, sub function)) 2010-10-22 Daniel Marjamäki * lib/checkautovariables.cpp, test/testautovariables.cpp: Fixed #1819 (False positive: auto variable assignment (unseen typedef)) 2010-10-22 Daniel Marjamäki * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #2117 (false positive: buffer access out of bounds) 2010-10-22 Daniel Marjamäki * cli/cppcheckexecutor.cpp: astyle formatting 2010-10-22 Lauri Nurmi * Makefile, cli/cppcheckexecutor.cpp, test/test.vcproj, test/testcppcheck.cpp, tools/dmake.cpp: Fixed #2099 (Show an error if none of the given paths was found) 2010-10-22 Daniel Marjamäki * : Merge commit 'tigbuh/master' 2010-10-21 ms * Cppcheck.xcodeproj/project.pbxproj: Adapted Xcode project for version 1.45 and Xcode 3.2.4 2010-10-21 Daniel Marjamäki * test/testmemleak.cpp: memleak: activated todo test case. ticket: #1401 2010-10-21 Daniel Marjamäki * lib/checkpostfixoperator.cpp: Fixed #2116 (Internal error. Token::Match called with varid 0) 2010-10-21 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #2112 (Crash scanning qtcreator sources) 2010-10-20 Daniel Marjamäki * lib/checkclass.cpp, lib/checkobsoletefunctions.cpp, lib/tokenize.cpp, test/testtokenize.cpp: JAVA: better handling of java code 2010-10-20 Daniel Marjamäki * lib/filelister.cpp: Objective C: activate checking of .m and .mm files. The normal checking is used. 2010-10-20 Daniel Marjamäki * lib/tokenize.cpp, test/testmemleak.cpp, test/testtokenize.cpp: Fixed #2103 (false positive when variable is checked to NULL and not freed) 2010-10-20 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #2113 (False positive: Memory leak where a pointer is passed in a struct to another function to be freed) 2010-10-20 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #2110 (Tokenizer::simplifyTypedef: regression - wrong simplification of 'typedef char TString[256];') 2010-10-19 Daniel Marjamäki * lib/checkmemoryleak.h, lib/checkother.cpp, lib/filelister.cpp, lib/tokenize.cpp, test/testtokenize.cpp: Activated checking of .java and .cs files 2010-10-19 Daniel Marjamäki * lib/checkstl.cpp, test/teststl.cpp: Stl: improved check for dangerous usage of c_str 2010-10-19 Daniel Marjamäki * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #2109 (false positive: buffer overrun) 2010-10-18 Kimmo Varis * : Merge remote branch 'remotes/origin/master' 2010-10-18 Reijo Tomperi * cppcheck.cbp: Update codeblocks project file 2010-10-18 Daniel Marjamäki * lib/checkstl.cpp, test/teststl.cpp: Fixed #2108 (False positive: the loop might unintentionally skip an element in the container.) 2010-10-18 Kimmo Varis * gui/main.ui: GUI: Shorten menutexts for error/style items. Items located in 'View' menu don't need 'Show' word as View-menu name already implies it is about viewing items. 2010-10-18 Kimmo Varis * gui/common.h, gui/main.ui, gui/mainwindow.cpp, gui/mainwindow.h, gui/resultstree.cpp: GUI: Add support for warning and performance -error types. 2010-10-17 Daniel Marjamäki * lib/checkstl.cpp, lib/checkstl.h, test/teststl.cpp: STL: check for dangerous usage of string::c_str(). Ticket: #1116 2010-10-17 Daniel Marjamäki * man/manual.docbook: manual: added info about warning/style/performance. Ticket: #2106 2010-10-17 Ettl Martin * : commit 92a1e9e76e903b570ba1b0d04128b425a48789d1 Author: Daniel Marjamäki Date: Sun Oct 17 14:41:00 2010 +0200 2010-10-17 Ettl Martin * lib/checkclass.cpp: fixed style waring (You should use ++ and -- as prefix whenever possible as these are more efficient than postfix operators) in lib/checkclass.cpp 2010-10-17 Kimmo Varis * Makefile, lib/lib.pri: Run dmake to update Makefile and lib/lib.pri. 2010-10-17 Kimmo Varis * lib/filelister_win32.cpp: Add comment that qmake doesn't add _UNICODE define for project files. 2010-10-17 Kimmo Varis * cli/cppcheck.vcxproj, cli/cppcheck.vcxproj.filters, test/test.vcxproj, test/test.vcxproj.filters: Add missing files to VS2010 project files. 2010-10-16 Kimmo Varis * cli/cppcheck.vcproj, cli/cppcheck.vcxproj, cli/cppcheck.vcxproj.filters, test/test.vcproj, test/test.vcxproj, test/test.vcxproj.filters: Add missing files to VS projects. Part of fixing ticket #2101. 2010-10-16 Daniel Marjamäki * cli/cppcheck.vcproj, lib/filelister_win32.cpp: unicode: updates to the handling of unicode filenames. Ticket: #2100 2010-10-16 Daniel Marjamäki * cli/cppcheck.vcproj, lib/filelister_win32.cpp: unicode: use short filenames when long filename doesn't work. Temporary solution for #2100 2010-10-15 Daniel Marjamäki * lib/checkstl.h: some more comments 2010-10-15 Daniel Marjamäki * lib/checkstl.cpp: added comments in CheckStl 2010-10-15 Daniel Marjamäki * lib/checkstl.cpp, test/teststl.cpp: Fixed #2101 (list in vector iterator usage) 2010-10-14 Daniel Marjamäki * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #2097 (false positive: buffer access out of bounds) 2010-10-14 Daniel Marjamäki * lib/checkpostfixoperator.cpp, test/testpostfixoperator.cpp: astyle formatting 2010-10-14 Debrard Sebastien * : commit fb928b67781e57348f62104b49d94099c825cc9c Merge: d062980 6c582f9 Author: Debrard Sebastien Date: Thu Oct 14 19:08:31 2010 +0200 2010-10-14 Debrard Sebastien * : commit 6c582f9362ca13da701aa3b6b1ed6808ec78db01 Merge: e199e31 b6c995e Author: Kimmo Varis Date: Wed Oct 13 22:16:17 2010 +0300 2010-10-13 Kimmo Varis * win_installer/cppcheck.wxs: WiX Installer: Remove old gui.exe. 2010-10-13 Kimmo Varis * win_installer/readme.txt: Update WiX installer documentation. 2010-10-13 Daniel Marjamäki * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #2096 (False positive: buffer overrun (extern array)) 2010-10-13 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #2082 (Tokenizer::simplifyTypedef: wrong handling of array) 2010-10-13 Daniel Marjamäki * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #2093 (False positive: buffer access out of bounds (unknown type)) 2010-10-13 Pete Johns * lib/checkother.cpp: Fixed MSVC++ compiler warning (pointers are not bools) 2010-10-13 Pete Johns * lib/checkother.cpp: Removed redundant code. localClassDefinition is no longer required due to improved isIdentifierObjectType() in commit fbd3d92. 2010-10-13 Pete Johns * lib/checkother.cpp, test/testother.cpp: Fixed #2084 (False positive: object destroyed immediately (struct and function with same name)) Tightened up class definition matching so as not to match C-style struct tags. 2010-10-13 Robert Reif * lib/checkclass.cpp, lib/checkclass.h, test/testclass.cpp: Fixed #2089 (False negative: Function can be const (calling const function)) 2010-10-12 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #2087 (False positive: Array 'str[1]' index 1 out of bounds) 2010-10-12 Debrard Sebastien * lib/checkpostfixoperator.cpp: warning de compilation 2010-10-12 Debrard Sebastien * lib/checkpostfixoperator.cpp: comment 2010-10-12 Debrard Sebastien * Makefile, lib/checkother.cpp, lib/checkother.h, lib/checkpostfixoperator.cpp, lib/checkpostfixoperator.h, test/testother.cpp, test/testpostfixoperator.cpp: increment check 2010-10-12 Daniel Marjamäki * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #2088 ([test.c:12]: (error) Buffer access out-of-bounds: l) 2010-10-12 Pete Johns * .gitignore, Makefile, tools/dmake.cpp: Added tags file for faster code navigation. [Helpful for newbies like me] 2010-10-12 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: Fixed #2085 (False negative: function can be const when member variable is compared) 2010-10-12 Pete Johns * man/cppcheck.1.xml: Licensing: Using the GPL 3 license 2010-10-11 Daniel Marjamäki * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Array index: detect array index out of bounds when datatype is unknown. Ticket: #2086 2010-10-11 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: assignment in assert: modified the error message to better explain the reason why the warning is given. 2010-10-11 Robert Reif * lib/checkclass.cpp: Fixed #2081 (false negative: the function can be declared as const) 2010-10-10 Zachary Blair * lib/checkother.cpp, lib/checkother.h, lib/tokenize.cpp, test/testother.cpp: Fixed #2079 (detect side effects in assert) 2010-10-10 Daniel Marjamäki * lib/tokenize.cpp, test/teststl.cpp, test/testtokenize.cpp: Tokenize: Fixed bug in Tokenize::simplifyKnownVariables 2010-10-10 Daniel Marjamäki * test/teststl.cpp: STL: Added TODO test case for the new double-increment check 2010-10-10 Daniel Marjamäki * lib/checkstl.cpp, test/teststl.cpp: STL: fixed false positives in the new double-increment check when iterator shadows outer iterator 2010-10-10 Daniel Marjamäki * test/testother.cpp: fix unit testing 2010-10-10 Daniel Marjamäki * lib/checkother.cpp: Parameter passed by value: updated error message so it mentions the reason. 2010-10-10 Daniel Marjamäki * lib/checkstl.cpp, test/teststl.cpp: STL: fixed false positives for the new double-increment check 2010-10-10 Daniel Marjamäki * lib/checkstl.cpp, lib/checkstl.h, test/teststl.cpp: STL: Added double-increment check. 2010-10-10 Daniel Marjamäki * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #1705 (false negative: access past end of buffer) 2010-10-10 Daniel Marjamäki * lib/checkclass.cpp, test/testclass.cpp: Fixed #2078 (false negative: member variable not intialized) 2010-10-09 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1778 (false negative: nullpointer dereference (std::string pointer)) 2010-10-09 Daniel Marjamäki * lib/checkstl.cpp, test/teststl.cpp: STL: Fixed TODO test case TestStl::erase5 2010-10-08 Daniel Marjamäki * test/teststl.cpp: Unit testing: Added TODO test case TestStl::erase5 2010-10-08 Daniel Marjamäki * test/teststl.cpp: Unit testing: activated TODO test 2010-10-08 Daniel Marjamäki * Makefile, lib/classinfo.h, lib/tokenize.cpp, lib/tokenize.h, test/testtokenize.cpp: ClassInfo: Removed unused functionality 2010-10-08 Daniel Marjamäki * cli/cppcheckexecutor.cpp: CLI: added newline when printing version info 2010-10-08 Robert Reif * test/testsimplifytokens.cpp: Unit Testing: Added more typedef tests 2010-10-06 Robert Reif * lib/tokenize.cpp: Fixed #2074 ('Internal error in Cppcheck' on complex function typedef (even 2 typedefs!)) 2010-10-05 Daniel Marjamäki * lib/checkstl.cpp, lib/checkstl.h, lib/executionpath.cpp, lib/executionpath.h, test/testother.cpp, test/teststl.cpp: STL: refactoring CheckStl::erase so ExecutionPath is used 2010-10-05 Daniel Marjamäki * man/manual.docbook: 1.45: updated the manual 2010-10-04 Kimmo Varis * win_installer/cppcheck.wxs: Fix invalid ID error in MSI installer. 2010-10-04 Pete Johns * lib/checkother.h: Fixed 2072 (object destroyed immediately: add --doc info) 2010-10-04 Pete Johns * lib/checkother.cpp, test/testother.cpp: Fixed 2071 (false positive: object destroyed immediately (when using '= { ... }')) Simplified check within CheckOther::checkMisusedScopedObject() as a result. 2010-10-03 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Revert "temporarily disable the 'object destroyed immediately' message" This reverts commit fa94312c9a31e4d078464e6e96089b44d86aaeb9. 2010-10-03 Daniel Marjamäki * createrelease: createrelease: removed the tagging from the script 2010-10-03 Daniel Marjamäki * Makefile: Makefile: switch back to debug mode 2010-10-03 Daniel Marjamäki * Makefile: 1.45: updated Makefile for release 2010-10-03 Daniel Marjamäki * Changelog: 1.45: Updated Changelog 2010-10-03 Daniel Marjamäki * cli/cppcheck.rc, cli/main.cpp, lib/cppcheck.cpp, win_installer/productInfo.wxi: 1.45: updated version information 2010-10-03 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: temporarily disable the 'object destroyed immediately' message 2010-10-03 Reijo Tomperi * gui/erroritem.cpp, gui/erroritem.h, gui/logview.cpp, gui/logview.h, gui/project.cpp, gui/project.h, gui/projectfiledialog.cpp, gui/projectfiledialog.h, gui/statsdialog.cpp, gui/statsdialog.h: Fix encoding in some files 2010-10-03 Reijo Tomperi * man/cppcheck.1.xml: Update man page 2010-10-02 Pete Johns * lib/checkother.cpp, test/testother.cpp: Fix false positive: Misused Scope Object does not pick constructors of local class declarations. It does pick up if there is an unused construction within the function, though. 2010-10-02 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #2069 (cppcheck fails to scan OpenBSDs ftp source code) 2010-10-02 Pete Johns * lib/checkother.cpp, test/testother.cpp: Fixed false positive: checkMisusedScopedObject no longer errors on calls to function objects. 2010-10-02 Pete Johns * lib/tokenize.cpp, test/testsimplifytokens.cpp: Prevent Tokenizer::simplifyCalculations() from removing parantheses from calls to Functors. 2010-10-02 Daniel Marjamäki * test/testtokenize.cpp: Unit Testing: added missing TEST_CASE 2010-10-02 Pete Johns * lib/checkother.cpp, test/testother.cpp: Fixed false-positive: Object is referenced on construction struct Foo { void bar() { } }; void fn() { Foo().bar(); // This caused a false-positive } 2010-10-02 Pete Johns * lib/checkother.cpp, test/testother.cpp: Check misused scope object does not pick local class method. Also fixed mistyped withinFuntion ->withinFunction. 2010-10-02 Pete Johns * lib/checkother.cpp, lib/checkother.h, test/testother.cpp: Added test for functor false-positive [passing] Also removed typedef's following danmar's review and renamed isClassresults -> isClassResults to make more clear. 2010-10-02 Daniel Marjamäki * test/test.vcproj: Visual Studio: updated test/test.vcproj 2010-10-02 Daniel Marjamäki * test/options.cpp: Visual Studio: Fixed compiler error. It seems visual studio 2008 doesn't like 'not'. 2010-10-02 Pete Johns * lib/checkother.cpp, lib/checkother.h, test/testother.cpp: Fixed #1132 (Detection of misused scope objects in functions) Emits error in the form: [useless_lock.cpp:18]: (error) instance of "Lock" object destroyed immediately ...if an instance of a class or struct is unnamed and therefore destroyed straight after creation. Only checks for misused scope objects within functions. Optimised isIdentifierObjectType() by memoizing. 2010-10-01 Pete Johns * lib/checkother.cpp, lib/checkother.h, lib/token.cpp, test/testother.cpp: Revert "Fixed #1132 (Detection of misused scope objects)" This reverts commit c6acdccfa05dc31c4297d7e6f2467763161874ed. 2010-10-01 Pete Johns * lib/checkother.cpp, lib/checkother.h, lib/token.cpp, test/testother.cpp: Fixed #1132 (Detection of misused scope objects) Emits error in the form: [useless_lock.cpp:18]: (error) instance of "Lock" object destroyed immediately ...if an instance of a class or struct is unnamed and therefore destroyed straight after creation. Removed "internal error" from token.cpp, since in this case varid would be NULL. 2010-09-30 Daniel Marjamäki * lib/checkclass.cpp, lib/tokenize.cpp, lib/tokenize.h, test/testunusedprivfunc.cpp: Fixed #2067 (Template methods do not 'use' private ones) 2010-09-27 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #2066 (false positive: uninitialized variable when initializing through function pointer) 2010-09-27 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #2065 (false positive: memory leak) 2010-09-27 Pete Johns * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #1949: assert() hides memory leaks Added separate unit-test (trac1949), initially broken to highlight the error and added "assert" to call_func_white_list. Left TestMemleakInFunction::call_func() as is, as this wouldn't highlight the actual problem. 2010-09-26 Daniel Marjamäki * lib/tokenize.cpp: Optimisation: Made Tokenizer::simplifyInitVar faster 2010-09-26 Pete Johns * .gitignore: Ignore gcov and doxygen ephemera. 2010-09-26 Pete Johns * test/options.h, test/redirect.h: Added Doxygen commenting, per kimmov's request. Of course test/ is not covered currently by the settings in doxyfile. 2010-09-26 Kimmo Varis * gui/gui.pro: GUI: Fix path separators in project file. Qt 4.7 qmake warns about using backslash in paths. 2010-09-26 Pete Johns * test/options.cpp, test/options.h, test/testoptions.cpp: Removed static std::string. which_test() doesn't have to calculate anything, could be inlined. 2010-09-26 Pete Johns * test/testtoken.cpp: Replaced TODO in numeric test with two passing tests. Just getting to grips with how the tokenizer behaves. 2010-09-26 Pete Johns * test/testtoken.cpp: Improved test coverage. Refactored to extract givenACodeSampleToTokenize, reducing LOC. 2010-09-26 Pete Johns * Makefile, test/options.cpp, test/options.h, test/testoptions.cpp, test/testrunner.cpp, test/testsuite.cpp, test/testsuite.h, tools/dmake.cpp: Added `check` target. Runs the test as per `make test`, but with less verbosity. -g GCC-style errors -q quiet tests 2010-09-26 Pete Johns * test/redirect.h: Renamed RedirectInputOutput -> RedirectOutputError This class does not redirect input. 2010-09-26 Pete Johns * test/redirect.h, test/testcmdlineparser.cpp: Extracted Error and Output redirection. Making reuse possible. 2010-09-24 Daniel Marjamäki * lib/tokenize.cpp: Revert "Optimisation: small speedups in the Tokenizer::simplifyTokenList handling" This reverts commit 056037feed8503f5e51428da5cf37aa24d502ffc. 2010-09-24 Daniel Marjamäki * lib/tokenize.cpp: Optimisation: small speedups in the Tokenizer::simplifyTokenList handling 2010-09-24 Daniel Marjamäki * lib/preprocessor.cpp, test/testpreprocessor.cpp: Fixed #1951 (Preprocessor: Compound macro statements not handled correctly) 2010-09-24 Daniel Marjamäki * lib/checkother.cpp: Optimisation: Removed unused and slow code. The code was added to fix #1225 but it is now redundant. 2010-09-23 Daniel Marjamäki * lib/checkother.cpp: Optimisation to make the CheckUninitVar::parse slightly faster 2010-09-23 Pete Johns * .gitignore: dmake can now be made from ./Makefile Ignore this build artefact as well as the one under ./tools, since that can be built too. 2010-09-22 Reijo Tomperi * Makefile, tools/dmake.cpp: Makefile improvements related to clean, dmake and man targets. 2010-09-22 Daniel Marjamäki * lib/cppcheck.cpp, lib/errorlogger.cpp, lib/filelister.cpp, lib/path.cpp, lib/path.h, test/testfilelister.cpp: Fixed #2059 (cppcheck gives wrong path in error description) 2010-09-20 Daniel Marjamäki * lib/token.cpp: Optimisation: optimised Token::Match 2010-09-20 Kimmo Varis * lib/lib.vcproj, lib/lib.vcxproj, lib/lib.vcxproj.filters: Delete unused VS lib-projects. Those projects are just remainder from tries to create a real library from the lib code. 2010-09-20 Kimmo Varis * cppcheck_vs2010.sln: VS2010: Remove lib-project from the solution. The lib-project is not really used for anything. It is just remainder from tries to create real library from lib code. 2010-09-20 Daniel Marjamäki * lib/checkclass.cpp: Optimisation: small optimisation of CheckClass::privateFunctions 2010-09-20 Kimmo Varis * lib/lib.vcxproj, lib/lib.vcxproj.filters, test/test.vcxproj, test/test.vcxproj.filters: Update VS2010 solution/project files. 2010-09-20 Pete Johns * Makefile: Autogenerated Makefile updated. 2010-09-19 Pete Johns * tools/dmake.cpp: Wrapped variables in conditions This allows CXX and CXXFLAGS to be overridden without patching. Added PREFIX for MacPorts compatibility, allowing staging to $(DESTDIR)$(PREFIX)/bin, leaving original behaviour unchanged. Exit early if run in incorrect directory or if Makefile cannot be written. 2010-09-19 Pete Johns * runastyle: Fixed syntax error "./runastyle: line 4: --suffix=none: command not found" 2010-09-19 Daniel Marjamäki * lib/token.cpp: Refactorings: Optimised the Token::multiCompare function 2010-09-19 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #2056 (False positive: Resource leak) 2010-09-18 Daniel Marjamäki * lib/preprocessor.cpp, test/testpreprocessor.cpp: Fixed #1802 (Preprocessor: macros are expanded wrong) 2010-09-18 Daniel Marjamäki * test/teststl.cpp: STL: added TODO test case 2010-09-18 Daniel Marjamäki * lib/checkclass.cpp, lib/checkclass.h, test/testclass.cpp: Check Class: Removed the 'operator= should not return a const reference' 2010-09-18 Daniel Marjamäki * lib/checkclass.h: CheckClass: the 'virtual destructor' checking is currently inactive 2010-09-18 Daniel Marjamäki * lib/checkstl.cpp, test/teststl.cpp: Fixed #2053 (false positive on list erase) 2010-09-18 Daniel Marjamäki * cli/cmdlineparser.cpp: Fixed #2054 (Missing newline in 'invalid parameter' error message) 2010-09-18 Daniel Marjamäki * lib/executionpath.cpp, test/testother.cpp: Fixed #2052 (False positive: possible null pointer dereference 'else continue') 2010-09-18 Daniel Marjamäki * all.pro, test/test.pro: removed qmake files for the cli and unit tests 2010-09-18 Daniel Marjamäki * cli/cppcheck.vcproj: Visual Studio 2008: Updated cli/cppcheck.vcproj 2010-09-18 Daniel Marjamäki * cppcheck.sln, test/test.vcproj: Visual Studio 2008: Updated the project/solution files 2010-09-18 Daniel Marjamäki * test/test.pro: updated test/test.pro 2010-09-17 Daniel Marjamäki * lib/executionpath.cpp, test/testother.cpp: Fixed #2045 (False negative: Uninitialized variable (found with gcc)) 2010-09-17 Daniel Marjamäki * lib/executionpath.cpp, test/testother.cpp: Execution Paths: fixed TODO test cases 2010-09-16 Daniel Marjamäki * gui/about.ui: ln-: updated copyright 2010-09-16 Ettl Martin * Makefile: reverted makefile changes back from clang++ to g++ 2010-09-16 Ettl Martin * Makefile, lib/path.cpp: fixed clang++ warning: lib/path.cpp:80:2: warning: no newline at end of file [-pedantic] 2010-09-16 Daniel Marjamäki * Makefile, lib/checkother.cpp, lib/checkother.h, lib/checkstl.cpp, lib/checkstl.h, test/test.pro, test/testother.cpp, test/testredundantif.cpp, test/teststl.cpp: Redundant conditions: some refactorings * removed the 'redundant null pointer' check. sometimes it's unsafe to delete NULL pointer. and this check doesn't point out errors anyway. * moved the 'redundant condition' check for set::remove. Moved it to CheckStl. 2010-09-15 Ettl Martin * lib/checkbufferoverrun.cpp, lib/checkbufferoverrun.h: fixed warning from cppcheck: [lib/checkbufferoverrun.h:129]: (style) 'operator=' should not return a const reference 2010-09-15 Daniel Marjamäki * lib/preprocessor.cpp: Fixed #2032 (inline suppressions fail with comment on the same line as function) 2010-09-15 Daniel Marjamäki * lib/preprocessor.cpp: Fixed #2033 (all inline suppressions fail with relative paths) 2010-09-15 Daniel Marjamäki * lib/executionpath.cpp, test/testother.cpp: Fixed #2049 (False negative: 'Uninitialized variable' error won't show) 2010-09-15 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Tokenizer: fixed variable declaration simplification 2010-09-14 Daniel Marjamäki * verify/codeeditor.cpp, verify/codeeditor.h: cppcheck-verify: added 'codeeditor' files 2010-09-14 Daniel Marjamäki * lib/tokenize.cpp: Tokenizer: the 'failed to parse typedef' messages should not be shown unless --debug-warnings are given 2010-09-14 Daniel Marjamäki * verify/cppcheck-verify.pro, verify/mainwindow.cpp, verify/mainwindow.h, verify/mainwindow.ui: cppcheck-verify: added code editor that highlight the errors 2010-09-14 Daniel Marjamäki * verify/mainwindow.cpp, verify/mainwindow.h, verify/mainwindow.ui: cppcheck-verify: added 'open' menu 2010-09-14 Daniel Marjamäki * lib/preprocessor.cpp, test/testpreprocessor.cpp: Fixed #2048 (Preprocessor: ifndef incorrectly simplified) 2010-09-14 Robert Reif * lib/preprocessor.cpp: Preprocessor: Report #error configuration when -D is used. Ticket: #2042 2010-09-14 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: Symbol database: Skip bail out in constructors if a virtual function might be called because that would be undefined behaviour. Ticket: #1895 2010-09-13 Daniel Marjamäki * verify/Makefile, verify/cppcheck-verify.pro, verify/main.cpp, verify/mainwindow.cpp, verify/mainwindow.h, verify/mainwindow.ui: cppcheck-verify: changed it into a Qt project 2010-09-13 Daniel Marjamäki * lib/preprocessor.cpp, test/testpreprocessor.cpp: Preprocessor: Handle C++0x rawstrings by replacing them with normal strings. Ticket: #2022 2010-09-13 Daniel Marjamäki * lib/preprocessor.cpp: Revert "Preprocessor: Report #error configuration when -D is used. Ticket: #2042" This reverts commit 674644cb29f3eed4dcfba7f5dceb8dd0baca229a. 2010-09-13 Robert Reif * lib/preprocessor.cpp: Preprocessor: Report #error configuration when -D is used. Ticket: #2042 2010-09-12 Robert Reif * lib/checkclass.cpp, lib/checkclass.h, test/testclass.cpp: Symbol database: reduce false negatives for 'uninitialized variable' when calling base class function. ticket: #1895 2010-09-12 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Memory leaks: remove redundant 'if return ; else|' 2010-09-12 Robert Reif * lib/cppcheck.cpp, lib/preprocessor.cpp, lib/preprocessor.h, test/testpreprocessor.cpp: Fixed #2042 (#error messages should be displayed when user defines are used) 2010-09-12 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Memory leaks: reduce 'loop { if continue ;' to 'loop {' 2010-09-12 Daniel Marjamäki * lib/checkmemoryleak.cpp: Memory leaks: insert ';' in the simplifycode to split up the commands 2010-09-12 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Memory leaks: simplify 'loop { use ; callfunc ; }' to 'use ;' 2010-09-12 Daniel Marjamäki * verify/main.cpp: cppcheck-verify: fixed some false positives for array declarations 2010-09-12 Daniel Marjamäki * verify/Makefile, verify/main.cpp, verify/readme.txt: cppcheck-verify : added subproject 2010-09-11 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Memory leaks: simplify 'if break ; break ;' 2010-09-11 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Memory leaks: simplify 'use use' 2010-09-11 Daniel Marjamäki * lib/checkmemoryleak.cpp: Memory leaks: don't write debug warning for '; alloc ; dealloc ; return ; }' 2010-09-11 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Memory leaks: fixed try/catch and nested loops simplifications 2010-09-11 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Memory leaks: improved simplification for 'callfunc' 2010-09-11 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Memory leaks: Improved the simplifycode for 'use ; if| use ;' 2010-09-11 Kimmo Varis * win_installer/cppcheck.wxs, win_installer/productInfo.wxi: Installer: Update executable name to cppcheck-gui. 2010-09-11 Kimmo Varis * : commit b88ce77e4ac85d1b32981c63cb5c538e9740b6e9 Author: Kimmo Varis Date: Sat Sep 11 12:15:46 2010 +0300 2010-09-11 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #2023 (false positive with realloc()) 2010-09-11 Robert Reif * lib/checkclass.cpp, lib/checkclass.h, test/testclass.cpp: Symbol database: fixed false positive. ticket: #1895 2010-09-10 Daniel Marjamäki * lib/executionpath.cpp, test/testother.cpp: Fixed #2030 (False positive: Uninitialized variable when function does not return) 2010-09-10 Kimmo Varis * cli/cmdlineparser.cpp, cli/cmdlineparser.h: Fix ticket #2040 (some cli messages are missing a return at the end) 2010-09-10 Kimmo Varis * : commit 0fd51a814f480ec5ac3dd01b848ec9d5a07cf05a Author: Kimmo Varis Date: Fri Sep 10 17:42:14 2010 +0300 2010-09-10 Robert Reif * lib/checkclass.cpp: Symbol database: Refactoring. ticket: #1895 2010-09-09 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp, test/testunusedvar.cpp: Fixed #2039 (unions not handled properly, false positive about initialization) 2010-09-09 Daniel Marjamäki * lib/tokenize.cpp, lib/tokenize.h, test/testtokenize.cpp: Fixed #2038 (memleak false positive with assignment expression in arguments) 2010-09-09 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #2025 (iso646 c++ operators are not handled correctly) 2010-09-09 Robert Reif * lib/checkclass.cpp, lib/checkclass.h: Symbol database: refactoring - differentiate between member data initialization and assignment and save the order of variable declarations. makes it possible to create some additional checks. ticket: #1895 2010-09-09 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: Symbol database: fixed false negative for uninitialized variable. ticket: #1895 2010-09-08 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #2037 (memleak not detected in exit path when variable used) 2010-09-08 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: CheckMemoryleaks: reduce 'use ; if return ; dealloc ;' to 'if return ; dealloc ;'. ticket: #2037 2010-09-08 Daniel Marjamäki * cli/cmdlineparser.cpp, test/testcmdlineparser.cpp: cmdlineparser: allow space between -D and define name. ticket: #2036 2010-09-08 Kimmo Varis * test/testcmdlineparser.cpp: Add tests for userdefines and userincludes for CmdLineParser. 2010-09-08 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #2035 (Enum 'qboolean' hides typedef with same name) 2010-09-07 Daniel Marjamäki * test/testtoken.cpp, test/testtokenize.cpp: unit testing: moved TestTokenizer::match tests to the TestToken 2010-09-07 Daniel Marjamäki * lib/executionpath.cpp, test/testother.cpp: Fixed #2030 (False positive: Uninitialized variable when function does not return) 2010-09-07 Daniel Marjamäki * lib/checkclass.cpp, lib/tokenize.cpp, test/testtokenize.cpp, test/testunusedprivfunc.cpp: Fixed #2034 (false positive: unused private function (Borland C++ __property)) 2010-09-07 Reijo Tomperi * test/testcmdlineparser.cpp: One more encoding fix. 2010-09-06 Daniel Marjamäki * cli/cppcheckexecutor.cpp: cmdlineparser: use given settings 2010-09-06 Kimmo Varis * gui/mainwindow.cpp: GUI: use new style API to enable style checks. 2010-09-06 Kimmo Varis * test/testcmdlineparser.cpp: Add more tests for CmdLineParser. 2010-09-06 Kimmo Varis * : commit ed656e02e47df47d98ba079aa418012072fd7584 Author: Kimmo Varis Date: Mon Sep 6 22:45:29 2010 +0300 2010-09-06 Reijo Tomperi * cli/cmdlineparser.cpp, cli/cmdlineparser.h, lib/timer.cpp: Set encoding to UTF-8 for some files. 2010-09-06 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #2024 (Internal Error on multiple append calls on same string object) 2010-09-06 Kimmo Varis * cli/cmdlineparser.cpp, cli/cmdlineparser.h, test/test.vcproj, test/test.vcxproj, test/test.vcxproj.filters, test/testcmdlineparser.cpp: Add couple of basic tests for CmdLineParser. 2010-09-06 Kimmo Varis * lib/cppcheck.cpp: Add back as GCC requires it. I removed after checking it builds with VS 2008. But Dan pointed out GCC needs that header. 2010-09-06 Kimmo Varis * lib/cppcheck.cpp, lib/cppcheck.h: Remove unneeded includes. 2010-09-06 Kimmo Varis * cli/cmdlineparser.h: Add some comments for the CmdLineParser class. Also remove one unneeded forward declaration. 2010-09-06 Daniel Marjamäki * cli/cmdlineparser.cpp: --help : added info about the '--enable=missingInclude' command 2010-09-06 Stefan Naewe * cli/cmdlineparser.cpp: cmdlineparser: handle '-h'/'--help' correctly 2010-09-06 Robert Reif * lib/checkclass.cpp: const functions: fixed false negatives for the type P. ticket: #1884 2010-09-05 Daniel Marjamäki * lib/checkother.cpp, lib/checkother.h, test/testother.cpp: removed 'empty catch block' check. to avoid false positives we'll need to check if it is bad with an empty catch block (dead pointer/undefined behaviour/etc) 2010-09-05 Kimmo Varis * : commit c02d1bdce464968dcbe6ec64bb0d036dbb9a7d9d Author: Kimmo Varis Date: Sun Sep 5 14:15:24 2010 +0300 2010-09-05 Kimmo Varis * win_installer/cppcheck.wxs, win_installer/productInfo.wxi: Installer: Fix GUIDs and attributes for couple of components. 2010-09-05 Kimmo Varis * win_installer/cppcheck.wxs: Installer: Add own component for GUI translation files. 2010-09-05 Kimmo Varis * win_installer/cppcheck.wxs: Installer: combine readme.txt and authors.txt to one component. 2010-09-05 Kimmo Varis * win_installer/config.wxi, win_installer/cppcheck.wxs: Installer: Install new Qt-help help file. 2010-09-05 Kimmo Varis * gui/cppcheck_de.ts, gui/cppcheck_en.ts, gui/cppcheck_fi.ts, gui/cppcheck_nl.ts, gui/cppcheck_pl.ts, gui/cppcheck_ru.ts, gui/cppcheck_se.ts: GUI: Upate translation files. 2010-09-05 Kimmo Varis * Makefile, cli/cmdlineparser.cpp: Fix compiling with GCC. 2010-09-05 Kimmo Varis * lib/cppcheck.cpp: Remove unused function. I forgot to remove the function that was used in command line parsing code. 2010-09-05 Kimmo Varis * test/testcppcheck.cpp: Disable command line tests after refactoring command line handling. Disable the tests until I create tests that work with the new code. 2010-08-31 Kimmo Varis * cli/cmdlineparser.cpp, cli/cmdlineparser.h, cli/cppcheck.vcproj, cli/cppcheck.vcxproj, cli/cppcheck.vcxproj.filters, cli/cppcheckexecutor.cpp, cli/cppcheckexecutor.h, lib/cppcheck.cpp, lib/cppcheck.h: Move CLI command line parsing to own class. 2010-09-05 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #2021 (false positive: syntax error with -std=gnu++0x code) 2010-09-05 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #2020 (false positive: (error) Uninitialized variable, used in asm statement) 2010-09-05 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Tokenizer: Fixed problem in Tokenizer::simplifyRedundantParanthesis when simplifying 'void delete(double num);' 2010-09-04 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #2010 (missing continue in switch check ?) 2010-09-04 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #2015 (### Internal error in Cppcheck. Please report it.) 2010-09-04 Daniel Marjamäki * lib/checkother.cpp, test/testunusedvar.cpp: Fixed #2017 (false positive::struct or union member 'Base::m_ui' is never used) 2010-09-04 Daniel Marjamäki * lib/checkmemoryleak.cpp: Refactoring CheckMemoryLeaks 2010-09-03 Daniel Marjamäki * lib/cppcheck.cpp, lib/preprocessor.cpp, lib/preprocessor.h, lib/settings.cpp, test/testpreprocessor.cpp: Fixed #1872 (Confused -v switch) 2010-09-03 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #1976 (False Positives with unions) 2010-09-03 Daniel Marjamäki * lib/checkmemoryleak.cpp, lib/executionpath.cpp, test/testmemleak.cpp, test/testother.cpp: Fixed #2014 (False positive with longjmp) 2010-09-03 Robert Reif * test/testclass.cpp: Symbol database: Added todo testcase for better namespace handling. Ticket: #1895 2010-09-02 Daniel Marjamäki * lib/preprocessor.cpp, lib/tokenize.cpp, lib/tokenize.h, test/testpreprocessor.cpp: Fixed #1975 (segmentation fault of cppcheck) 2010-09-02 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Null pointer: Fixed false positive 2010-09-02 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Tokenizer: Fixed Cppcheck warnings 2010-09-02 Robert Reif * lib/checkclass.cpp, test/testunusedprivfunc.cpp: Symbol database: Fixed false negatives for unused private functions. Ticket: #1895 2010-09-02 Sébastien Debrard * gui/filelist.cpp, lib/filelister.cpp: Fixed #1972 (file extensions) 2010-09-02 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #2011 (Parser error in template function) 2010-09-02 Kimmo Varis * win_installer/cppcheck.wxs: GUI: Add more QT DLLs to Windows installer. Help viewer requires help dll and couple of deoendent dlls to be installed also. 2010-09-02 Robert Reif * lib/checkclass.cpp, lib/checkclass.h: Symbol database: adds support for inline functions returning function pointers and starts to convert privateFunctions over to the symbol database. Ticket: #1895 2010-09-01 Kimmo Varis * gui/threadhandler.cpp: GUI: Fix slot name for debugerrors. Now DebugErrors get correctly routed to check log. The wrong slot name also caused a warning printed to the console as reported by thevbm in ticket #2006. 2010-09-01 Daniel Marjamäki * lib/tokenize.cpp, lib/tokenize.h, test/testclass.cpp, test/testtokenize.cpp: Fixed #2007 (False positive: member variable not initialized (Borland C++ property)) 2010-09-01 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: refactoring namespace handling. ticket: #2001 2010-08-31 Zachary Blair * gui/gui.pro, gui/main.ui, gui/mainwindow.cpp, gui/mainwindow.h, gui/stats.ui, gui/statsdialog.cpp, gui/statsdialog.h, gui/threadhandler.cpp, gui/threadhandler.h: Fixed #1934 (GUI: Add checking info display) 2010-09-01 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: Fixed #2002 (Wrong operator() parsing) 2010-09-01 Robert Reif * test/testclass.cpp: const functions: Added unit test for ticket #2003 2010-08-31 Kimmo Varis * : commit 55e0e435bd0e6c01f8335c148e95bb2bcf225508 Author: Daniel Marjamäki Date: Tue Aug 31 21:40:51 2010 +0200 2010-08-31 Daniel Marjamäki * lib/checkexceptionsafety.cpp, lib/checkexceptionsafety.h, lib/cppcheck.cpp, lib/settings.cpp, test/testexceptionsafety.cpp: Exception safety: Removed the noisy checks and keep the useful checks 2010-08-31 Kimmo Varis * Makefile, lib/lib.pri: Fix Linux makefile after moving timer code to own files. 2010-08-31 Kimmo Varis * cli/cppcheck.vcproj, cli/cppcheck.vcxproj, cli/cppcheck.vcxproj.filters, lib/cppcheck.cpp, lib/lib.vcproj, lib/lib.vcxproj, lib/lib.vcxproj.filters, lib/timer.cpp, lib/timer.h, test/test.vcproj, test/test.vcxproj, test/test.vcxproj.filters: Move timer code to own cpp/h files. 2010-08-31 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #1959 (Do you support the oracle Pro*C ?) 2010-08-31 Kimmo Varis * : commit 688b2aefe9689d70abc2c00eb2ab34f24ff12bc4 Author: Daniel Marjamäki Date: Tue Aug 31 21:04:17 2010 +0200 2010-08-31 Kimmo Varis * cli/cppcheck.vcxproj, cli/cppcheck.vcxproj.filters, lib/lib.vcxproj, lib/lib.vcxproj.filters, test/test.vcxproj, test/test.vcxproj.filters: Fix building CLI with VS2010. 2010-08-31 Daniel Marjamäki * lib/checkother.cpp, test/testunusedvar.cpp: Fixed #2004 (False positive in 'variable assigned a value but is never used' check) 2010-08-31 Kimmo Varis * cli/cppcheck.vcproj, lib/lib.vcproj, test/test.vcproj: Fix CLI build with VS2008. 2010-08-31 Daniel Marjamäki * lib/checkother.cpp, test/testunusedvar.cpp: Fixed #1996 (False positive for 'Variable foo is assigned a value that is never used') 2010-08-31 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Tokenizer::setVarId : don't give operator function variable id 'operator new []('. Ticket: #1997 2010-08-31 Daniel Marjamäki * lib/checkobsoletefunctions.h, lib/tokenize.cpp, test/testobsoletefunctions.cpp, test/testtokenize.cpp: Fixed #1999 (False positive: uninitialized variable (__published variables)) 2010-08-31 Debrard Sébastien * Makefile, lib/checkdangerousfunctions.cpp, lib/checkdangerousfunctions.h, lib/checkobsoletefunctions.h, lib/lib.pri, test/testdangerousfunctions.cpp, test/testobsoletefunctions.cpp: Fixed #2005 (refactoring dangerous / obsolete functions checks) 2010-08-31 Robert Reif * lib/checkclass.cpp: Fixed #2003 (false positive in set functions) 2010-08-31 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: Fixed #2001 (No 'The function ... can be const' warnings when base class is in namespace.) 2010-08-31 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: Fixed #2000 (segmentation fault of cppcheck with bitfield) 2010-08-31 Robert Reif * lib/tokenize.cpp: Fixed #1887 (internal error in GLee) 2010-08-30 Daniel Marjamäki * lib/checkclass.h: Fixed #1998 (VS compiler warning with current HEAD) 2010-08-30 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1997 (operator new [] simplified wrong) 2010-08-30 Daniel Marjamäki * cli/cppcheck.vcproj, cli/cppcheck.vcxproj, lib/lib.vcproj, lib/lib.vcxproj, test/test.vcproj, test/test.vcxproj: Revert "Visual Studio: Added /MP switch" This reverts commit 2450a80556def477ff43459484ca8ace3dc17e57. 2010-08-30 Daniel Marjamäki * lib/check.h, lib/errorlogger.h: Fixed #1886 (Associate header file with code file including it) 2010-08-30 Robert Reif * lib/checkclass.cpp, lib/checkclass.h, test/testclass.cpp: Symbol database: better handling of operator functions. Ticket: #1895 2010-08-30 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1988 (segmentation fault of cppcheck with wrong syntax of -std=c++0x) 2010-08-29 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: Fixed #1993 (False negatives: uninitialised variables in constructor) 2010-08-29 Daniel Marjamäki * test/testtokenize.cpp: Tokenizer: Added testcase that asserts that there are not internal errors when using typedefs. Ticket: #1887 2010-08-29 Daniel Marjamäki * lib/cppcheck.cpp, readme.txt: mention the manual in the --help output 2010-08-29 Kimmo Varis * gui/threadresult.cpp: Fix error I made merging my internal error handling. GUI didn't show debug warnings even if they were enabled. 2010-08-29 Daniel Marjamäki * lib/checkobsoletefunctions.cpp, test/testobsoletefunctions.cpp: Fixed #1994 (False 'Found obsolete function' positive) 2010-08-29 Daniel Marjamäki * runastyle, runastyle.bat: astyle: prevent creating backup files 2010-08-29 Kimmo Varis * : commit b0fa7bfd8cdbd344ae5cf4134d76460e7fc8b695 Author: Kimmo Varis Date: Sun Aug 29 09:38:03 2010 +0300 2010-08-28 Kimmo Varis * gui/erroritem.cpp, gui/erroritem.h, gui/mainwindow.cpp, gui/mainwindow.h, gui/threadhandler.cpp, gui/threadresult.cpp, gui/threadresult.h: GUI: Output debug errors to log view. Debug errors were not shown anywhere in the GUI, they were just ignored. This commit adds new signal for those debug errors and directs them to checking log. Solves ticket #1898 (GUI: Handle internal errors from lib) 2010-08-28 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp, test/testunusedvar.cpp: Fixed #1989 (false positive: Variable 'Aux13' is assigned a value that is never used) 2010-08-28 Robert Reif * lib/checkclass.cpp, lib/checkclass.h: Symbol database: Refactorings. Ticket: #1895 2010-08-28 Kimmo Varis * gui/mainwindow.cpp: GUI: Disable debug warnings for now. 2010-08-28 Kimmo Varis * gui/mainwindow.cpp: GUI: Fix compiling. 2010-08-27 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp, test/testunusedvar.cpp: Tokenizer::simplifyInitVar : Refactorings and fixes related to ticket #1989 2010-08-27 Daniel Marjamäki * lib/checkclass.cpp, lib/checkclass.h, lib/checkmemoryleak.cpp, lib/cppcheck.cpp, lib/preprocessor.cpp, lib/settings.cpp, lib/settings.h, lib/tokenize.cpp, test/testmemleak.cpp, test/testpreprocessor.cpp, test/testsimplifytokens.cpp: Added --debug-warnings that we can use to enable various debug warnings 2010-08-26 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #1984 (false positive: syntax error in for loop (< -operator)) 2010-08-26 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #1985 (false positive: syntax error in try catch-block with for()-loop inside) 2010-08-26 Daniel Marjamäki * lib/executionpath.cpp: quick fix for #1969 (False positive: Uninitialized variable when exit() is called before variable is used.) 2010-08-26 Daniel Marjamäki * lib/checkclass.cpp, test/testunusedprivfunc.cpp: Fixed #1966 (False positive: Unused private function (virtual function in base class)) 2010-08-26 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1945 (False positives when a for loop header is in a macro) 2010-08-26 Daniel Marjamäki * lib/preprocessor.cpp, test/testpreprocessor.cpp: Fixed #1951 (Preprocessor: Compound macro statements not handled correctly) 2010-08-26 Robert Reif * lib/tokenize.cpp, lib/tokenize.h, test/testsimplifytokens.cpp: Tokenizer::simplifyTypedef: Report about unhandled typedefs. Ticket: #1821 2010-08-26 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #1981 (false positive: syntax error on template operator <) 2010-08-26 Robert Reif * lib/tokenize.cpp: Code cleanup 2010-08-25 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp, test/testtokenize.cpp: Tokenizer: If syntax errors are found then don't return a token list. Ticket: #1961 2010-08-25 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Tokenizer: Detect some syntax errors when trying to use templates. Ticket: #1961 2010-08-25 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp, test/testtokenize.cpp, test/testunusedvar.cpp: fix 2 problems related to ticket 1976: 1. nested unnamed anonymous structures and unions were not supported. 2. declaration split up in class had bug if proceeded by access specifier. 2010-08-25 Daniel Marjamäki * gui/helpwindow.cpp, gui/helpwindow.h, gui/mainwindow.cpp: GUI: some fixes of help * moved the help file to the application folder * use absolute path instead of relative path for helpfile * show warning messages if help file doesn't exist or fails to be loaded 2010-08-25 Kimmo Varis * gui/mainwindow.cpp, gui/mainwindow.h: GUI: Disable project opening while checking files. 2010-08-25 Kimmo Varis * gui/mainwindow.cpp, gui/mainwindow.h: GUI: Fix enabling project closing action. Project closing action was not enabled when the project file was opened from the checked directory. Also update the window caption to contain project file name that was opened from the checked directory. 2010-08-25 Robert Reif * lib/tokenize.cpp: Fixed gcc compiler warning about uninitialized variable tok1. Ticket: #1965 2010-08-25 Kimmo Varis * gui/mainwindow.h: GUI: Fix GCC build failure because of copy-paste error. 2010-08-25 Kimmo Varis * gui/mainwindow.cpp: Fixed #1978 (Fix compiler warnings in GUI (MainWindow::mExiting’ will be initialized after...)) 2010-08-25 Kimmo Varis * gui/mainwindow.cpp, gui/mainwindow.h: Fixed #1977 (GUI crashes when checking a directory) The GUI was crashing if no project files were in checked directory. I missed this case in my own testing because I had created test project files for each directory. Whoops! Anyway, this now also makes silently loaded project files (project file residing in directory but not load by the user) as normal projects in the GUI. 2010-08-24 Daniel Marjamäki * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #1948 (C++ class scoping not followed) 2010-08-24 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #1936 (Internal error. Token::Match called with varid 0.) 2010-08-24 Daniel Marjamäki * lib/checkmemoryleak.cpp: Fixed #1960 (cppcheck hangs with 100% cpu load) 2010-08-24 Kimmo Varis * gui/mainwindow.cpp: GUI: Fix for loading "oldstyle" project file. 2010-08-24 Kimmo Varis * : Merge remote branch 'remotes/kimmo/loadable-project' Conflicts: gui/gui.qrc gui/mainwindow.cpp gui/mainwindow.h 2010-08-23 Daniel Marjamäki * gui/gui.qrc, gui/helpwindow.cpp, gui/helpwindow.ui: GUI: Added icons to the help window. 2010-08-23 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #1970 (Internal error. CheckClass::SpaceInfo::getVarList found variable '_root' with varid 0.) 2010-08-23 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #1967 (Tokenizer::setVarid doesn't set variable value (list of function pointers)) 2010-08-23 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Tokenizer: Simplified the bitfields handling. This patch just looks for the bitfield signature but doesn't care about the type. I don't think any other code would have this same signature so it should be OK. We could add code to only look in structures and classes but I don't think that is necessary. Ticket: #1956 2010-08-22 Robert Reif * lib/token.cpp, lib/token.h, lib/tokenize.cpp: Refactoring handling of microsoft types. Ticket: #1956 2010-08-22 Robert Reif * lib/token.cpp, lib/tokenize.cpp, test/testtokenize.cpp: Tokenizer::simplifyBitfields: fixed more issues. Ticket #1956 2010-08-22 Robert Reif * lib/tokenize.cpp, test/testtokenize.cpp: Tokenizer: better handling of bitfields. Ticket: #1956 2010-08-22 Robert Reif * lib/tokenize.cpp, test/testtokenize.cpp: Tokenizer: simplify DECLARE_DYNAMIC and DECLARE_DYNCREATE 2010-08-22 Kimmo Varis * cppcheck.cppcheck: GUI: Add project file for Cppcheck. 2010-08-21 Kimmo Varis * gui/mainwindow.cpp: GUI: Fix bug that same defines were added to list several times. 2010-08-21 Kimmo Varis * gui/projectfile.txt: Improve project file documentation. 2010-08-21 Kimmo Varis * gui/mainwindow.cpp: GUI: Use rootpath from Project file. If rootpath is given in project file then use it as a current directory. Also check if paths given in project file are relative and use rootpath as base path for relative paths. 2010-08-21 Robert Reif * lib/tokenize.cpp, test/testtokenize.cpp: Tokenizer: simplify bitfields. Ticket: #1956 2010-08-21 Kimmo Varis * gui/project.cpp, gui/projectfile.ui, gui/projectfiledialog.cpp, gui/projectfiledialog.h: GUI: Add project root path to Project file -dialog. 2010-08-21 Daniel Marjamäki * gui/helpwindow.cpp, gui/helpwindow.ui: GUI: updated helpwindow ui 2010-08-21 Daniel Marjamäki * gui/mainwindow.cpp, gui/mainwindow.h: GUI: Fixed help window leaks and made sure it is closed when the gui is closed 2010-08-21 Robert Reif * lib/tokenize.cpp, test/testtokenize.cpp: Tokenizer: handle DECLARE_DYNAMIC. Ticket: #1956 2010-08-21 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1965 (tokenizer::simplifyEnum add support for C++0x enums) 2010-08-20 Kimmo Varis * gui/projectfile.cpp, gui/projectfile.h, gui/projectfile.txt: GUI: Add new optional root-element to project file. Add support for new root-element to project file. This element defines project root directory if given. If not given then project root is directory where the project file is located. 2010-08-20 Daniel Marjamäki * gui/help/online-help.qhp: GUI: fixed the online-help.qhp file listing 2010-08-20 Daniel Marjamäki * : GUI: Removed the help collection file because it didn't work on different Qt setups 2010-08-20 Daniel Marjamäki * gui/gui.pro, gui/gui.qrc, gui/help/ch01.html, gui/help/ch02.html, gui/help/ch02s02.html, gui/help/ch02s03.html, gui/help/ch02s04.html, gui/help/ch02s05.html, gui/help/ch02s06.html, gui/help/ch02s07.html, gui/help/ch02s08.html, gui/help/ch03.html, gui/help/ch04.html, gui/help/ch05.html, gui/help/ch06.html, gui/help/ch07.html, gui/help/ch08.html, gui/help/ch09.html, gui/help/ch10.html, gui/help/ch10s02.html, gui/help/ch10s03.html, gui/help/ch10s04.html, gui/help/ch10s05.html, gui/help/index.html, gui/help/online-help.qhp, gui/helpwindow.cpp, gui/helpwindow.h, gui/helpwindow.ui, gui/mainwindow.cpp: GUI: Updated online-help. This is still under work. 2010-08-20 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: Fixed #1964 (False positive: function can be const (get this)) 2010-08-20 Daniel Marjamäki * gui/mainwindow.cpp: astyle formatting 2010-08-20 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Tokenizer::setVarId : fixed problem for class members 2010-08-20 Daniel Marjamäki * cli/cppcheck.vcproj, cli/cppcheck.vcxproj, lib/lib.vcproj, lib/lib.vcxproj, test/test.vcproj, test/test.vcxproj: updates of Visual Studio files 2010-08-20 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: Fixed #1954 (False positive: function can be const (derived class)) 2010-08-20 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1963 (typedef array incorrectly simplified) 2010-08-19 Kimmo Varis * gui/mainwindow.cpp: GUI: Prevent opening new files or directories when project file loaded. 2010-08-19 Kimmo Varis * gui/mainwindow.cpp: GUI: Set current directory when loading a project file. 2010-08-19 Daniel Marjamäki * : GUI: Added generated file online-help.qhc because it is not yet autogenerated when building 2010-08-19 Daniel Marjamäki * gui/gui.qrc, gui/help/buildhelp.bat, gui/help/index.html, gui/help/online-help.qhcp, gui/help/online-help.qhp: GUI: added simple help file 2010-08-19 Daniel Marjamäki * gui/gui.pro, gui/mainwindow.cpp: GUI: quick fix for #1957 (Unable to compile gui.pro with Qt Creator in Windows) 2010-08-19 Kimmo Varis * gui/gui.qrc, gui/main.ui: GUI: Add icon for Open Project and add it to toolbar. 2010-08-18 Daniel Marjamäki * lib/checkclass.cpp, lib/checkclass.h, lib/tokenize.cpp, lib/tokenize.h, test/testclass.cpp, test/testsimplifytokens.cpp, test/testtokenize.cpp: Symbol database: bug fixes. Ticket: #1895 2010-08-18 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #1955 (cppcheck hangs with 100% cpu load) 2010-08-17 Daniel Marjamäki * lib/tokenize.cpp, test/testpreprocessor.cpp: Fixed #1944 (segfault in Tokenizer::simplifyLogicalOperator) 2010-08-17 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: #1943 (segmentation fault of cppcheck (= default)) 2010-08-17 Daniel Marjamäki * lib/checkstl.cpp, test/teststl.cpp: Fixed #1946 ('Dereferenced iterator erased' false positive) 2010-08-17 Kimmo Varis * gui/project.cpp, gui/projectfile.ui, gui/projectfiledialog.cpp, gui/projectfiledialog.h: GUI: Add check paths field to Project File -dialog. 2010-08-17 Robert Reif * lib/checkclass.cpp, lib/checkclass.h: Symbol database: Fixed the error reporting so errors are shown in the gui. Ticket: #1895 2010-08-17 Kimmo Varis * gui/mainwindow.cpp: GUI: Set project filename to main window caption. When project file is closed the caption is emptied. 2010-08-16 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #1942 (false positive: uninitialized variable in __asm__ statement) 2010-08-16 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: Symbol database: fixed problems with namespaces. Ticket: #1895 2010-08-16 Daniel Marjamäki * lib/checkobsoletefunctions.cpp, lib/checkobsoletefunctions.h, lib/tokenize.cpp, test/testtokenize.cpp: Fixed #1941 (Internal error::Space Info::getVarList found variable with varid 0) 2010-08-15 Kimmo Varis * gui/mainwindow.cpp: GUI: Leave new project file open and selected. When user creates new project file one probably wants to keep using the same project file. So leave it open for use. 2010-08-15 Sébastien Debrard * lib/checkobsoletefunctions.cpp, lib/checkobsoletefunctions.h: Refactoring of obsolete functions checks. Ticket: #1940 2010-08-15 Daniel Marjamäki * lib/checkobsoletefunctions.cpp, lib/checkobsoletefunctions.h, lib/checkother.cpp, lib/checkother.h, test/testother.cpp: Reverted 7398453cb09aa9f726ac9b19ee2feadf27664744 2010-08-15 Sébastien Debrard * lib/checkobsoletefunctions.cpp, lib/checkobsoletefunctions.h, lib/checkother.cpp, lib/checkother.h, test/testother.cpp: Refactoring of obsolete functions checks. Ticket: #1940 2010-08-15 Daniel Marjamäki * gui/applicationlist.cpp: GUI: Use Notepad++ by default in windows. Ticket: #1931 2010-08-15 Tim Gerundt * gui/cppcheck_de.ts: Fixed #1916 (gui: Update german translation) 2010-08-15 Kimmo Varis * gui/main.ui, gui/mainwindow.cpp, gui/mainwindow.h: GUI: Add menuitem to edit open project file. Earlier we opened project file only for editing. But now that we really use project files we need separate feature for editing them. 2010-08-15 Daniel Marjamäki * lib/tokenize.cpp, lib/tokenize.h, test/testtokenize.cpp: Variable Id: Fixed various bugs related to templates and bitfields. Ticket: #1928 2010-08-15 Kimmo Varis * gui/main.ui, gui/mainwindow.cpp, gui/mainwindow.h: GUI: Add menuitem to close open project file. 2010-08-15 Kimmo Varis * gui/mainwindow.cpp, gui/mainwindow.h, gui/project.h: GUI: Open project file and check contained paths. Now we load user-selected project file and start checking paths it contains. Project file can be anywhere as long as it contains valid path(s) to check. 2010-08-15 Daniel Marjamäki * lib/tokenize.cpp: removed unused variable 'dot' 2010-08-15 Daniel Marjamäki * Makefile, tools/dmake.cpp: Disabled the -Wconversion. There are too many compiler warnings currently when using it. 2010-08-15 Daniel Marjamäki * lib/checkclass.cpp, test/testclass.cpp: quick fix for #1905 (false positive: the function '...' can be declared as const (member array is assigned)) 2010-08-15 Daniel Marjamäki * gui/applicationlist.cpp: astyle formatting 2010-08-15 Robert Reif * lib/checkclass.cpp, lib/checkclass.h: Symbol database: report error when it is detected that a variable id is missing. Ticket: #1928 2010-08-15 Erik Lax * gui/applicationlist.cpp: Fixed #1931 (GUI should try to detect the best possible editor) 2010-08-15 Erik Lax * lib/checkclass.cpp, test/testunusedprivfunc.cpp: Fixed #1932 (false positive: unused private function) 2010-08-14 Zachary Blair * lib/checkother.cpp, lib/checkother.h, test/testother.cpp: Fixed #162 (Initialisation of a variable by itself) 2010-08-14 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #1928 (missing varId for template class variable) 2010-08-14 Erik Lax * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #1935 (false negative: detect buffer overrun from network functions (recv, recvfrom..)) 2010-08-14 Sébastien Debrard * Makefile, lib/checkobsoletefunctions.cpp, lib/checkobsoletefunctions.h, lib/lib.pri, test/testobsoletefunctions.cpp: Fixed #1933 (Add checks for obsolete functions) 2010-08-14 Daniel Marjamäki * lib/errorlogger.cpp: ErrorLogger: Added better \n handling to the XML output 2010-08-14 Daniel Marjamäki * lib/checkother.cpp: dangerous scanf usage: Added verbose information 2010-08-14 Kimmo Varis * gui/projectfile.cpp, gui/projectfile.h, gui/projectfile.txt: GUI: Add check paths to project file. Add new element containing paths to check into the project file. This is for growing project files to real project files that can be loaded and selected from the GUI. And decoupling project files from the directory they reside. So you can put project file in any directory, load it and it checks paths listed. 2010-08-14 Daniel Marjamäki * lib/checkother.cpp, lib/checkother.h, test/testother.cpp: Added scanf check. Modified patch submitted by Eric Sesterhenn 2010-08-14 Ettl Martin * test/testdangerousfunctions.cpp: fixed unit test of dangerous functions 2010-08-14 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: Symbol database: Fixed bug when end of namespace wasn't found. Ticket: #1895 2010-08-14 Daniel Marjamäki * lib/checkdangerousfunctions.cpp, lib/checkdangerousfunctions.h: dangerous functions: removed 'scanf' because it can be used in a safe way 2010-08-13 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: Symbol database: fixed linenr problem in virtual destructors check 2010-08-13 Daniel Marjamäki * lib/checkdangerousfunctions.cpp: Dangerous functions: Improved error messages 2010-08-13 Daniel Marjamäki * Makefile, tools/dmake.cpp: dmake: removed _GLIBCXX_DEBUG because it doesn't work in cygwin. added -Wconversion 2010-08-13 Erik Lax * lib/checkstl.cpp, test/teststl.cpp: Fixed #1930 (false negative: bad iterators checks fails to detect bugs with preincrement) 2010-08-13 Robert Reif * lib/checkclass.cpp, lib/checkclass.h, test/testclass.cpp: Symbol database: Refactoring virtual destructors check. Ticket: #1895 2010-08-13 Robert Reif * lib/checkclass.cpp: Symbol database: move finding base classes until after all classes are found because of template instantiation. Ticket: #1895 2010-08-13 Robert Reif * lib/checkclass.cpp, lib/checkclass.h: Symbol database: refactoring variable handling. Ticket: #1895 2010-08-12 Daniel Marjamäki * man/manual.docbook: doc: added a little section about excluding a file or folder from checking 2010-08-12 Daniel Marjamäki * cli/cppcheckexecutor.cpp, lib/cppcheck.cpp, lib/settings.cpp, lib/settings.h, man/cppcheck.1.xml: Added command line option --report-progress. ticket: #1926 2010-08-12 Ettl Martin * Makefile, lib/checkbufferoverrun.cpp, lib/preprocessor.cpp: actived Wconversion flag in Makefile and fixed almost all Warnings from gcc-4.4 2010-08-12 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: Symbol database: fix a small bug and add more tests. ticket: #1895 2010-08-11 Robert Reif * lib/checkclass.cpp, lib/checkclass.h: Symbol database: better handling of 'friend'. ticket: #1895 2010-08-11 Daniel Marjamäki * lib/tokenize.cpp: Optimisation in Tokenizer::tokenize 2010-08-11 Kimmo Varis * gui/FileList.cpp, gui/FileList.h, gui/filelist.cpp, gui/filelist.h, gui/mainwindow.cpp: Fix filenames starting with capital letters. I accidentally committed two new files with filenames starting with capital letters from Windows machine. The Linux build breakage was fixed by fixing the include lines. But the correct fix is to fix filenames as we are using all lower letter filenames in this project. 2010-08-10 Ettl Martin * gui/FileList.cpp, gui/mainwindow.cpp: gui: fixed regression du to case sensitifity of Linux 2010-08-10 Daniel Marjamäki * lib/tokenize.cpp: Optimisation: Made inner loop in Tokenizer::setVarId faster 2010-08-10 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Tokenizer::setVarId : Fixed a problem when using static class members 2010-08-10 Robert Reif * lib/checkclass.cpp, lib/checkclass.h: Symbol database: Refactoring 2010-08-09 Kimmo Varis * gui/mainwindow.cpp: GUI: Use canonical path as checking path. Cleanup the path name before starting checking and saving it. 2010-08-09 Kimmo Varis * gui/FileList.cpp, gui/FileList.h, gui/gui.pro, gui/mainwindow.cpp, gui/mainwindow.h: GUI: Implement FileList class to handle list of files to check. Create a list of files to check. Currently we only read this list once. But later on we can refer to this list to for example determine which files were checked and which not in aborted checking. 2010-08-10 Robert Reif * test/testclass.cpp: const function check: Added more unit tests 2010-08-10 Robert Reif * gui/resultstree.cpp, gui/resultstree.h, gui/settingsdialog.cpp, gui/settingsdialog.h, gui/translationhandler.cpp, gui/translationhandler.h, lib/checkbufferoverrun.cpp: Fixed #1925 (fix some cppcheck warnings in cppcheck) 2010-08-09 Robert Reif * test/testclass.cpp: Virtual destructors: extended and fixed the testing 2010-08-09 Robert Reif * test/testclass.cpp: Fixed typo in testcase. Ticket: #1311 2010-08-09 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: Fixed #1922 (False positive: function can be const when both const and non-const functions are provided.) 2010-08-09 Robert Reif * lib/checkclass.cpp, lib/checkclass.h, test/testclass.cpp: Symbol database: Enhancements and fixes. Ticket: #1895 2010-08-08 Daniel Marjamäki * lib/tokenize.cpp: Optimising: Tokenizer::setVarId when setting variable ids for struct/class members 2010-08-08 Daniel Marjamäki * lib/token.cpp: astyle formatting 2010-08-08 Daniel Marjamäki * lib/token.cpp: Optimisation: Optimised firstWordEquals 2010-08-08 Daniel Marjamäki * lib/tokenize.cpp: Tokenizer: 'simplifyCalculations();' should have the same results as 'while (simplifyCalculations());' 2010-08-08 Daniel Marjamäki * cli/cppcheckexecutor.cpp: CLI: increase delay between progress reports from 1s to 10s 2010-08-08 Daniel Marjamäki * cli/cppcheckexecutor.cpp, cli/cppcheckexecutor.h, lib/cppcheck.cpp, lib/cppcheck.h: Refactoring: Cppcheck::reportProgress needs to call _errorLogger::reportProgress. Ticket: #1625 2010-08-08 Daniel Marjamäki * lib/tokenize.cpp: Refactoring: Made Tokenizer::simplifyCalculations a little faster 2010-08-07 Daniel Marjamäki * test/testpreprocessor.cpp: Visual Studio: Fixed unit tests. Ticket: #640 2010-08-07 Daniel Marjamäki * lib/checkother.cpp: Performance: Refactoring CheckOther::nullPointerStructByDeRefAndChec to make it faster 2010-08-07 Daniel Marjamäki * lib/preprocessor.cpp: visual studio: fixed a few compiler warnings (when saving istream::get result in a char) 2010-08-07 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1923 (False positive: Possible null pointer derefence in else if) 2010-08-07 Daniel Marjamäki * lib/checkclass.cpp, lib/checkclass.h, test/testclass.cpp: Fixed #1921 (false positive: the function '...' can be declared as const (inline friend)) 2010-08-07 Daniel Marjamäki * lib/checkother.cpp, test/testunusedvar.cpp: Fixed #1894 (unreadVariable false positive with const references) 2010-08-07 Daniel Marjamäki * lib/checkclass.cpp, lib/cppcheck.cpp, lib/settings.cpp, lib/settings.h, test/testclass.cpp: Fixed #1881 (false positive: The function '...' can be const (nonconst code is hidden inside #if)) 2010-08-07 Daniel Marjamäki * lib/checkclass.cpp, lib/checkclass.h: Symbol Database: Don't use it when it is not needed 2010-08-07 Daniel Marjamäki * lib/checkclass.h: Refactoring: Made CheckClass members private 2010-08-07 Daniel Marjamäki * test/testother.cpp: calculation in sizeof: added two more ASSERT_EQUALS to guard against false positives 2010-08-06 Daniel Marjamäki * lib/checkother.cpp, lib/checkother.h, test/testother.cpp: New check: look for calculation inside sizeof 2010-08-06 Daniel Marjamäki * lib/filelister.cpp, lib/tokenize.cpp: gcc: fixed some more -Wsign-conversion warnings 2010-08-06 Daniel Marjamäki * lib/checkbufferoverrun.cpp, lib/checkmemoryleak.cpp, lib/checkother.cpp, lib/cppcheck.cpp, lib/mathlib.cpp, lib/mathlib.h, lib/tokenize.cpp: gcc: fixed some more -Wsign-conversion warnings 2010-08-06 Daniel Marjamäki * Makefile, lib/checkbufferoverrun.cpp, lib/checkbufferoverrun.h, lib/checkclass.cpp, lib/filelister.cpp, lib/preprocessor.cpp, lib/token.cpp, test/testthreadexecutor.cpp, tools/dmake.cpp: Fixed #1487 (fix gcc compiler warnings) 2010-08-06 Daniel Marjamäki * lib/mathlib.cpp: gcc: Fixed some compiler warnings when using -Wsign-conversion. Ticket: #1487 2010-08-06 Daniel Marjamäki * lib/checkother.cpp, lib/checkother.h: gcc: Fixed some compiler warnings when using -Wsign-conversion. Ticket: #1487 2010-08-06 Daniel Marjamäki * lib/preprocessor.cpp, lib/preprocessor.h: gcc: Fixed some compiler warnings when using -Wsign-conversion. Ticket: #1487 2010-08-06 Daniel Marjamäki * lib/settings.h: gcc: Fixed some compiler warnings when using -Wsign-conversion. Ticket: #1487 2010-08-06 Daniel Marjamäki * lib/tokenize.cpp: gcc: Fixed some compiler warnings when using -Wsign-conversion. Ticket: #1487 2010-08-06 Daniel Marjamäki * lib/checkmemoryleak.cpp, lib/tokenize.cpp, lib/tokenize.h: gcc: fixed some compiler warnings when using -Wsign-conversion 2010-08-06 Daniel Marjamäki * lib/checkclass.h, lib/cppcheck.cpp, lib/tokenize.cpp, lib/tokenize.h: Borland C++: Fixed compiler errors 2010-08-06 Daniel Marjamäki * lib/checkmemoryleak.cpp, lib/cppcheck.cpp, lib/cppcheck.h, lib/errorlogger.h: Visual Studio: Fixed warnings 2010-08-06 Daniel Marjamäki * lib/preprocessor.cpp: Preprocessor: Compiler dependent parsing of ''. Maybe it should be possible to control it from the commandline instead. Ticket: #640 2010-08-05 Daniel Marjamäki * lib/token.h: suppress visual studio warnings about loosing data when calculating Token::progressValue 2010-08-05 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Memory leaks: better handling of 'return strcmp(..' etc 2010-08-05 Daniel Marjamäki * : commit 2450a80556def477ff43459484ca8ace3dc17e57 Author: Daniel Marjamäki Date: Thu Aug 5 19:02:05 2010 +0200 2010-08-05 Ettl Martin * lib/checkbufferoverrun.cpp: fixed compiler Warning in lib/checkbufferoverrun about comparison of signed and unsigned variable 2010-08-05 Daniel Marjamäki * test/testmemleak.cpp: Memory leaks: Added ASSERT_EQUALS near the TODO_ASSERT_EQUALS 2010-08-05 Daniel Marjamäki * lib/checkbufferoverrun.cpp, lib/checkbufferoverrun.h, test/testbufferoverrun.cpp: Buffer overflow: Fixed two TODO test cases 2010-08-05 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: null pointers: fixed TODO assertion - dereference pointer in function call and then checking that it is not NULL 2010-08-05 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: null pointers: fixed todo test case 2010-08-04 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Memory leaks: refactoring return handling 2010-08-04 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: uninitialized variables: fixed false negatives when uninitialized pointer data is read 2010-08-04 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Memory leaks: don't translate 'return p[10];' to 'return use ;' 2010-08-04 Daniel Marjamäki * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #1670 (False negative: Array index out of bounds in return statement) 2010-08-04 Daniel Marjamäki * lib/settings.cpp: astyle formatting 2010-08-03 Daniel Marjamäki * lib/settings.cpp, test/testsettings.cpp: Fixed #1919 (option '--suppressions file' can not work when filename includes colon) 2010-08-03 Daniel Marjamäki * lib/checkbufferoverrun.cpp, lib/cppcheck.cpp, lib/cppcheck.h, lib/errorlogger.cpp, lib/errorlogger.h, lib/preprocessor.cpp, lib/token.cpp, lib/token.h, lib/tokenize.cpp: Added ErrorLogger::reportProgress and removed ErrorLogger::ReportProgress. This will make it easier for GUI and other clients to display progress information. 2010-08-02 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #1833 (memory leak detected in version 1.37 not detected in 1.43) 2010-08-02 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: memory leaks: better handling of 'loop { dealloc ; alloc ; }' 2010-08-02 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: memory leaks: simplify 'callfunc ; ;' 2010-08-02 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: memory leaks: better checking of function calls. If there are statements after the function call it is unlikely the function call is noreturn 2010-08-02 Cary R * .gitignore: Fixed #1915 (Patch to ignore cppcheck.exe and testrunner.exe) When compiling in the cygwin environment the executables have a .exe extension, so to keep the git status clean ignore both cppcheck.exe and testrunner.exe. 2010-07-31 Kimmo Varis * runastyle, runastyle.bat: Improve Astyle scripts to use variables. Using variables for style and options makes it easier to edit the scripts. Also avoids copy/paste errors when editing scripts. 2010-07-31 Kimmo Varis * cli/threadexecutor.cpp, lib/cppcheck.cpp, test/testthreadexecutor.cpp: Astyle cleanup with new Astyle options. 2010-07-31 Kimmo Varis * runastyle, runastyle.bat: Ticket #1914 Improve Astyle for parenthesis style Tell Astyle to remove extra spaces around parenthesis. 2010-07-31 Daniel Marjamäki * Makefile, lib/check.h, lib/checkexceptionsafety.cpp, lib/checkother.cpp, lib/checkstl.cpp, lib/errorlogger.cpp, lib/filelister_unix.cpp, lib/settings.cpp, lib/settings.h, lib/tokenize.h: cleanup headers 2010-07-30 Kimmo Varis * cli/threadexecutor.cpp: Astyle cleanup. 2010-07-24 Kimmo Varis * runastyle, runastyle.bat: Ticket #1899 Update Astyle flags to match older Astyle behavior. 2010-07-30 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #1912 (False positive: memory leak (calling noreturn function)) 2010-07-28 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1909 (### Internal error in Cppcheck. Please report it) 2010-07-28 Kimmo Varis * win_installer/cppcheck.wxs: Fixing ticket #1908 (setup don't install GUI translations) Patch submitted by Tim Gerundt. 2010-07-27 Ettl Martin * lib/errorlogger.cpp: checkheaders: removed redundant include (token.h) from errorlogger.cpp 2010-07-27 Daniel Marjamäki * lib/preprocessor.cpp: Fixed #1864 (Relative Path of #include-File doesn't work) 2010-07-27 Daniel Marjamäki * lib/tokenize.cpp: Fixed a vs compiler warning. Ticket: #1901 2010-07-27 Kimmo Varis * gui/gui.pro: GUI: Add lib to include- and dependency-directories. 2010-07-27 Kimmo Varis * cli/cppcheck.vcproj, cli/cppcheck.vcxproj, gui/gui.pro, lib/lib.vcproj, lib/lib.vcxproj, test/test.vcproj, test/test.vcxproj: Windows: Add _CRT_SECURE_NO_WARNINGS define. The _CRT_SECURE_NO_WARNINGS define suppresses some Windows-specific compile warnings. Windows has "secure" versions of some functions and compiler outputs warnings that those "secure" versions should be used instead. Since other platforms don't have those functions we just suppress this warning for now on. 2010-07-27 Daniel Marjamäki * Makefile, tools/dmake.cpp: updated dmake. updated Makefile (includes cleanup). 2010-07-27 Emmanuel Blot * .gitignore, Cppcheck.xcodeproj/project.pbxproj: Fix build error on XCode 2010-07-27 Daniel Marjamäki * lib/errorlogger.cpp: Cleanup redundant include 2010-07-26 Zachary Blair * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #1889 (false positive: Common realloc mistake) 2010-07-26 Ettl Martin * gui/mainwindow.h: fixed regression due to missing settings.h 2010-07-26 Daniel Marjamäki * lib/errorlogger.h, lib/preprocessor.cpp, test/testpreprocessor.cpp, test/testsimplifytokens.cpp, test/testtokenize.cpp: Refactoring: Cleanup include that checkheaders reported as not needed 2010-07-26 Kimmo Varis * lib/cppcheck.cpp: Remove unneeded path separator conversion. 2010-07-26 Kimmo Varis * lib/cppcheck.cpp: Fix path separators for couple of messages. 2010-07-26 Kimmo Varis * lib/filelister_win32.cpp: Windows: convert to internal separators when finding files. 2010-07-26 Kimmo Varis * cli/cppcheck.vcxproj, cli/cppcheck.vcxproj.filters, lib/lib.vcxproj, lib/lib.vcxproj.filters, test/test.vcxproj, test/test.vcxproj.filters: Update VS 2010 project files. 2010-07-26 Robert Reif * lib/checkclass.cpp, lib/checkclass.h, lib/token.cpp, lib/token.h, test/testclass.cpp, test/testconstructors.cpp: Create a symbol database 2010-07-25 Daniel Marjamäki * lib/tokenize.cpp: Fixed #1887 (internal error in GLee) 2010-07-25 Daniel Marjamäki * lib/checkbufferoverrun.cpp, lib/errorlogger.cpp, lib/errorlogger.h, lib/preprocessor.cpp, lib/tokenize.cpp: Refactoring: Report progress when checking takes a long time. Ticket: #1868 2010-07-25 Daniel Marjamäki * lib/token.h: Refactoring: changed 'bool varid=0' to 'bool varid=false' 2010-07-25 Daniel Marjamäki * lib/preprocessor.cpp, test/testpreprocessor.cpp: Fixed #1383 (Preprocessor: define - ifndef problem) 2010-07-24 Daniel Marjamäki * lib/mathlib.h, lib/preprocessor.cpp, lib/preprocessor.h, lib/tokenize.cpp, lib/tokenize.h, test/testtokenize.cpp: Refactoring: Cleanup headers using checkheaders 2010-07-24 Daniel Marjamäki * lib/checkbufferoverrun.cpp: CheckBufferOverrun: report progress. Ticket: #1868 2010-07-24 Daniel Marjamäki * lib/errorlogger.cpp, lib/errorlogger.h, lib/tokenize.cpp: Report progress when checking a file takes a long time. Ticket: #1868 2010-07-24 Daniel Marjamäki * lib/cppcheck.h: Refactoring: Removed unused variable _xmllist 2010-07-24 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1893 (false positive: dereferencing null pointer (try/catch)) 2010-07-24 Daniel Marjamäki * lib/token.cpp: Refactoring Token::Match: Report errors through ErrorLogger. Ticket: #1839 2010-07-24 Daniel Marjamäki * lib/tokenize.cpp: Refactoring Tokenizer::syntaxError 2010-07-24 Daniel Marjamäki * lib/checkbufferoverrun.cpp, lib/mathlib.cpp, lib/mathlib.h, lib/tokenize.cpp: Refactoring MathLib: Report errors through the tokenizer. Ticket: #1839 2010-07-24 Daniel Marjamäki * lib/tokenize.cpp: Refactoring: use MathLib add/sub instead of calculate 2010-07-23 Daniel Marjamäki * lib/cppcheck.cpp, lib/preprocessor.cpp, lib/settings.cpp, lib/settings.h, test/testsettings.cpp: Refactoring: Settings::addSuppression return error message and callers make sure it's reported properly. Ticket: #1839 2010-07-23 Daniel Marjamäki * lib/checkmemoryleak.cpp: Refactoring: Use Check::reportError instead of writing to std::cout. Ticket: #1839 2010-07-23 Daniel Marjamäki * lib/tokenize.cpp: Refactoring: Don't throw exceptions in the tokenizer upon errors. Ticket: #1866 2010-07-23 Daniel Marjamäki * lib/preprocessor.cpp, lib/preprocessor.h, test/testpreprocessor.cpp: Refactoring: The preprocessor will report errors instead of throwing exceptions. Ticket: #1866 2010-07-23 Daniel Marjamäki * lib/cppcheck.cpp, lib/settings.cpp, lib/settings.h: Refactoring: The Settings::addEnabled will return error message instead of throwing it. Ticket: #1866 2010-07-23 Daniel Marjamäki * lib/checkother.cpp: Variable scope: Improved verbose information (see also 7ef0296) 2010-07-22 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1891 (Internal error when enum assigned to sizeof without brackets) 2010-07-22 Daniel Marjamäki * lib/tokenize.cpp, lib/tokenize.h, test/testtokenize.cpp: Fixed #1828 (### Internal error in Cppcheck. Please report it.) 2010-07-21 Kimmo Varis * lib/preprocessor.cpp: Fix path separators for missing include files-message. 2010-07-21 Kimmo Varis * lib/cppcheck.cpp: Fixed #1892 (Verbosity setting set to false and not set back to original value) Verbosity was set to false to temporarily reduce printing messages. But it was not set back to its original value so rest of the messages that should have been printed for verbose setting enabled were not printed. 2010-07-21 Kimmo Varis * lib/preprocessor.cpp, test/testpreprocessor.cpp: Better fix for #1371. Now handles also system includes. And have couple of tests. 2010-07-21 Kimmo Varis * lib/preprocessor.cpp, lib/preprocessor.h, test/testpreprocessor.cpp: Use enum for header file types 2010-07-20 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: Fixed #1883 (false positive: (style) The function 'A::SetPos' can be const) 2010-07-19 Daniel Marjamäki * test/testcppcheck.cpp: filelocation-refactoring: Fixed unit tests in windows 2010-07-19 Daniel Marjamäki * cppcheck.cbproj, testrunner.cbproj: Borland C++: Updated project files 2010-07-19 Kimmo Varis * lib/filelister.h: Formatting and improving comments. 2010-07-19 Daniel Marjamäki * : pulled changes from kimmov (filelocation-refactor) 2010-07-19 Kimmo Varis * lib/cppcheck.cpp, lib/path.cpp: Remove './' from begin of paths when printing progress. 2010-07-19 Kimmo Varis * lib/errorlogger.cpp, lib/path.cpp, lib/path.h: Move path simplifying code to Path class. 2010-07-19 Robert Reif * lib/checkclass.cpp, lib/checkclass.h, test/testclass.cpp: Fixed #1883 (false positive: (style) The function 'A::SetPos' can be const) 2010-07-19 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #1865 (Tokenizer::simplifyRedundantParantheses: wrong handling of 'operator delete') 2010-07-19 Kimmo Varis * lib/path.cpp: Use std::replace() to replace chars in paths. 2010-07-19 Daniel Marjamäki * lib/checkother.cpp: --verbose: added more information for the variableScope error message. 2010-07-19 Kimmo Varis * : Merge remote branch 'remotes/kimmo/master' 2010-07-19 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1880 (false positive: Uninitialized array (initialized in subfunction)) 2010-07-19 Kimmo Varis * lib/errorlogger.h: Remove misleading comment. 2010-07-18 Zachary Blair * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #1856 (false positive: "pData" nulled but not freed upon failure) 2010-07-19 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: Fixed #1882 (false negative: function can be declared const) 2010-07-18 Robert Reif * lib/checkclass.cpp, lib/checkclass.h: Refactoring CheckClass::initializeVarList. Ticket #1811 2010-07-18 Daniel Marjamäki * lib/tokenize.cpp: fixed the mistake I made when applying patch 2010-07-18 Robert Reif * lib/checkclass.cpp, lib/tokenize.cpp, test/testconstructors.cpp: uninitialized class members: better handling of nested classes 2010-07-18 Kimmo Varis * : Merge remote branch 'origin/master' 2010-07-18 Martin Ettl * test/testother.cpp: #1880: added todo testcase (false positive: (error) Uninitialized variable: y) 2010-07-18 Martin Ettl * test/testmemleak.cpp: added a testcase for ticket #1879 2010-07-18 Daniel Marjamäki * lib/executionpath.cpp, test/testother.cpp: Fixed #1855 (false positive: uninitialized variable (function call in switch condition)) 2010-07-18 Daniel Marjamäki * lib/tokenize.cpp: use cppcheckError to report Tokenizer/Preprocessor error instead of std::cerr 2010-07-18 Daniel Marjamäki * lib/tokenize.cpp: Fixed #1843 (Tokenizer::createTokens() calls std::exit(0)) 2010-07-18 Kimmo Varis * gui/resultstree.cpp: GUI: Fix bug that every error item got own parent item. The code could not find existing parent item since items have paths with native separators and search was done with non-native path separators. 2010-07-18 Kimmo Varis * gui/mainwindow.cpp: Fixed #1870 (Wrong path in report) Current directory was set from first file in the list. That file could be in subdirectory when wrong path was set. Also getting absolute path was buggy. 2010-07-18 Kimmo Varis * gui/mainwindow.cpp: Fixed #1870 (Wrong path in report) Current directory was set from first file in the list. That file could be in subdirectory when wrong path was set. Also getting absolute path was buggy. 2010-07-18 Daniel Marjamäki * lib/checkunusedfunctions.cpp, test/testunusedfunctions.cpp: Fixed #1857 (XML tag no more included for unusedFunction error (1.44 regression)) 2010-07-18 Kimmo Varis * gui/threadresult.cpp, lib/errorlogger.cpp, lib/errorlogger.h: GUI: Avoid unnecessary path separator conversion. 2010-07-18 Robert Reif * lib/checkclass.cpp, lib/checkclass.h, test/testclass.cpp: Fixed #1311 (false negative: missing const not found in derived classes) 2010-07-17 Kimmo Varis * gui/mainwindow.cpp, gui/mainwindow.h: GUI: Close application cleanly when exiting while checking. Earlier commit allowed cppcheck to exit immediately while checking. This however leads crashes and error logs shown since the thread termination leaves things in inconsistent state. I thought cppcheck would close fast enough so these could be ignored. But apparently not. So this commits adds new bool mExiting for MainWindow and sets that to true when exiting while checking. When the checking is ready this attribute is checked and if it is true the application can now be cleanly exited. 2010-07-17 Kimmo Varis * gui/aboutdialog.cpp, gui/aboutdialog.h, gui/applicationdialog.cpp, gui/applicationdialog.h, gui/fileviewdialog.cpp, gui/fileviewdialog.h, gui/resultsview.cpp, gui/resultsview.h, gui/settingsdialog.cpp, gui/settingsdialog.h: GUI: Fix includes for dialogs/views. At first we created the GUI in the code and so needed all the layouts etc include to the code. Now when we are using UI files we don't need all those included. So clean them up. Also use forward declarations instead of includes in header files when possible. 2010-07-17 Kimmo Varis * gui/csvreport.cpp, gui/txtreport.cpp, gui/xmlreport.cpp: GUI: Ensure native path separators in reports. Ensure that native separators are used in saved reports. Reports may be parsed by other programs/scripts so it is important that paths are properly formatted. 2010-07-17 Kimmo Varis * gui/resultstree.cpp: GUI: Show paths with native separators in result tree. GUI used to show paths with / separator which is not native separator in Windows. So lets convert shown paths to native separators before adding them to the GUI. 2010-07-17 Kimmo Varis * .gitignore: Add *.orig files to gitignore. 2010-07-17 Kimmo Varis * gui/threadresult.cpp: GUI: Fix building after path handling refactorings. 2010-07-17 Kimmo Varis * cli/cppcheck.vcproj, lib/lib.vcproj, test/test.vcproj: Update Visual Studio projects. 2010-07-17 Kimmo Varis * lib/cppcheck.cpp, lib/mathlib.cpp, test/testthreadexecutor.cpp: Astyle cleanup. 2010-07-17 Kimmo Varis * Makefile, lib/errorlogger.cpp, lib/lib.pri, lib/path.cpp, lib/path.h: Add Path class for path handling routines. In this initial commit the Path class contains two methods for converting path separators. I want to move cppcheck path handling to direction that we internally have paths with / separator. And convert from/to native separators when needed. 2010-07-17 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: Fixed #1730 (False negative in 'variable not initialized in ctor') 2010-07-17 Robert Reif * lib/checkclass.cpp, lib/checkclass.h: Fixed #1875 (CheckClass::getVarList: simplify function use) 2010-07-17 Kimmo Varis * gui/cppcheck_de.ts, gui/cppcheck_en.ts, gui/cppcheck_fi.ts, gui/cppcheck_nl.ts, gui/cppcheck_pl.ts, gui/cppcheck_ru.ts, gui/cppcheck_se.ts: GUI: Update translation files. 2010-07-17 Kimmo Varis * : commit 6db365e6f7004872a6d1076ab6c73276af7c14f4 Author: Kimmo Varis Date: Sat Jul 17 01:27:40 2010 +0300 2010-07-16 Kimmo Varis * gui/common.h, gui/logview.cpp, gui/logview.h, gui/mainwindow.cpp: GUI: Remember log view size. 2010-07-16 Kimmo Varis * lib/errorlogger.cpp: Fix comment. 2010-07-16 Kimmo Varis * lib/errorlogger.cpp, lib/errorlogger.h: Remove unused ErrorLogger::_writemsg() methods. 2010-07-16 Kimmo Varis * gui/logview.cpp, gui/logview.h, gui/logview.ui: GUI: Add Clear-button to log view. 2010-07-16 Kimmo Varis * gui/logview.cpp, gui/logview.h, gui/logview.ui: GUI: Add close-button to log view. 2010-07-16 Kimmo Varis * gui/gui.pro, gui/logview.cpp, gui/logview.h, gui/logview.ui, gui/main.ui, gui/mainwindow.cpp, gui/mainwindow.h, gui/threadhandler.cpp, gui/threadresult.cpp, gui/threadresult.h: GUI: Add simple log view. Adding a simple log view which shows log messages the core code emits. 2010-07-16 Kimmo Varis * gui/cppcheck_de.ts, gui/cppcheck_en.ts, gui/cppcheck_fi.ts, gui/cppcheck_nl.ts, gui/cppcheck_pl.ts, gui/cppcheck_ru.ts, gui/cppcheck_se.ts, gui/mainwindow.cpp: Fixed #1853 (GUI: Allow closing gui.exe while checking) The GUI now asks if user wants to stop the current checking and exit the application. 2010-07-15 Robert Reif * lib/checkclass.cpp, test/testclass.cpp, test/testconstructors.cpp: Fixed #1375 (false negative: uninitialized member variables not found in nested class constructors) 2010-07-14 Kimmo Varis * lib/check.h, lib/checkmemoryleak.cpp, lib/checkunusedfunctions.cpp, lib/errorlogger.cpp, lib/errorlogger.h, lib/preprocessor.cpp, lib/tokenize.cpp: Refactor ErrorMessage constructor to take Severity::SeverityType. This removes lots of unneeded casting as everybody now uses the Severity::SeverityType. 2010-07-14 Kimmo Varis * : Merge remote branch 'remotes/kimmo/severity-refactor' 2010-07-14 Kimmo Varis * gui/threadresult.cpp: GUI: Fix compile after Severity changes. 2010-07-14 Kimmo Varis * lib/errorlogger.h: Add debug-severity to Severity::SeverityType. 2010-07-14 Kimmo Varis * lib/errorlogger.h: Make Severity::none to match and output empty string. 2010-07-14 Kimmo Varis * lib/errorlogger.cpp, lib/errorlogger.h, lib/preprocessor.cpp: Refactor ErrorMessage's severity to Severity::SeverityType. 2010-07-14 Robert Reif * lib/checkclass.cpp, lib/checkclass.h, test/testclass.cpp, test/testconstructors.cpp: CheckClass: Improvements and refactorings for constructors and variables checking 2010-07-14 Daniel Marjamäki * lib/checkclass.cpp, test/testclass.cpp: Fixed #1851 (false positive: Member variable not initialized int ctor) 2010-07-14 Kimmo Varis * cli/cppcheckexecutor.cpp, cli/threadexecutor.cpp, lib/cppcheck.cpp, lib/errorlogger.cpp, lib/errorlogger.h, test/testcppcheck.cpp, test/testsuite.cpp: Rename ErrorMessage::toText() to ErrorMessage::toString(). 2010-07-14 Kimmo Varis * lib/check.h, lib/checkmemoryleak.cpp, lib/checkunusedfunctions.cpp, lib/errorlogger.h: Rename Severity::stringify() to Severity::toString(). 2010-07-14 Kimmo Varis * lib/check.h, lib/checkmemoryleak.cpp, lib/checkmemoryleak.h, lib/errorlogger.h: Rename Severity::e to Severity::SeverityType. 2010-07-14 Kimmo Varis * cli/cppcheck.vcproj: Add cppcheckexecutor.h to VS project. 2010-07-14 Kimmo Varis * gui/erroritem.h, gui/main.cpp, gui/resultsview.cpp, gui/resultsview.h, gui/threadhandler.cpp, gui/threadresult.cpp, gui/threadresult.h: GUI: Sent ErrorItem with Error -signal. This commit modifies and registers ErrorItem as proper metatype so it can be used with Qt signals. Then sending Error-signals is refactored so that ErrorItem instances are sent instead of several different arguments that already contained couple of lists. 2010-07-14 Daniel Marjamäki * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #1850 (An access to a nested std::map via a negative integer key is reported as 'Array index out of bounds') 2010-07-14 Daniel Marjamäki * lib/checkstl.cpp: gcc: fixed compiler warning (suggest parantheses) 2010-07-14 Daniel Marjamäki * lib/checkstl.cpp, test/teststl.cpp: Fixed #1844 (False positive: invalid iterator when erase() is used in if-else (with continue)) 2010-07-13 Daniel Marjamäki * man/manual.docbook: manual: Added a chapter about the GUI 2010-07-13 Kimmo Varis * gui/cppcheck_de.ts, gui/cppcheck_en.ts, gui/cppcheck_fi.ts, gui/cppcheck_nl.ts, gui/cppcheck_pl.ts, gui/cppcheck_ru.ts, gui/cppcheck_se.ts: GUI: Update translation files. 2010-07-13 Kimmo Varis * : commit b92f7b854a33954da4a1559767207aabc2ab6111 Author: Kimmo Varis Date: Tue Jul 13 12:46:28 2010 +0300 2010-07-13 Kimmo Varis * gui/projectfiledialog.cpp: GUI: Remove ; from the end of the include/define strings in dialog. 2010-07-13 Kimmo Varis * gui/mainwindow.cpp, gui/mainwindow.h: GUI: Rename project file related methods in mainwindow. 2010-07-13 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1846 (False positive with -s: Variable hides typedef with same name) 2010-07-13 Daniel Marjamäki * : commit ab088bcec9a64155a5ae547680483520bc49de06 Author: Robert Reif Date: Tue Jul 13 08:01:57 2010 +0200 2010-07-13 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: Fixed #1847 (False positive: Method using std::swap<>() can be declared const) 2010-07-13 Daniel Marjamäki * : commit 51beb6d01a0aca3982aa99ac5bd98fb210f65ede Author: Martin Ettl Date: Mon Jul 12 20:02:58 2010 +0200 2010-07-13 Kimmo Varis * gui/project.cpp, gui/project.h: GUI: Add two new files I forgot to add earlier. 2010-07-12 Daniel Marjamäki * gui/xmlreport.cpp: Fixed #1849 (GUI: failed to build gui) 2010-07-12 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Variable Id: fixed issue with function call. Ticket: #1848 2010-07-12 Martin Ettl * gui/main.cpp: gui/main added spaces between template brackets 2010-07-12 Kimmo Varis * gui/cppcheck_de.ts, gui/cppcheck_en.ts, gui/cppcheck_fi.ts, gui/cppcheck_nl.ts, gui/cppcheck_pl.ts, gui/cppcheck_ru.ts, gui/cppcheck_se.ts, gui/projectfiledialog.cpp: GUI: Show project file's name in project file -dialog title. 2010-07-12 Kimmo Varis * gui/projectfile.h: GUI: Don't mention auto-allocated classes even in comments. 2010-07-12 Kimmo Varis * gui/gui.pro, gui/mainwindow.cpp, gui/projectfiledialog.cpp, gui/projectfiledialog.h: GUI: Add Project class to handle project files and projects. This commit separates logic more from the GUI. The dialog class is only responsible from showing the dialog and handling data in it. Other related classes do the project file reading/saving/etc. 2010-07-12 Robert Reif * lib/checkother.cpp, test/testunusedvar.cpp: Variable usage: better handling of pointer aliasing. Ticket: #1729 2010-07-12 Kimmo Varis * gui/mainwindow.cpp: GUI: Disable opening XML report file when checking files. 2010-07-12 Kimmo Varis * gui/erroritem.cpp, gui/erroritem.h, gui/resultstree.cpp, gui/xmlreport.cpp: GUI: Refactor linenumber in ErrorLine to unsigned int. 2010-07-12 Kimmo Varis * gui/threadresult.cpp: GUI: Ignore errors with "debug" severity. GUI doesn't know about "debug" severity. And it is not worth the trouble to add new category everywhere (icons etc) just for internal debug messages. 2010-07-12 Kimmo Varis * lib/tokenize.cpp: Change the "information" error to "debug" error. There was one debugging error sent with "information" severity. That confused the GUI that didn't know such severity. Change the severity to "debug" so the meaning of the error is more clear. 2010-07-11 Kimmo Varis * : commit 8a24435db2f2133f08483b9fb3de9c76100b3d71 Author: Kimmo Varis Date: Sun Jul 11 16:33:49 2010 +0300 2010-07-11 Kimmo Varis * : commit c9d63fa454e6954a0ca1215b1e9b9441c2a01817 Author: Kimmo Varis Date: Sun Jul 11 16:20:19 2010 +0300 2010-07-11 Kimmo Varis * gui/resultstree.cpp, gui/resultstree.h: GUI: Ask file location from user if not found. When loading report from XML there is no full paths so the file's real path is not known and cppcheck cannot open it. So if the file has no absolute path then we ask where the file is located from the user. 2010-07-11 Kimmo Varis * gui/report.cpp, gui/resultsview.cpp, gui/xmlreport.cpp, gui/xmlreport.h: GUI: Add errors read from XML report to GUI. 2010-07-11 Kimmo Varis * gui/resultstree.cpp: GUI: Fix line numbers and filenames in errors. When converting to use new ErrorItem and ErrorLine I made few mistakes in how I handled the data. And for some reason there was not even warnings about converting integers to QStrings. 2010-07-11 Kimmo Varis * gui/erroritem.cpp, gui/erroritem.h, gui/gui.pro, gui/main.cpp: GUI: Fix transporting errors. Need to register integer list as new metatype so that Qt's type system knows how to use it. Adding also additional constructors for the ErrorItem. 2010-07-10 Kimmo Varis * gui/erroritem.h, gui/resultstree.cpp, gui/resultsview.cpp, gui/resultsview.h, gui/threadhandler.cpp, gui/threadresult.cpp, gui/threadresult.h, gui/xmlreport.cpp: GUI: Use integer list instead of variant list for line numbers. 2010-07-10 Kimmo Varis * gui/erroritem.h, gui/gui.pro, gui/report.h, gui/resultstree.cpp, gui/resultstree.h, gui/resultsview.cpp: GUI: More refactoring to use ErrorItem and ErrorLine. 2010-07-10 Kimmo Varis * gui/csvreport.cpp, gui/csvreport.h, gui/report.h, gui/resultstree.cpp, gui/txtreport.cpp, gui/txtreport.h, gui/xmlreport.cpp, gui/xmlreport.h: GUI: Refactor error data passing to use own class. 2010-07-10 Kimmo Varis * gui/main.ui, gui/mainwindow.cpp, gui/mainwindow.h, gui/report.cpp, gui/report.h, gui/resultsview.cpp, gui/resultsview.h, gui/xmlreport.cpp, gui/xmlreport.h: GUI: Read errors from report XML file. This commits adds new "Open XML" item to File-menu. Selecting this menuitem allows user to select report file to open. When the file is read the error data is printed to debug output. Later patches will implement adding error data back to the GUI. 2010-07-10 Kimmo Varis * gui/xmlreport.cpp, gui/xmlreport.h: GUI: Refactoring xmlreport to use pointer to stream writing class. 2010-07-10 Daniel Marjamäki * Makefile: Makefile: debug mode 2010-07-10 Daniel Marjamäki * Makefile: 1.44: updated Makefile for release 2010-07-10 Daniel Marjamäki * Changelog: Changelog: updated for release 2010-07-10 Daniel Marjamäki * cli/cppcheck.rc, cli/main.cpp, lib/cppcheck.cpp, win_installer/productInfo.wxi: 1.44: updated version information 2010-07-10 Daniel Marjamäki * man/manual.docbook: Manual: Better description of -D. As suggested by kwin. Ticket #1212 2010-07-09 Daniel Marjamäki * Makefile, lib/settings.cpp, lib/settings.h, test/testsettings.cpp: Unit Testing: Test that suppressions work 2010-07-09 Daniel Marjamäki * lib/settings.cpp: Fixed #1836 (--suppresions file.txt fails due to wrong line edings) 2010-07-09 Daniel Marjamäki * lib/checkstl.cpp, test/teststl.cpp: Fixed #1834 (False positive: invalid iterator when erase() is used in if-else) 2010-07-09 Daniel Marjamäki * lib/settings.cpp: Settings: added '#include ' 2010-07-08 Kimmo Varis * gui/cppcheck_de.ts, gui/cppcheck_en.ts, gui/cppcheck_fi.ts, gui/cppcheck_nl.ts, gui/cppcheck_pl.ts, gui/cppcheck_ru.ts, gui/cppcheck_se.ts: GUI: Update translation files. 2010-07-08 Kimmo Varis * gui/projectfile.ui: GUI: Set buddies in Project file -dialog. 2010-07-08 Kimmo Varis * gui/projectfiledialog.cpp: GUI: Don't write empty elements to project file. 2010-07-08 Kimmo Varis * gui/projectfile.cpp, gui/projectfile.h, gui/projectfiledialog.cpp: GUI: Improve error handling for reading/writing project file. 2010-07-08 Kimmo Varis * gui/main.ui, gui/mainwindow.cpp, gui/mainwindow.h, gui/projectfiledialog.cpp, gui/projectfiledialog.h: GUI: Allow creating new project file. Add new "New project file" item to File-menu and rename existing "Project File" item to "Open Project File". Selecting new file opens empty project file dialog. When the dialog is then closed the user is asked to select a filename for the new project file. 2010-07-08 Reijo Tomperi * man/cppcheck.1.xml: Update man page 2010-07-08 Kimmo Varis * gui/projectfile.cpp: GUI: Fix giving filename to project file saving function. 2010-07-08 Kimmo Varis * gui/gui.cppcheck: GUI: Revert testing changes from project file. 2010-07-08 Daniel Marjamäki * lib/checkunusedfunctions.cpp, lib/checkunusedfunctions.h, lib/cppcheck.cpp, lib/errorlogger.h, test/testunusedfunctions.cpp: Unused functions: Refactoring 2010-07-08 Daniel Marjamäki * lib/settings.cpp: Suppressions: Validate given id 2010-07-08 Daniel Marjamäki * lib/executionpath.cpp, test/testother.cpp: Fixed #1835 (false positive: uninitialized variable when using ?) 2010-07-08 Kimmo Varis * gui/gui.pro: GUI: Remove custom lrelease target. Remove the custom lrelease target since it fails to work in Fedora 13. In Fedora 13 there is no 'lrelease' binary but 'lrelease-qt4'. 2010-07-08 Robert Reif * lib/checkother.cpp, test/testunusedvar.cpp: Variable usage: fixed false positive reported in #1729 2010-07-08 Robert Reif * lib/checkother.cpp, test/testunusedvar.cpp: Variable usage: Better aliasing support (Ticket #1729) 2010-07-08 Kimmo Varis * gui/projectfile.txt: GUI: Update project file spec. Remove autoalloc list from example and remove mentioning that there is no GUI for project files. 2010-07-08 Kimmo Varis * gui/gui.cppcheck, gui/projectfile.cpp, gui/projectfile.h, gui/projectfiledialog.cpp, gui/projectfiledialog.h: GUI: Implement writing project file data to disk from dialog. This commit implements writing data in the project file dialog back to project file. 2010-07-07 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Realloc: changed the error message. I think it's better to mention realloc in the message. 2010-07-07 Kimmo Varis * gui/gui.pro, gui/main.ui, gui/mainwindow.cpp, gui/mainwindow.h, gui/projectfile.ui, gui/projectfiledialog.cpp, gui/projectfiledialog.h: GUI: Add dialog for editing project file. This commit adds the dialog and code that reads the project file data to the dialog. The changed data is not yet saved back to the file. 2010-07-07 Reijo Tomperi * cli/threadexecutor.cpp, cli/threadexecutor.h, test/testthreadexecutor.cpp: Fixed #1650 (Cppcheck deadlock) http://sourceforge.net/apps/trac/cppcheck/ticket/1650 2010-07-07 Reijo Tomperi * test/testthreadexecutor.cpp: Add more unit tests 2010-07-07 Kimmo Varis * gui/mainwindow.cpp, gui/threadhandler.cpp, gui/threadhandler.h: Fixed #1831 (GUI: no progress bar when rechecking files) Need to initialize the checking also when rechecking. 2010-07-07 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1825 (*log(0) error) 2010-07-07 Daniel Marjamäki * lib/checkother.cpp, test/testunusedvar.cpp: Variable usage: only warn about variables that have variable id > 0 2010-07-07 Daniel Marjamäki * lib/checkother.cpp, test/testunusedvar.cpp: Fixed #1803 (False positive: unused variable: this) 2010-07-07 Daniel Marjamäki * lib/checkother.cpp, test/testunusedvar.cpp: Fixed #1729 (False positive: variable is assigned a value that is never used (pointer aliasing)) 2010-07-07 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1829 (### Internal error in Cppcheck. Please report it.) 2010-07-06 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #1789 (false positive: memory leak (reallocation in subfunction through parameter)) 2010-07-06 Daniel Marjamäki * lib/executionpath.cpp, test/testother.cpp: Fixed #1824 (false positive: unitialised variable) 2010-07-06 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1827 (### Internal error in Cppcheck. Please report it.) 2010-07-05 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1821 (simplifyTypedef: better typedef support) 2010-07-05 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #1823 (tokenize && wrong) 2010-07-05 Daniel Marjamäki * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Buffer Overrun: Fixed false positive when variable is reassigned in called function 2010-07-05 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #1820 (False positive: memory leak (auto deallocated class)) 2010-07-05 Daniel Marjamäki * gui/cppcheck_se.ts: GUI: updated swedish translation 2010-07-05 Daniel Marjamäki * gui/cppcheck_se.ts: GUI: updated swedish translation 2010-07-05 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #1817 (False positive: Resource leak (casting)) 2010-07-05 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1818 (False positive: Dangerous usage of strncpy (copying a constant string)) 2010-07-04 Kimmo Varis * gui/mainwindow.cpp, gui/resultsview.cpp, gui/resultsview.h, gui/threadhandler.cpp, gui/threadresult.cpp, gui/threadresult.h: GUI: Refactoring progress/finished handling. Progress signal had also item count with it and then the handler determined that check is ready when max count of progress was done. Also progressbar was practically reset in every progress signal. This was simply fragile code. After this patch progress signal has only the current progress count. Total count of items is given when initializing the checking. And there is separate function for handling check finishing. This also fixes the bug that progressbar was not hidden after checking or when interrupting the checking. 2010-07-04 Kimmo Varis * gui/cppcheck_de.ts, gui/cppcheck_en.ts, gui/cppcheck_fi.ts, gui/cppcheck_nl.ts, gui/cppcheck_pl.ts, gui/cppcheck_ru.ts, gui/cppcheck_se.ts: GUI: Fixup TS translation files after they got messed up earlier. The lupdate got confused of removing "Show security errors" and there being existing string "Show style errors". lupdate thought the "Show style errors" was a new version ("similar enough") of "Show security errors" string instead of new string to translate. Or actually existing translated string. So many translations got "Show style errors" translated by earlier translation of "Show security errors". This commit fixes the mess by manually removing "Show security errors" references and restoring correct translations of "Show style errors" from earlier file versions. Good lesson to learn about lupdate behavior. 2010-07-04 Kimmo Varis * gui/gui.cppcheck, gui/mainwindow.cpp, gui/projectfile.cpp, gui/projectfile.h: GUI: Remove code for automatic deallocated classes. Project file code still read the list of automatically deallocated classes from project file. That feature hasn't been supported in few last releases. 2010-07-03 Kimmo Varis * gui/main.ui: GUI: Change UI file to LF EOLs. In previous commit I accidentally committed the UI file with CRLF EOLs. 2010-07-03 Kimmo Varis * gui/common.h, gui/main.ui, gui/mainwindow.cpp, gui/mainwindow.h: GUI: Refactoring toolbar member names to be more consistent. 2010-07-03 Kimmo Varis * gui/cppcheck_de.ts, gui/cppcheck_en.ts, gui/cppcheck_fi.ts, gui/cppcheck_nl.ts, gui/cppcheck_pl.ts, gui/cppcheck_ru.ts, gui/cppcheck_se.ts: GUI: Update translation files. 2010-07-03 Kimmo Varis * gui/common.h, gui/main.ui, gui/mainwindow.cpp, gui/mainwindow.h: GUI: Add View-menu item for showing/hiding Categories-toolbar. 2010-07-03 Kimmo Varis * gui/cppcheck_de.ts, gui/cppcheck_en.ts, gui/cppcheck_fi.ts, gui/cppcheck_nl.ts, gui/cppcheck_pl.ts, gui/cppcheck_ru.ts, gui/cppcheck_se.ts, gui/main.ui: GUI: Move menuitem to hide/show main toolbar to own submenu. 2010-07-03 Kimmo Varis * gui/cppcheck_de.ts, gui/cppcheck_en.ts, gui/cppcheck_fi.ts, gui/cppcheck_nl.ts, gui/cppcheck_pl.ts, gui/cppcheck_ru.ts, gui/cppcheck_se.ts, gui/gui.qrc, gui/main.ui: GUI: Add new toolbar for error/warning categories. This commit adds new toolbar to the GUI for fast and easy switching of different warning//error categories. The icons are currently just placeholders until more descriptive icons are created. 2010-07-03 Kimmo Varis * gui/main.ui, gui/mainwindow.cpp: GUI: Rename main toolbar in code. 2010-07-03 Kimmo Varis * gui/common.h, gui/cppcheck_de.ts, gui/cppcheck_en.ts, gui/cppcheck_fi.ts, gui/cppcheck_nl.ts, gui/cppcheck_pl.ts, gui/cppcheck_ru.ts, gui/cppcheck_se.ts, gui/main.ui, gui/mainwindow.cpp, gui/mainwindow.h, gui/resultstree.cpp: GUI: Remove remains of "possible error". 2010-07-03 Kimmo Varis * gui/cppcheck_de.ts, gui/cppcheck_en.ts, gui/cppcheck_fi.ts, gui/cppcheck_nl.ts, gui/cppcheck_pl.ts, gui/cppcheck_ru.ts, gui/cppcheck_se.ts, gui/main.ui: GUI: Remove "Show security errors" action. There was no code using this, just GUI action for it. 2010-07-03 Kimmo Varis * gui/common.h, gui/cppcheck_de.ts, gui/cppcheck_en.ts, gui/cppcheck_fi.ts, gui/cppcheck_nl.ts, gui/cppcheck_pl.ts, gui/cppcheck_ru.ts, gui/cppcheck_se.ts, gui/main.ui, gui/mainwindow.cpp, gui/mainwindow.h, gui/resultstree.cpp: GUI: Remove remains of "all style". Earlier "all style" was just removed as menu item but all the code related was left in place. This commit actually removes the now unneeded code. 2010-07-02 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1821 (simplifyTypedef: better typedef support) 2010-06-30 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #1790 (mismatching allocation/deallocation false positive) 2010-06-30 Zachary Blair * lib/checkother.cpp, lib/checkother.h, test/testother.cpp: Fixed #157 (Forgetting to put a break in a switch statement) 2010-06-30 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1815 (False positive: uninitialized variable when using ? operator) 2010-06-30 Robert Reif * lib/tokenize.cpp, lib/tokenize.h, test/testsimplifytokens.cpp: Fixed #1816 (Tokenizer: remove restrict keyword) 2010-06-29 Daniel Marjamäki * lib/checkclass.cpp, test/testclass.cpp: Class checking: Fixed FP for static arrays (not initialized in constructor) 2010-06-29 Robert Reif * lib/checkother.cpp, test/testunusedvar.cpp: Fixed #1808 (false positive: uninitialized variable with multiple assignment) 2010-06-28 Kimmo Varis * win_installer/cppcheck.wxs: MSI Installer: Fix description text. 2010-06-28 Kimmo Varis * : commit 914891f247dee27826b9ad0ca65c3ece364a8f8f Author: Kimmo Varis Date: Mon Jun 28 20:47:00 2010 +0300 2010-06-28 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: --author=Robert Reif Fixed #1814 (false positive: Variable hides typedef with same name) 2010-06-28 Kimmo Varis * win_installer/modpath.iss, win_installer/readme_InnoSetup.txt: Remove remaining Innosetup installer files. Innosetup installer was removed earlier but some files related to it were not removed. 2010-06-26 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #1809 (false positive: uninitialized variable with nested if) 2010-06-26 Robert Reif * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #1811 (false positive: Uninitialized variable) 2010-06-25 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1808 (false positive: uninitialized variable with multiple assignment) 2010-06-25 Robert Reif * test/testclass.cpp: Unit Testing: Added TODO test case for uninitialized member variable in operator=. Ticket: #1813 2010-06-25 Robert Reif * lib/tokenize.cpp, test/testunusedvar.cpp: Fixed #1813 (false negative: Member variable not assigned a value in operator=) 2010-06-24 Daniel Marjamäki * lib/checkclass.cpp, test/testclass.cpp: Fixed #1495 (False -s positive: Member variable not assigned a value in operator=) 2010-06-24 Robert Reif * lib/checkother.cpp, test/testunusedvar.cpp: Fixed #1812 (false negative: functionVariableUsage doesn't support static variables) 2010-06-24 firewave * lib/checkclass.cpp: Avoid Visual Studio warnings about constant expressions 2010-06-23 Robert Reif * lib/checkother.cpp, test/testunusedvar.cpp: Fixed #1732 (False positive: Variable not assigned a value (pointer to pointer)) 2010-06-22 Robert Reif * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #1810 (False positive: Variable 'separator' is assigned a value that is never used) 2010-06-22 Robert Reif * lib/checkother.cpp, test/testunusedvar.cpp: Fixed #1807 (false positive: Variable is not assigned a value (casting function parameters)) 2010-06-21 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #1800 (false positive: memory leak when ptr used as map key) 2010-06-21 Robert Reif * lib/checkother.cpp, test/testunusedvar.cpp: Fixed #1799 (false positive: Variable is assigned a value that is never used) 2010-06-20 Daniel Marjamäki * lib/tokenize.cpp: Refactoring: Removed redundant checks 2010-06-20 Daniel Marjamäki * lib/checkother.cpp: Refactoring: Reduced copy/pasted code 2010-06-20 Daniel Marjamäki * lib/preprocessor.cpp: Preprocessor: Reduce copy/pasted code 2010-06-20 Martin Ettl * test/testdangerousfunctions.cpp: added testcases for testing dangerous functions: mktemp 2010-06-19 Nicolás Alvarez * lib/preprocessor.cpp: Change size-t to std::string::size_type. 2010-06-19 Nicolás Alvarez * lib/preprocessor.cpp: Fix build error on 64-bit systems. 2010-06-11 Nicolás Alvarez * lib/checkother.cpp, test/testother.cpp: Fix typos in sizeofsizeof error message. 2010-06-19 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #1795 (false positive: nullpointer dereference (needs to improve Tokenizer::simplifyKnownVariables)) 2010-06-19 Daniel Marjamäki * lib/checkother.cpp, lib/tokenize.cpp, test/testother.cpp, test/testtokenize.cpp: Fixed #1633 (tokenizer: simplifyKnownVariable: improved handling of arithmetic) 2010-06-19 Daniel Marjamäki * lib/preprocessor.cpp, test/testpreprocessor.cpp: Fixed #1802 (Preprocessor: macros are expanded wrong) 2010-06-19 Daniel Marjamäki * lib/preprocessor.cpp: Preprocessor: Refactoring. Broke out code that parses out the parameters from code. 2010-06-19 Daniel Marjamäki * lib/checkbufferoverrun.cpp: Borland C++: Fixed compiler errors. When using 'a?b:c', Borland requires that b and c are the same type 2010-06-19 Daniel Marjamäki * cppcheck.cbproj, testrunner.cbproj: Borland C++: Updated project files 2010-06-18 Robert Reif * test/testunusedvar.cpp: Refactoring testunusedvariables. This fixes #1804. 2010-06-18 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1801 (simplifyTypedef: duplicate typedefs not handled properly) 2010-06-18 Reijo Tomperi * Makefile, test/testthreadexecutor.cpp, tools/dmake.cpp: Added test case deadlock_with_many_errors() for ticket #1650 http://sourceforge.net/apps/trac/cppcheck/ticket/1650 The test case is currently commented out, because it would cause tests to hang also. 2010-06-17 firewave * cli/cppcheck.vcproj, cli/cppcheck.vcxproj, cli/cppcheck.vcxproj.filters, lib/lib.vcproj, lib/lib.vcxproj, lib/lib.vcxproj.filters, test/test.vcproj, test/test.vcxproj, test/test.vcxproj.filters: Removed obsolete checkheaders from Visual Studio projects 2010-06-17 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1801 (Segmentation fault while scanning Qt's qcups.cpp) 2010-06-16 Leandro Lisboa Penz * test/testmemleak.cpp: Ticket #1789 is not really fixed; added TODO. 2010-06-16 Leandro Lisboa Penz * test/testmemleak.cpp: Improved test of pointer argument realloc. 2010-06-16 Leandro Lisboa Penz * lib/checkmemoryleak.cpp, lib/checkmemoryleak.h, test/testmemleak.cpp: Fixed #1789 (false positive: memory leak (reallocation in subfunction through parameter)) Detecting reallocations in the other function. 2010-06-16 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #853 (False positive: memory leak for member variable with unknown function) 2010-06-16 Robert Reif * lib/token.cpp, lib/tokenize.cpp, test/testunusedvar.cpp: variable usage: fix false positives when __attribute__ is used. Ticket: #1792 2010-06-16 Robert Reif * lib/checkother.cpp, test/testunusedvar.cpp: simplify the alias handling in the checking of variable usage. Ticket: #1729 2010-06-16 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1798 (structure templates) 2010-06-15 Zachary Blair * lib/checkother.cpp: Applied review suggestions for Ticket #920 2010-06-15 Daniel Marjamäki * lib/checkstl.cpp, test/teststl.cpp: Fixed #1545 (new check: usage of iterator pointing to invalid memory after reserve) 2010-06-15 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #887 (Tokenizer: Simplify variable value after loop) 2010-06-15 Daniel Marjamäki * Makefile, lib/checkheaders.cpp, lib/checkheaders.h, lib/lib.pri: removed the deprecated checkheaders 2010-06-14 Zachary Blair * lib/checkother.cpp, lib/checkother.h, test/testother.cpp: Fixed #920 (new style check: find empty catch blocks) 2010-06-14 Reijo Tomperi * Makefile, cli/threadexecutor.cpp, cli/threadexecutor.h, cppcheck.cbp, test/testthreadexecutor.cpp: Add testthreadexecutor.cpp 2010-06-14 Robert Reif * lib/checkother.cpp, lib/token.cpp, lib/token.h, lib/tokenize.cpp, test/testunusedvar.cpp: Fixed #1792 (false positive: Variable 'test' is assigned a value that is never used) 2010-06-14 Daniel Marjamäki * lib/checkother.cpp, lib/tokenize.cpp, test/testother.cpp, test/testtokenize.cpp: Fixed #1776 (False Negative: Unitialized array) 2010-06-14 Daniel Marjamäki * lib/check.h, lib/checkbufferoverrun.cpp, lib/checkother.h, lib/executionpath.h, lib/token.h: doxygen: fixed error messages given by doxygen 2010-06-13 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Memory leaks: more specific bailouts to reduce false negatives 2010-06-13 Daniel Marjamäki * test/testmemleak.cpp: Added testcase for #1557 (false positive: memory leak) 2010-06-13 Daniel Marjamäki * lib/checkclass.cpp, test/testclass.cpp: Fixed #1783 (false positive: uninitalized variable in constructor/operator=, when calling overloaded functions) 2010-06-13 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #1718 (Tokenizer add close braces to for loop at wrong place when if-else presents inside) 2010-06-13 Robert Reif * lib/checkbufferoverrun.cpp, lib/checkclass.cpp, lib/tokenize.cpp, test/testbufferoverrun.cpp: Fixed #1787 (false negative: out of bounds in derived class) 2010-06-12 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #1510 (false positive '(possible error) Memory leak' when 'a = b = new ...; delete a' (but not b)) 2010-06-12 Daniel Marjamäki * test/testmemleak.cpp: reverted 'added a todo testcase for ticket #1788' 2010-06-12 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1788 (Tokenizer: template destructor is lost) 2010-06-11 Martin Ettl * test/testmemleak.cpp: added a few testcases for checking memory leaks in classes 2010-06-11 Martin Ettl * test/testmemleak.cpp: added a todo testcase for ticket #1788 2010-06-10 Martin Ettl * test/testmemleak.cpp: added todo-testcase for ticket #1401 2010-06-10 Robert Reif * lib/checkother.cpp, test/testunusedvar.cpp: Fixed #1784 (false positive: Variable is not assigned a value) 2010-06-10 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1782 ((error) ### Internal error in Cppcheck. Please report it.) 2010-06-09 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #1781 (false positive: uninitialized variable when using asm statement in macro) 2010-06-09 Martin Ettl * test/testother.cpp: added a todo testcase for ticket 1778 2010-06-08 Robert Reif * lib/checkother.cpp, test/testunusedvar.cpp: Variable usage: read variable when using syntax '..=*(p);' 2010-06-07 Martin Ettl * AUTHORS: added Martin Ettl to authors list 2010-06-06 Robert Reif * test/testunusedvar.cpp: Variable usage: Added TODO testcases for handling pointer alias. Ticket: #1729 2010-06-06 Martin Ettl * test/testbufferoverrun.cpp: added TODO_TESTCASE for ticket 1734: Array index out of bounds 2010-06-06 Martin Ettl * test/testclass.cpp: added a TODO testcase for ticket 1724 2010-06-06 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1726 (False negative: null pointer dereference in switch block) 2010-06-06 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Memory leaks: skipping function call inside allocation 2010-06-06 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Memory leaks: Added allocation function 'g_strdup_printf' 2010-06-06 Daniel Marjamäki * lib/checkclass.cpp, test/testclass.cpp: Fixed #1722 (Member variable initialized in call to base class constructor) 2010-06-05 Martin Ettl * lib/checkclass.cpp, test/testclass.cpp: applied patch from php-coder from ticket 1724; removed TODO_TESTCASES; 2010-06-05 Daniel Marjamäki * man/cppcheck.1.xml: man: updated the cppcheck.1.xml file. 2010-06-05 Daniel Marjamäki * lib/checkmemoryleak.cpp: Code coverage: Removed unused code 2010-06-05 Daniel Marjamäki * lib/executionpath.cpp, test/testother.cpp: Fixed #1725 (segfault in ExecutionPath::bailOutVar (probably caused by #1721 fix)) 2010-06-04 Leandro Lisboa Penz * lib/checkmemoryleak.cpp, lib/checkmemoryleak.h, test/testmemleak.cpp: Fixed #73 (memory leaks not found when calling a function that returns allocated memory through a parameter) 2010-06-03 Zachary Blair * AUTHORS: Added Zachary Blair to the AUTHORS file 2010-06-03 Zachary Blair * lib/checkbufferoverrun.cpp: Applied review suggestions for Ticket #568 2010-06-04 Guillaume Miossec * gui/cppcheck_fr.ts: Added french translation 2010-06-03 Daniel Marjamäki * lib/executionpath.cpp, test/testother.cpp: Fixed #1721 (False negative: uninitialized variable in switch block) 2010-06-03 Martin Ettl * test/testclass.cpp: run astyle 2010-06-03 Martin Ettl * test/testclass.cpp: removed a wrong const declaration 2010-06-03 Martin Ettl * test/testclass.cpp: added a testcase and todo testcases for ticket #1724 2010-06-03 Robert Reif * lib/checkother.cpp, lib/tokenize.cpp, test/testtokenize.cpp, test/testunusedvar.cpp: Fixed #1723 (Variable assigned value which is never used but is thrown) 2010-06-02 Daniel Marjamäki * lib/cppcheck.cpp: updated --help output. The --enable is used to enable additional checks. 2010-06-02 Daniel Marjamäki * lib/checkother.cpp, test/testunusedvar.cpp: Fixed #1720 (segmentation fault of cppcheck) 2010-06-02 Daniel Marjamäki * lib/checkbufferoverrun.cpp, lib/checkbufferoverrun.h, test/testbufferoverrun.cpp: astyle formatting 2010-06-02 Daniel Marjamäki * lib/checkother.cpp: CheckOther::nullConstantDereference: Fixed cppcheck warning message - tok may become null 2010-06-02 Daniel Marjamäki * lib/checkother.cpp: Refactoring of CheckOther::nullConstantDereference 2010-06-01 Zachary Blair * lib/checkbufferoverrun.cpp, lib/checkbufferoverrun.h, test/testbufferoverrun.cpp: Fixed #568 (string functions with command line arguments may overflow buffer) 2010-06-01 Nicolás Alvarez * generate_coverage_report: coverage report script: Extract only relevant data from the .info file. Only files in the current directory are kept. This gets rid of standard C++ library headers from the coverage report. 2010-06-01 Nicolás Alvarez * generate_coverage_report: coverage report script: Quit immediately on errors, but don't consider missing coverage_report dir when deleting it as an error 2010-06-01 Daniel Marjamäki * test/testunusedvar.cpp: Added unit test for ticket #1720 2010-05-31 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #1719 (False negative: memory leak (fgets in condition)) 2010-05-30 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Memory leaks: Fixed bug in CheckMemoryLeak::functionReturnType 2010-05-30 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1717 (False positive: Resource leak with while) 2010-05-30 Daniel Marjamäki * lib/tokenize.cpp, lib/tokenize.h, test/testsimplifytokens.cpp: Tokenizer: simplify loops that continue while errno is EINTR 2010-05-30 firewave * lib/checkother.h: Fixed Visual Studio 2010 warning 2010-05-30 firewave * .gitignore: Added *.opensdf to ignore list 2010-05-30 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Uninitialized variables: fixed false negative when using uninitialized variable inside malloc call 2010-05-30 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Uninitialized variables: better handling when uninitialized variables are used in function calls 2010-05-30 Daniel Marjamäki * lib/executionpath.cpp, test/testother.cpp: ExecutionPath: Better handling of 'FOREACH (..) {}' 2010-05-30 Daniel Marjamäki * lib/executionpath.cpp, test/testother.cpp: ExecutionPath: better handling of 'FOREACH(..){..}' 2010-05-30 Daniel Marjamäki * lib/checkother.cpp: Refactoring uninitialized variables (checking variable declarations) 2010-05-30 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Uninitialized variables: better handling of struct variables 2010-05-29 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1716 (Wrong reporting of leak with close() in a while loop condition) 2010-05-29 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Memory leaks: small fixes. add checking of 'g_fopen'. don't let 'fclose' calls be interpreted as 'callfunc' 2010-05-29 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #1716 (Wrong reporting of leak with close() in a while loop condition) 2010-05-29 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #1715 (switch with fallthrough and 'return' confuses cppcheck) 2010-05-29 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1714 (Wrong precedence for shift operators when simplifying calculations?) 2010-05-29 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Memory leaks: enabled the leaks checking when members are not deallocated in the destructor. This checking was previously an --all check so there could be false positives. 2010-05-29 Daniel Marjamäki * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: astyle formatting 2010-05-29 Daniel Marjamäki * lib/checkclass.cpp, test/testclass.cpp: the virtual destructor error message needs to be restricted. marked the checking as inconclusive for now. 2010-05-28 Zachary Blair * : commit 1a25183e8fb5c47c24c6c507e7fad3a0e63fbc28 Author: Robert Reif Date: Sat May 29 07:52:06 2010 +0200 2010-05-28 Zachary Blair * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #818 (Detect sprintf buffer overrun with struct members) 2010-05-29 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1713 (remove Microsoft variants of inline) 2010-05-28 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1671 (simplifyTypedef: support for more typedefs) 2010-05-27 Daniel Marjamäki * lib/executionpath.cpp, test/testother.cpp: Fixed #1712 (False negative: dereferencing uninitialized pointer) 2010-05-27 Robert Reif * lib/tokenize.cpp, lib/tokenize.h, test/testtokenize.cpp: Fixed #1711 (Wrong typedef name shown when struct declared with __attribute__) 2010-05-27 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1671 (simplifyTypedef: support for more typedefs) 2010-05-26 Robert Reif * lib/checkother.cpp, test/testunusedvar.cpp: Fixed #1709 (char buffer that is only accessed with pointers is marker not assigned) 2010-05-26 Daniel Marjamäki * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: astyle formatting 2010-05-26 Daniel Marjamäki * lib/checkother.cpp, lib/checkother.h, test/testother.cpp: Fixed #1704 (false negative: null pointer dereference) 2010-05-26 Zachary Blair * lib/checkbufferoverrun.cpp, lib/checkbufferoverrun.h, test/testbufferoverrun.cpp: Fixed #168 (buffer overflow: not enough room for the null terminator) 2010-05-25 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1671 (simplifyTypedef: support for more typedefs) 2010-05-25 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: Fixed #1708 (False positive for const) 2010-05-24 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #1707 (false positive: Memory leak) 2010-05-24 Daniel Marjamäki * lib/checkbufferoverrun.cpp: Removed TODO 2010-05-23 Daniel Marjamäki * test/testclass.cpp: Unit Testing: Added a few more test cases related to ticket #1700 2010-05-23 Daniel Marjamäki * test/testclass.cpp: Unit Testing: Added test case for ticket 1700 2010-05-23 Daniel Marjamäki * lib/tokenize.cpp, lib/tokenize.h, test/testsimplifytokens.cpp: Tokenizer: Removed the Tokenizer::simplifyNamespaces. Ticket: #1700 2010-05-23 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1671 (simplifyTypedef: support for more typedefs) 2010-05-23 Robert Reif * lib/checkother.cpp, test/testunusedvar.cpp: false positive: Variable is assigned a value that is never used 2010-05-21 Daniel Marjamäki * lib/cppcheck.cpp, lib/cppcheck.h: 2 pass checking: broke out Cppcheck::analyseFile. To be used for tests 2010-05-21 Daniel Marjamäki * lib/check.h, lib/checkother.cpp, lib/checkother.h, lib/cppcheck.cpp, lib/settings.cpp, lib/settings.h, test/testother.cpp: Added some multipass checking for the uninitialized variables. It is still experimental. You can activate it with the '--test-2-pass' switch. Some more refactorings are needed to make it truly usable, the main thing is to make it thread safe. 2010-05-21 Daniel Marjamäki * lib/tokenize.cpp: fixed gcc compiler warnings (comparing float values) 2010-05-21 Daniel Marjamäki * lib/tokenize.cpp: Fixed gcc compiler warning 2010-05-21 Robert Reif * lib/preprocessor.cpp: Fixed #1698 (Add define support to GUI) 2010-05-21 Daniel Marjamäki * lib/tokenize.cpp: Tokenizer: give dead pointer a value 2010-05-20 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: Fixed #1699 (False positive: The function '...' can be const) 2010-05-20 Robert Reif * gui/mainwindow.cpp, gui/projectfile.cpp, gui/projectfile.h, gui/projectfile.txt: Fixed #1698 (Add define support to GUI) 2010-05-20 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: #1697 (false positive: The function can be const) 2010-05-19 Daniel Marjamäki * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #1695 (Ticket #1614 is broken using latest from git) 2010-05-18 Daniel Marjamäki * lib/executionpath.cpp: printchecks: better explanation of its purpose. I call it from gdb when I debug ExecutionPaths. 2010-05-18 Daniel Marjamäki * lib/checkmemoryleak.cpp: astyle formatting 2010-05-18 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #1646 (False positive: array access after return cannot have default loop value) 2010-05-18 firewave * lib/checkother.cpp, lib/executionpath.cpp: Avoid some Visual Studio warnings 2010-05-18 firewave * .gitignore: Added ipch output folder to ignore list 2010-05-18 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1691 (False positive: Function parameter 'x' is passed by value. It could be passed by reference instead.) 2010-05-17 Zachary Blair * lib/checkmemoryleak.cpp, lib/checkmemoryleak.h, lib/tokenize.cpp, test/testmemleak.cpp: Fixed #1649 (add a warning for potential memory leaks when using realloc) 2010-05-18 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1685 (segmentation fault of cppcheck) 2010-05-17 Daniel Marjamäki * gui/mainwindow.cpp: Fixed #1689 (failed to build gui) 2010-05-17 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1673 (Tokenizer::simplifyTypedef causes segfault for boost library) 2010-05-17 Daniel Marjamäki * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: astyle formatting 2010-05-17 Daniel Marjamäki * lib/tokenize.cpp: Tokenizer: it is bad to do: 'tok->previous()->deleteThis()' 2010-05-17 Daniel Marjamäki * test/test.vcproj: Visual Studio 2008: Updated test project 2010-05-17 Daniel Marjamäki * test/testcppcheck.cpp: asd 2010-05-16 Monika Lukow * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #1418 (false negative: buffer access out of bounds) 2010-05-16 Erik Lax * lib/checkclass.cpp, test/testclass.cpp: Fixed #1683 (false positive: The function can be const) 2010-05-16 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #1684 (false positive: buffer access out of bounds when using extern variable declaration) 2010-05-16 Daniel Marjamäki * lib/check.h, lib/errorlogger.h: Refactoring: Removed 'possibleError' 2010-05-16 Daniel Marjamäki * lib/checkmemoryleak.cpp, lib/checkmemoryleak.h, test/testmemleak.cpp: Refactoring: Removed possibleError messages from CheckMemoryLeaks 2010-05-16 Erik Lax * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1688 (Tokenizer::simplifyKnownVariables and pointer assignments) 2010-05-16 Daniel Marjamäki * lib/checkbufferoverrun.cpp, lib/checkbufferoverrun.h, test/testbufferoverrun.cpp: Refactoring: Removed 'possible error' message about cin 2010-05-16 Daniel Marjamäki * lib/checkbufferoverrun.cpp, lib/checkbufferoverrun.h, test/testbufferoverrun.cpp: Refactoring: Removed some inconclusive checking in CheckBufferOverrun 2010-05-16 Daniel Marjamäki * lib/check.h, lib/checkclass.cpp, lib/checkclass.h, lib/checkother.cpp, lib/checkother.h, lib/checkstl.cpp, lib/errorlogger.h, test/testclass.cpp, test/testdivision.cpp, test/testother.cpp, test/teststl.cpp: Refactoring: Removed Severity::possibleStyle 2010-05-16 Daniel Marjamäki * lib/cppcheck.cpp, man/manual.docbook: doc: updated docs about -D command line flag 2010-05-16 Daniel Marjamäki * lib/cppcheck.cpp, lib/settings.h, test/testcppcheck.cpp: Fixed #1212 (Allow giving used defines in command line) 2010-05-16 Daniel Marjamäki * lib/checkexceptionsafety.cpp, lib/checkmemoryleak.cpp, lib/cppcheck.cpp, lib/settings.cpp, lib/settings.h, test/testexceptionsafety.cpp, test/testmemleak.cpp: Code cleanup: Removed autodealloc handling 2010-05-15 Daniel Marjamäki * lib/checkclass.cpp, test/testclass.cpp: Fixed #1678 (false positive: Member variable not initialized in the constructor, for arrays of undefined type) 2010-05-15 Erik Lax * lib/checkstl.cpp, test/teststl.cpp: Fixed #1679 (Bad iterators checks fails to detect bugs with indent levels) 2010-05-15 Erik Lax * lib/checkstl.cpp, lib/checkstl.h, test/teststl.cpp: Fixed #1680 (Bad iterators checks fail to detect invalidation of iterator for deletion by value) 2010-05-15 Daniel Marjamäki * lib/checkmemoryleak.cpp, lib/checkmemoryleak.h, test/testmemleak.cpp: Fixed #1681 (false negative: memory leak in operator =) 2010-05-15 Daniel Marjamäki * lib/checkother.cpp, lib/checkother.h, test/testother.cpp: Added test CheckOther::sizeofsizeof. Inspired by #1682 2010-05-14 Daniel Marjamäki * lib/mathlib.cpp, test/testsuite.cpp: astyle formatting 2010-05-14 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1682 (Internal error) 2010-05-13 Konrad Windszus * Makefile, lib/checkstl.cpp, lib/cppcheck.cpp, test/testcppcheck.cpp, test/testsuite.cpp, test/testsuite.h, test/tinyxml/changes.txt, test/tinyxml/tinystr.cpp, test/tinyxml/tinystr.h, test/tinyxml/tinyxml.cpp, test/tinyxml/tinyxml.h, test/tinyxml/tinyxmlerror.cpp, test/tinyxml/tinyxmlparser.cpp: Ticket #1318: Make sure error ids are unique 2010-05-13 Robert Reif * lib/tokenize.cpp, lib/tokenize.h, test/testsimplifytokens.cpp: Fixed #1677 (False positive: (style) Variable 'xxx' is assigned a value that is never used) 2010-05-12 Martin Ettl * lib/mathlib.cpp, test/testmathlib.cpp: mathlib:isInt() now handles calles of 'u' and 'l' correctly; testcases added 2010-05-11 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1671 (simplifyTypedef: support for more typedefs) 2010-05-10 Reijo Tomperi * man/cppcheck.1.xml: Update man page 2010-05-10 Daniel Marjamäki * lib/checkclass.cpp, test/testclass.cpp, test/testconstructors.cpp: Fixed #1669 (Still seeing 'possible style' warnings in 1.43) 2010-05-10 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #1665 ('If you see this, there is a bug': Token::Match('%var% ( %varid% [,)]', 0)) 2010-05-10 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Better handling of function pointer typedef 2010-05-10 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1666 (simplifyTypedef: add support for typedefs of functions) 2010-05-09 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #1648 (mismatch allocate and deallocate calls.) 2010-05-09 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1662 (false positive: Data is allocated but not initialized, when using sprintf) 2010-05-09 Robert Reif * lib/checkother.cpp, test/testunusedvar.cpp: Fixed #1660 (false positive: Variable is assigned a value that is never used, when using cast) 2010-05-09 Robert Reif * test/testunusedvar.cpp: Added unit test for #5 2010-05-08 Daniel Marjamäki * lib/checkstl.cpp, test/teststl.cpp: Fixed #1656 (dangerous usage of erase not detected: for (; it != it2; ++it) ints.erase(it);) 2010-05-08 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1658 (false negative: uninitialized pointer usage) 2010-05-08 Daniel Marjamäki * createrelease: createrelease: more details about dmake 2010-05-08 Daniel Marjamäki * Makefile: Makefile: Set debug mode 2010-05-08 Daniel Marjamäki * Makefile: Makefile: Set release mode 2010-05-08 Daniel Marjamäki * Changelog, createrelease: Changelog: Updated for release 2010-05-08 Daniel Marjamäki * tools/dmake.cpp: dmake: updated compiler flags in release mode. only -Wall. 2010-05-08 Daniel Marjamäki * createrelease: createrelease: mention that the Makefile should be updated 2010-05-08 Daniel Marjamäki * lib/cppcheck.cpp: cli help: show the flags in alphabetical order 2010-05-08 Daniel Marjamäki * cli/cppcheck.rc, cli/main.cpp, lib/cppcheck.cpp, man/manual.docbook, win_installer/productInfo.wxi: Updated version to 1.43 2010-05-08 Daniel Marjamäki * lib/checkbufferoverrun.cpp: refactoring: spell checking comments 2010-05-08 Daniel Marjamäki * man/manual.docbook: manual: updated error message to match latest versions 2010-05-08 Daniel Marjamäki * readme.txt: readme.txt: mention the online manual 2010-05-08 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Refactoring: Changed 'possible style' to 'style' 2010-05-07 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #1654 (False positive: Memory leak with: ( delete ( p ) , ( p ) = 0 );) 2010-05-06 Zachary Blair * lib/checkother.cpp, lib/checkother.h, test/testother.cpp: Fixed #959: (new check: wrong usage of fflush()) Simplified and set severity to error 2010-05-06 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #1651 (Tokenizer::setVarId wrong handling of return statement) 2010-05-05 Daniel Marjamäki * test/testunusedvar.cpp: Robert Reif refactoring chained assignments 2010-05-05 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #1646 (False positive: array access after return cannot have default loop value) 2010-05-05 Robert Reif * lib/checkother.cpp, test/testunusedvar.cpp: Fixed #1647 (False positive: buffer is not assigned value (assigned through alias)) 2010-05-04 Daniel Marjamäki * lib/checkother.cpp, lib/tokenize.cpp, test/testtokenize.cpp: Fixed #1646 (False positive: array access after return cannot have default loop value) 2010-05-04 Robert Reif * lib/checkother.cpp, test/testunusedvar.cpp: Fixed #1643 (Variable usage (pointer is assigned but never used)) 2010-05-04 Robert Reif * lib/checkother.cpp, test/testunusedvar.cpp: Fixed #1639 (False positive: unused variable value (pointer aliasing)) 2010-05-03 Zachary Blair * lib/checkother.cpp, lib/checkother.h, test/testother.cpp: Fixed #959 (new check: wrong usage of fflush()) 2010-05-02 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #1642 (Tokenizer::simplifyKnownVariables: simplify after loop) 2010-05-02 Daniel Marjamäki * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: refactoring: changed the severity for strncatUsage from possibleError to style 2010-05-02 Daniel Marjamäki * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: refactoring: Use style severity instead of possible error for the 'The size argument is given as a char constant' 2010-05-01 Daniel Marjamäki * lib/checkstl.cpp, test/teststl.cpp: STL: added testcase for 'if (str.find(%any%)) ..' 2010-05-01 Daniel Marjamäki * lib/checkclass.cpp, test/testclass.cpp: refactoring: enable the 'suspicious pointer subtraction' checking 2010-05-01 Robert Reif * lib/checkother.cpp, test/testunusedvar.cpp: Fixed #1640 (False negative: Unused value (variable is assigned but never read)) 2010-05-01 Daniel Marjamäki * Makefile: Makefile: Updated with dmake 2010-05-01 Daniel Marjamäki * lib/checkbufferoverrun.cpp: Fixed Cppcheck warning about possible null pointer dereference 2010-05-01 Daniel Marjamäki * test/testunusedvar.cpp: astyle formatting 2010-05-01 Slava Semushin * lib/tokenize.cpp, lib/tokenize.h, test/testunusedvar.cpp: Fixed #1574 (chain assignments could be simplified) http://sourceforge.net/apps/trac/cppcheck/ticket/1574 2010-05-01 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #1638 (Tokenizer::simplifyKnownVariables: removing variable declaration) 2010-05-01 Robert Reif * lib/checkother.cpp, test/testunusedvar.cpp: Unit testing: Improved test coverage for variable usage checking 2010-04-30 Robert Reif * lib/checkother.cpp, test/testunusedvar.cpp: Fixed #1636 (Fix false positive with strncpy termination check) 2010-04-30 Robert Reif * lib/checkother.cpp, test/testunusedvar.cpp: Fixed #1622 (False positive: buf is not assigned a value (pointer aliasing)) 2010-04-30 Eric Sesterhenn * lib/checkbufferoverrun.cpp: Fixed #1636 (Fix false positive with strncpy termination check) 2010-04-29 Eric Sesterhenn * lib/tokenize.cpp: Fixed #1634 (Null character not correctly tokenized) 2010-04-29 Robert Reif * lib/tokenize.cpp: Fixed #1631 (Tokenizer: remove register keyword) 2010-04-29 Robert Reif * lib/checkother.cpp, test/testunusedvar.cpp: Fixed #1622 (False positive: buf is not assigned a value (pointer aliasing)) 2010-04-28 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1629 (False negative: null pointer derefence not detected 'c[0] = 0') 2010-04-28 Daniel Marjamäki * lib/executionpath.cpp, lib/executionpath.h, test/testother.cpp: Fixed #1632 (false positive: unintialized variable) 2010-04-27 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #1628 (false negative: memory leak when using redundant braces) 2010-04-27 Robert Reif * lib/checkother.cpp, test/testunusedvar.cpp: Variable usage: Use variable id instead of variable name to identify variable 2010-04-26 Daniel Marjamäki * lib/checkother.h: Fixed #1626 ('Unusual pointer arithmetic' false positive) 2010-04-26 Daniel Marjamäki * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #1627 (###### If you see this, there is a bug ###### - Token::Match('%varid% [ %num% ]', 0)) 2010-04-25 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #943 (Tokenizer: improve handling of pointer aliasing) 2010-04-25 Daniel Marjamäki * lib/checkother.cpp: astyle formatting 2010-04-25 Martin Ettl * : commit ec935178fc22d0f35e384c28346122c3614e6575 Author: Martin Ettl Date: Sun Apr 25 13:14:58 2010 +0200 2010-04-25 firewave * lib/executionpath.h: Fixed GCC warning about initialization order 2010-04-25 firewave * lib/checkother.cpp: Fixed Access Violation with --enable=style when no tokens exist 2010-04-25 firewave * lib/executionpath.cpp: Added missing include 2010-04-25 Daniel Marjamäki * lib/checkbufferoverrun.cpp, lib/checkmemoryleak.cpp, lib/checkother.cpp, lib/executionpath.cpp, lib/executionpath.h, test/testother.cpp: ExecutionPath: Better handling of if 2010-04-25 Daniel Marjamäki * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #948 (array index out of bound not detected 'a[i-1] = 0') 2010-04-24 Daniel Marjamäki * lib/checkmemoryleak.cpp, lib/checkmemoryleak.h, test/testmemleak.cpp: Fixed #1440 (false negative: memory leak (function parameters)) 2010-04-24 Daniel Marjamäki * lib/checkbufferoverrun.cpp, lib/checkbufferoverrun.h, lib/tokenize.cpp, test/testbufferoverrun.cpp, test/testsimplifytokens.cpp: Fixed #836 (buffer overrun: memmove) 2010-04-24 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #1146 (improve check: memory leak not detected (allocation in subfunction)) 2010-04-24 Daniel Marjamäki * lib/check.h: --errorlist : don't show inconclusive messages in the output because those are disabled 2010-04-24 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1571 ('C-style pointer casting' should not be reported for C files) 2010-04-24 Daniel Marjamäki * lib/checkexceptionsafety.cpp, test/testexceptionsafety.cpp: Fixed #1616 (false positive - Upon exception there is a memory leak) 2010-04-24 Daniel Marjamäki * lib/checkother.cpp, lib/checkother.h, test/testother.cpp: Removed the check for unreachable code. The g++ warning -Wunreachable-code is recommended instead. This closes #1603 (break after a return or goto should not be an error in a switch statement). 2010-04-24 Daniel Marjamäki * test/testunusedvar.cpp: Redundant assignment: Added TODO testcase for detecting redundant assignment in inner scope 2010-04-24 Daniel Marjamäki * test/testunusedvar.cpp: unit testing: Added TODO test case for unused variables when using pointer aliasing. Related with ticket #1622 2010-04-24 Robert Reif * lib/checkother.cpp, test/testunusedvar.cpp: variable usage: refactoring the checking 2010-04-24 Robert Reif * lib/tokenize.cpp, lib/tokenize.h, test/testsimplifytokens.cpp, test/testtokenize.cpp: tokenizer improvements: remove calling convention (#1619) 2010-04-23 Zachary Blair * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #1169 (improve check: divsion by zero not detected when using the shift (>>) operator) 2010-04-23 Reijo Tomperi * Cppcheck.xcodeproj/project.pbxproj, cppcheck.xcodeproj/project.pbxproj: cppcheck.xcodeproj -> Cppcheck.xcodeproj to avoid collision with tab completion in Linux 2010-04-23 Martin Ettl * test/testbufferoverrun.cpp: added further testcases to multidimensional out of bounds unit test 2010-04-23 Martin Ettl * test/testbufferoverrun.cpp: update in todo testcase (line number was wrong) 2010-04-23 Martin Ettl * : commit 572ae0c1b4389ade7ee6296119dc1499e4708a97 Author: Martin Ettl Date: Fri Apr 23 21:56:35 2010 +0200 2010-04-23 Reijo Tomperi * cppcheck.xcodeproj/project.pbxproj, project.pbxproj: renamed: project.pbxproj -> cppcheck.xcodeproj/project.pbxproj 2010-04-23 Daniel Marjamäki * lib/checkbufferoverrun.cpp, lib/checkbufferoverrun.h, test/testbufferoverrun.cpp: Fixed #819 (array index out of bounds not detected for multidimension arrays) 2010-04-22 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1615 (False positive - C-style pointer casting) 2010-04-22 Daniel Marjamäki * lib/checkbufferoverrun.cpp: astyle formatting 2010-04-22 Daniel Marjamäki * lib/checkbufferoverrun.cpp: Cleanup CheckBufferOverrun 2010-04-22 Daniel Marjamäki * lib/checkbufferoverrun.cpp: Refactoring: Improved the checkFunctionCalls, warning when size argument is given through char constant 2010-04-22 Daniel Marjamäki * lib/checkbufferoverrun.cpp: Refactoring: Moved function call check to checkFunctionCalls 2010-04-22 Daniel Marjamäki * lib/checkbufferoverrun.cpp, lib/token.cpp, test/testbufferoverrun.cpp: CheckBufferOverrun: Fixed false positives caused by refactorings 2010-04-22 Zachary Blair * lib/checkother.cpp, lib/checkother.h, test/testother.cpp: Fixed #1564 (CppCheck does not recognise redundant IF) 2010-04-21 Robert Reif * lib/checkbufferoverrun.cpp, lib/tokenize.cpp, lib/tokenize.h, test/testsimplifytokens.cpp: Fixed #1619 (tokenizer: remove calling convention) 2010-04-21 Daniel Marjamäki * lib/checkbufferoverrun.cpp: CheckBufferOverrun: simplify checking of read|write problems 2010-04-21 Daniel Marjamäki * lib/checkbufferoverrun.cpp, lib/checkbufferoverrun.h, test/testbufferoverrun.cpp: CheckBufferOverrun: Don't give false positives when reading from array with strncpy/strncat 2010-04-21 Daniel Marjamäki * lib/checkbufferoverrun.cpp, lib/checkbufferoverrun.h, test/testbufferoverrun.cpp: CheckBufferOverrun: Refactoring the checking of function calls 2010-04-21 Daniel Marjamäki * lib/checkbufferoverrun.cpp, lib/checkbufferoverrun.h, test/testbufferoverrun.cpp: Refactoring: CheckBufferOverrun refactorings. split up the checkScope into two separate functions. The ArrayInfo usage was improved. Also broke out for-loop handling into separate functions. 2010-04-20 Zachary Blair * lib/checkclass.cpp, lib/checkclass.h, lib/checkdangerousfunctions.cpp, lib/checkdangerousfunctions.h, lib/checkother.cpp, lib/checkother.h, lib/checkstl.cpp, lib/checkstl.h, test/testcharvar.cpp, test/testclass.cpp, test/testdangerousfunctions.cpp, test/testincompletestatement.cpp, test/testother.cpp, test/testunusedvar.cpp: Fixed #855 (Refactoring: move conditions into checks) 2010-04-20 Reijo Tomperi * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Change "Array index -1 corresponds with 4294967295..." error message into "Array index -1 is out of bounds" 2010-04-20 Reijo Tomperi * test/testfilelister.cpp: fileLister_win32.h -> filelister_win32.h 2010-04-20 Daniel Marjamäki * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #1614 (negative array index issues in latest from git) 2010-04-19 Robert Reif * test/testclass.cpp: Unit Testing: Added TODO testcases for ticket #1593 (false negative: the function can be declared as const) 2010-04-18 Daniel Marjamäki * runastyle.bat: runastyle.bat: updated astyle script 2010-04-18 Reijo Tomperi * test/testmemleak.cpp: Fix one compiler warning 2010-04-18 Reijo Tomperi * : commit 8eff4fcbba669191d151255d5e10eda2f14e9106 Author: Daniel Marjamäki Date: Sun Apr 18 21:07:21 2010 +0200 2010-04-18 Reijo Tomperi * lib/checkbufferoverrun.cpp: astyle fix 2010-04-18 Daniel Marjamäki * lib/checkbufferoverrun.cpp: astyle formatting 2010-04-18 Daniel Marjamäki * lib/checkbufferoverrun.cpp, lib/checkbufferoverrun.h, test/testbufferoverrun.cpp: Buffer Overrun: Broke out the checking for negative array index 2010-04-18 Daniel Marjamäki * lib/checkbufferoverrun.cpp, lib/checkbufferoverrun.h: Refactoring: Renamed ArrayInfo::type_size to ArrayInfo::element_size 2010-04-18 Daniel Marjamäki * lib/checkbufferoverrun.cpp: Refactoring: Reusing the ArrayInfo in CheckBufferOverrun 2010-04-18 Daniel Marjamäki * lib/checkbufferoverrun.cpp, lib/checkbufferoverrun.h: BufferOverflow: Refactoring ArrayInfo 2010-04-18 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: Fixed #1602 (functions defined in header outside of class cannot be const) 2010-04-18 Daniel Marjamäki * lib/checkbufferoverrun.cpp, lib/checkbufferoverrun.h, test/testbufferoverrun.cpp: Buffer overruns: First change to detect overruns in multidimensional arrays (#819) 2010-04-18 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1613 (False -s positive: Template instantiation hides typedef with same name) 2010-04-18 Robert Reif * lib/tokenize.cpp, test/testclass.cpp: Fixed #1612 (false positive: The function can be const) 2010-04-17 Daniel Marjamäki * test/testbufferoverrun.cpp: Unit Testing: added assertions for todo testcases to detect changes 2010-04-17 Robert Reif * lib/checkother.cpp, test/testunusedvar.cpp: Fixed #1607 (false positive: variable is assigned a value that is never used) 2010-04-17 Daniel Marjamäki * project.pbxproj: Xcode: Added Xcode project file 2010-04-17 Daniel Marjamäki * lib/checkstl.cpp, lib/checkstl.h, test/teststl.cpp: STL: fixed false negative when erasing invalidated iterator 2010-04-17 Daniel Marjamäki * test/testunusedvar.cpp: Unit Testing: Added assert for todo testcase to catch changes. 2010-04-17 Daniel Marjamäki * test/teststl.cpp: Unit Testing: Added assert for todo testcase to catch changes. 2010-04-17 Daniel Marjamäki * lib/checkother.cpp, test/testunusedvar.cpp: Unused struct member: Fixed false positives 2010-04-17 Daniel Marjamäki * lib/settings.cpp, lib/settings.h, test/testbufferoverrun.cpp, test/testclass.cpp, test/testconstructors.cpp, test/testdangerousfunctions.cpp, test/testdivision.cpp, test/testincompletestatement.cpp, test/testmemleak.cpp, test/testpreprocessor.cpp, test/testsimplifytokens.cpp, test/teststl.cpp, test/testtokenize.cpp: Refactoring: Refactoring the Settings class 2010-04-17 Daniel Marjamäki * lib/cppcheck.cpp: Borland C++: Fixed compiler errors 2010-04-16 Reijo Tomperi * test/testcppcheck.cpp: Add test cases for --template parsing 2010-04-16 Daniel Marjamäki * lib/checkstl.cpp, test/teststl.cpp: Fixed #1600 (false positive: After insert, the iterator 'aI' may be invalid) 2010-04-16 Reijo Tomperi * lib/settings.cpp: Fix --template to work again 2010-04-16 Robert Reif * lib/checkother.cpp, test/testunusedvar.cpp: Fixed #1605 (false positive: uninitialized variable) 2010-04-16 Robert Reif * lib/checkother.cpp, test/testunusedvar.cpp: Fixed #1607 (false positive: variable is assigned a value that is never used) 2010-04-15 firewave * lib/cppcheck.cpp, lib/preprocessor.cpp, lib/preprocessor.h: Fix #1585 (--append doesn't work with TAB formating) 2010-04-15 Reijo Tomperi * lib/preprocessor.cpp, test/testpreprocessor.cpp: Fix #1595 (case marks improperly tokenized with macro) http://sourceforge.net/apps/trac/cppcheck/ticket/1595 2010-04-15 Daniel Marjamäki * cli/cppcheckexecutor.cpp, cli/threadexecutor.cpp, gui/aboutdialog.cpp, gui/applicationdialog.cpp, gui/applicationlist.cpp, gui/checkthread.cpp, gui/csvreport.cpp, gui/fileviewdialog.cpp, gui/mainwindow.cpp, gui/projectfile.cpp, gui/report.cpp, gui/resultstree.cpp, gui/resultsview.cpp, gui/settingsdialog.cpp, gui/threadhandler.cpp, gui/translationhandler.cpp, gui/txtreport.cpp, gui/xmlreport.cpp, lib/check.h, lib/checkautovariables.h, lib/checkbufferoverrun.cpp, lib/checkbufferoverrun.h, lib/checkclass.h, lib/checkdangerousfunctions.h, lib/checkexceptionsafety.h, lib/checkmemoryleak.h, lib/checkother.cpp, lib/checkother.h, lib/checkstl.h, lib/cppcheck.cpp, lib/preprocessor.cpp, lib/settings.cpp, lib/token.cpp, lib/tokenize.cpp, runastyle, test/testsimplifytokens.cpp, test/teststl.cpp, test/testsuite.cpp, tools/extracttests.cpp: astyle: Update to astyle 1.24 2010-04-15 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp, test/testtokenize.cpp: Fixed #1596 ('Index out of bounds' false positive) 2010-04-15 Robert Reif * lib/checkother.cpp, test/testunusedvar.cpp: Fixed #1253 (improve check: uninitialized variable not found when using reference) 2010-04-15 Robert Reif * lib/tokenize.cpp, test/testtokenize.cpp: Another fix for #1601 (change simplifyInitVar to split declaration from initialization) 2010-04-15 Zachary Blair * lib/preprocessor.cpp, test/testpreprocessor.cpp, test/testsuite.cpp, test/testsuite.h: Fixed #1526 (Cppcheck checks redundant configurations) 2010-04-14 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1588 (typedef struct incorrectly simplified) 2010-04-14 Robert Reif * lib/tokenize.cpp, lib/tokenize.h, test/testtokenize.cpp: Fixed #1601 (change simplifyInitVar to split declaration from initialization) 2010-04-14 firewave * .gitignore: Added *.sdf files (created by Vsiaul Studio 2010) to ignore list 2010-04-14 firewave * cli/cppcheck.vcproj, cli/cppcheck.vcxproj, cli/cppcheck.vcxproj.filters, cppcheck.sln, test/test.vcproj, test/test.vcxproj, test/test.vcxproj.filters: Moved shared files back into executable projects - it caused the instances of the checks to be optimized away 2010-04-14 firewave * cli/cppcheck.vcxproj, cli/cppcheck.vcxproj.filters, cppcheck_vs2010.sln, lib/lib.vcxproj, lib/lib.vcxproj.filters, test/test.vcxproj, test/test.vcxproj.filters: Added Visual Studio 2010 soultion and project files 2010-04-14 firewave * : commit e3e2ee35aa7a0d22bfddc2dedeb4e5e630a769c4 Author: firewave Date: Wed Apr 14 12:01:45 2010 +0200 2010-04-13 Reijo Tomperi * test/testcppcheck.cpp: Add simple --showtime test case 2010-04-13 Reijo Tomperi * test/testpreprocessor.cpp: Fix compiler warning: cast truncates constant value 2010-04-13 firewave * : commit efd18e3d429a9ef9a22bd438dc18f1b8d66b0ed8 Author: firewave Date: Tue Apr 13 22:22:44 2010 +0200 2010-04-13 Reijo Tomperi * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fix: sizeof(char*) was not simplified correctly 2010-04-13 Reijo Tomperi * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fix #1599 (false positive on if( (f = fopen("foo", "r")) == ((FILE*)NULL) )) http://sourceforge.net/apps/trac/cppcheck/ticket/1599 2010-04-13 Daniel Marjamäki * readme.txt: readme: minor cleanup. we don't need to mention the '--all' flag anymore. 2010-04-13 firewave * cli/cppcheck.vcproj, cppcheck.sln, lib/lib.vcproj, test/test.vcproj: Moved shared files to seperate lib project 2010-04-13 firewave * cli/cppcheck.vcproj, test/test.vcproj: - cleaned up .vcproj files a bit - raised the warning level in test.vcproj to 4 to match cppcheck.vcproj. 2010-04-13 Reijo Tomperi * cli/cppcheckexecutor.cpp, cli/cppcheckexecutor.h, cli/main.cpp, cli/threadexecutor.cpp, cli/threadexecutor.h, gui/aboutdialog.cpp, gui/aboutdialog.h, gui/applicationdialog.cpp, gui/applicationdialog.h, gui/applicationlist.cpp, gui/applicationlist.h, gui/checkthread.cpp, gui/checkthread.h, gui/common.h, gui/csvreport.cpp, gui/csvreport.h, gui/fileviewdialog.cpp, gui/fileviewdialog.h, gui/main.cpp, gui/mainwindow.cpp, gui/mainwindow.h, gui/projectfile.cpp, gui/projectfile.h, gui/report.cpp, gui/report.h, gui/resultstree.cpp, gui/resultstree.h, gui/resultsview.cpp, gui/resultsview.h, gui/settingsdialog.cpp, gui/settingsdialog.h, gui/threadhandler.cpp, gui/threadhandler.h, gui/threadresult.cpp, gui/threadresult.h, gui/translationhandler.cpp, gui/translationhandler.h, gui/txtreport.cpp, gui/txtreport.h, gui/xmlreport.cpp, gui/xmlreport.h, lib/check.h, lib/checkautovariables.cpp, lib/checkautovariables.h, lib/checkbufferoverrun.cpp, lib/checkbufferoverrun.h, lib/checkclass.cpp, lib/checkclass.h, lib/checkdangerousfunctions.cpp, lib/checkdangerousfunctions.h, lib/checkexceptionsafety.cpp, lib/checkexceptionsafety.h, lib/checkheaders.cpp, lib/checkheaders.h, lib/checkmemoryleak.cpp, lib/checkmemoryleak.h, lib/checkother.cpp, lib/checkother.h, lib/checkstl.cpp, lib/checkstl.h, lib/checkunusedfunctions.cpp, lib/checkunusedfunctions.h, lib/classinfo.h, lib/cppcheck.cpp, lib/cppcheck.h, lib/errorlogger.cpp, lib/errorlogger.h, lib/executionpath.cpp, lib/executionpath.h, lib/filelister.cpp, lib/filelister.h, lib/filelister_unix.cpp, lib/filelister_unix.h, lib/filelister_win32.cpp, lib/filelister_win32.h, lib/mathlib.cpp, lib/mathlib.h, lib/preprocessor.cpp, lib/preprocessor.h, lib/settings.cpp, lib/settings.h, lib/token.cpp, lib/token.h, lib/tokenize.cpp, lib/tokenize.h, test/testautovariables.cpp, test/testbufferoverrun.cpp, test/testcharvar.cpp, test/testclass.cpp, test/testconstructors.cpp, test/testcppcheck.cpp, test/testdangerousfunctions.cpp, test/testdivision.cpp, test/testexceptionsafety.cpp, test/testfilelister.cpp, test/testincompletestatement.cpp, test/testmathlib.cpp, test/testmemleak.cpp, test/testother.cpp, test/testpreprocessor.cpp, test/testredundantif.cpp, test/testrunner.cpp, test/testsimplifytokens.cpp, test/teststl.cpp, test/testsuite.cpp, test/testsuite.h, test/testtoken.cpp, test/testtokenize.cpp, test/testunusedfunctions.cpp, test/testunusedprivfunc.cpp, test/testunusedvar.cpp, tools/dmake.cpp: Update copyright year in all source files 2010-04-13 Reijo Tomperi * lib/filelister_unix.cpp, lib/filelister_unix.h, lib/filelister_win32.cpp, lib/filelister_win32.h: Change some files to UTF-8 2010-04-13 Reijo Tomperi * lib/cppcheck.cpp: Disable "Overall time" output when --showtime is not used 2010-04-13 Daniel Marjamäki * lib/checkother.cpp: astyle formatting 2010-04-13 Zachary Blair * lib/checkother.cpp, lib/checkother.h, test/testother.cpp: Fixed #1530 (possible new check: strlen return value versus zero.) 2010-04-13 Daniel Marjamäki * lib/checkbufferoverrun.cpp, lib/checkclass.h, lib/cppcheck.cpp, lib/settings.h, lib/tokenize.cpp, test/testcppcheck.cpp: dos2unix 2010-04-13 firewave * lib/checkbufferoverrun.cpp, lib/checkclass.h, lib/tokenize.cpp: Fixed some VS2008 warnings 2010-04-13 firewave * cli/cppcheck.vcproj: Removed some duplicated .cpp files from "Header Files" in Visual Studio project file 2010-04-13 firewave * test/testcppcheck.cpp: Added test cases for more command-line options 2010-04-13 firewave * lib/cppcheck.cpp, lib/settings.h: More --showtime updates: - removed "average" - added number of results, average processing time and overall time to non-"file" output 2010-04-12 Oliver Stoeneberg * lib/cppcheck.cpp, lib/settings.cpp, lib/settings.h: showtime: refactoring and improving. Added summary/file/top5/average options. 2010-04-12 Daniel Marjamäki * lib/tokenize.cpp: Revert "Optimization: Made Tokenizer::setVarId a bit faster by temporarily assigning 'string id'. This means less string comparisons are needed." This reverts commit 4b8080e425846513c2edae0b34b92d9804f524f4. 2010-04-12 Daniel Marjamäki * test/testtokenize.cpp: Unit Testing: Better unit testing of Tokenizer::setVarId. Related to ticket #1592 2010-04-12 Reijo Tomperi * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fix #1590 (False negative: Array index out of bounds: "0 <= i") http://sourceforge.net/apps/trac/cppcheck/ticket/1590 2010-04-12 Oliver Stoeneberg * lib/cppcheck.cpp: Fixed #1591 (Patch to increase --showtime resolution) 2010-04-12 Robert Reif * lib/tokenize.cpp, lib/tokenize.h, test/testsimplifytokens.cpp: Fixed #1588 (typedef struct incorrectly simplified) 2010-04-11 Reijo Tomperi * test/testbufferoverrun.cpp: More tests added to test/testbufferoverrun.cpp 2010-04-11 Reijo Tomperi * : commit 9a4cbe0540118476d6497e5a9cf53ab5c7f8a94f Author: Reijo Tomperi Date: Sun Apr 11 22:53:21 2010 +0300 2010-04-11 Daniel Marjamäki * lib/tokenize.cpp: Optimization: Made Tokenizer::setVarId a bit faster by temporarily assigning 'string id'. This means less string comparisons are needed. 2010-04-11 Daniel Marjamäki * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #1587 (Crash while processing file) 2010-04-11 Reijo Tomperi * test/testcppcheck.cpp: Add some unit tests for command line argument parsing 2010-04-11 Reijo Tomperi * Makefile, tools/dmake.cpp: Enable -Wshadow in Makefile 2010-04-11 Reijo Tomperi * lib/checkstl.cpp, lib/tokenize.cpp: Fix last of the -Wshadow warnings. 2010-04-10 Daniel Marjamäki * lib/checkbufferoverrun.cpp: Fixed SIGABRT in new checking 2010-04-10 Daniel Marjamäki * Makefile, lib/checkbufferoverrun.cpp, lib/checkbufferoverrun.h, test/testbufferoverrun.cpp: Fixed #1190 (array index out of bounds when index variable is assigned in a condition) 2010-04-10 Daniel Marjamäki * test/testbufferoverrun.cpp: Unit Testing: Added an ASSERT 2010-04-10 Daniel Marjamäki * test/testbufferoverrun.cpp: Refactoring: simplified test case 2010-04-10 Daniel Marjamäki * gui/main.ui, gui/mainwindow.cpp: gui: removed options for possible error/style 2010-04-10 Daniel Marjamäki * lib/cppcheck.cpp: Cppcheck Help: Removed information about --auto-dealloc because it is not relevant at the moment. 2010-04-10 Daniel Marjamäki * man/manual.docbook: manual: removed information about possible errors. The inconclusive checks have been disabled. Removed section about --auto-dealloc.. this section is not relevant at the moment. 2010-04-10 Daniel Marjamäki * lib/cppcheck.cpp: Cppcheck: Deprecated the command line options -a, --all and --enable=possibleError 2010-04-10 Daniel Marjamäki * lib/checkbufferoverrun.cpp, lib/checkclass.cpp, lib/checkclass.h, lib/checkmemoryleak.cpp, lib/checkother.cpp, lib/checkother.h, lib/checkstl.h, lib/errorlogger.h, lib/settings.cpp, lib/settings.h, test/testbufferoverrun.cpp, test/testclass.cpp, test/testconstructors.cpp, test/testdangerousfunctions.cpp, test/testdivision.cpp, test/testincompletestatement.cpp, test/testmemleak.cpp, test/testsimplifytokens.cpp, test/teststl.cpp: Refactoring: Disable inconclusive checks. They can still be activated for debugging/testing purposes 2010-04-10 Daniel Marjamäki * lib/checkstl.cpp, test/teststl.cpp: Fixed #1357 (problem in stl insert method of set template) 2010-04-10 Zachary Blair * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #779 (Tokenizer: delete register keyword everywhere) 2010-04-10 Daniel Marjamäki * lib/checkclass.cpp: Refactoring: use more specific conditions instead of std::isupper. Only the A-Z are interesting. This also fixes compiler errors. 2010-04-10 Daniel Marjamäki * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #1134 (improve check: pointer access out of bounds not detected (allocated with malloc)) 2010-04-09 Martin Ettl * test/testunusedvar.cpp: ticket 1253 added testcases and one todo 2010-04-09 Reijo Tomperi * cli/threadexecutor.cpp, lib/preprocessor.cpp, lib/preprocessor.h, lib/token.cpp, lib/token.h, test/testcppcheck.cpp, test/testmemleak.cpp, test/testsimplifytokens.cpp: Fix more -Wshadow compile warnings 2010-04-09 Daniel Marjamäki * lib/checkother.cpp, test/testunusedvar.cpp: Fixed some false positives for unused struct members 2010-04-09 Daniel Marjamäki * lib/checkclass.cpp, test/testclass.cpp: Fixed #1579 (False positive: function can be const when return type is unknown) 2010-04-09 Daniel Marjamäki * lib/checkclass.cpp, test/testclass.cpp: Fixed #1584 (False positive: (static) Member variable not assigned a value in operator=) 2010-04-09 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1581 (False positives 'The scope of the variable x can be reduced') 2010-04-08 Martin Ettl * lib/checkmemoryleak.h, lib/cppcheck.cpp: reduced -Wshadow warnings from gcc-4.4 2010-04-08 Daniel Marjamäki * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #1576 ('Index out of bounds' false positive) 2010-04-08 Daniel Marjamäki * lib/checkclass.cpp, test/testunusedprivfunc.cpp: Fixed #1537 ('Unused private function' when using pointer to member function) 2010-04-08 Daniel Marjamäki * lib/filelister.h: astyle formatting 2010-04-08 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1580 (unnamed anonymous struct can segfault) 2010-04-07 Martin Ettl * lib/filelister.h: fixed ticket 1578, class Filelister had no virtual dtor 2010-04-07 Robert Reif * test/testclass.cpp: Unit testing: Testing handling of Borland C++ properties 2010-04-06 Reijo Tomperi * lib/checkmemoryleak.cpp: Fix some -Wshadow compile warnings 2010-04-06 Daniel Marjamäki * : commit 7caaee3739e85d3a577e1dba4deb07d9383b87d4 Author: Reijo Tomperi Date: Tue Apr 6 22:53:05 2010 +0300 2010-04-06 Reijo Tomperi * test/testcppcheck.cpp, test/testpreprocessor.cpp, test/testsuite.cpp: Add a few test cases for CppCheck::parseFromArgs 2010-04-06 Martin Ettl * test/testbufferoverrun.cpp: added TODO testcase for checking fwrite() and fread() check for buffer overrun 2010-04-06 Reijo Tomperi * lib/checkclass.cpp, lib/checkmemoryleak.cpp, lib/checkother.cpp: Fix vs warnings. Apply patch from kidkat. 2010-04-06 Reijo Tomperi * lib/checkunusedfunctions.h: Fix: warning C4138: '*/' found outside of comment 2010-04-06 Robert Reif * test/testclass.cpp: Unit Testing: Better code coverage of the operator= checking 2010-04-06 Reijo Tomperi * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: astyle fix 2010-04-06 Jens Bäckman * lib/checkmemoryleak.cpp: Fix a rare crash with oddly formatted source files 2010-04-06 Martin Ettl * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: fixed ticket 997, now fread and fwrite checked for bufferoverrun 2010-04-05 Reijo Tomperi * test/testbufferoverrun.cpp: Fix line number in previously committed unit test 2010-04-05 Daniel Marjamäki * test/testbufferoverrun.cpp: Unit Testing: Added unit test for untested code in CheckBufferOverrun. Using memset on struct. 2010-04-05 Reijo Tomperi * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Refactor and fix "After a strncpy() the buffer should be zero-terminated" checking, 2010-04-05 Martin Ettl * lib/checkother.cpp, test/testother.cpp: #ticket 1513: added sqrt() support 2010-04-05 Reijo Tomperi * lib/checkother.cpp: astyle fix 2010-04-05 Martin Ettl * : commit fe7c6aed9f441bc06bf16898be07df7f3ec11d71 Author: Martin Ettl Date: Mon Apr 5 20:07:53 2010 +0200 2010-04-05 Daniel Marjamäki * test/testbufferoverrun.cpp: Unit Testing: Buffer overruns when using memchr/memset/memcpy/etc 2010-04-05 Reijo Tomperi * lib/checkother.cpp, lib/checkother.h, lib/mathlib.cpp: astyle fix 2010-04-05 Martin Ettl * lib/checkother.cpp, test/testother.cpp: #ticket 1513 added fmod() support 2010-04-05 Martin Ettl * lib/checkother.cpp, lib/checkother.h, lib/mathlib.cpp, test/testother.cpp: added atan2() check to ticket #1513 2010-04-05 Daniel Marjamäki * Makefile: Makefile: updated the Makefile with dmake 2010-04-05 Daniel Marjamäki * lib/checkmemoryleak.cpp: Cleanup: Removed unused code from CheckMemoryLeak 2010-04-05 Daniel Marjamäki * test/testtoken.cpp: Refactoring: Renamed TestTOKEN to TestToken 2010-04-05 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Uninitialized variables: better handling of 'a[b[..]]' when b is not initialized 2010-03-16 Kimmo Varis * lib/filelister_win32.cpp: Improve ifdeffing. 2010-04-05 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Uninitialized variables: Detect reading uninitialized data through array/pointer variable 2010-04-04 Reijo Tomperi * lib/checkunusedfunctions.cpp, lib/checkunusedfunctions.h, lib/cppcheck.cpp, lib/tokenize.cpp: Fix #1322 (Add cppcheckError and unusedFunction to --errorlist, give out internal errors in xml) http://sourceforge.net/apps/trac/cppcheck/ticket/1322 2010-04-04 Daniel Marjamäki * test/testsimplifytokens.cpp: Refactoring unit testing 2010-04-04 Daniel Marjamäki * test/testtokenize.cpp: Added TODO testcase for ticket #1169 (improve check: divsion by zero not detected when using the shift (>>) operator) 2010-04-04 Daniel Marjamäki * lib/checkmemoryleak.cpp, lib/checkother.cpp, lib/executionpath.cpp, lib/executionpath.h, test/testother.cpp: Refactoring: some refactoring of ExecutionPath. The foundError was removed. No automatic bailout of all checks are made when errors are found. 2010-04-04 Daniel Marjamäki * lib/checkother.cpp, lib/checkother.h, test/testother.cpp: Fixed #1566 (false negative: uninitialized variable) 2010-04-04 Daniel Marjamäki * lib/tokenize.cpp, test/testother.cpp, test/testtokenize.cpp: Tokenizer: tokenize 1E-2 into a single token 2010-04-03 Reijo Tomperi * lib/checkother.cpp, lib/cppcheck.cpp, lib/cppcheck.h, test/testcppcheck.cpp: Fix segmentation fault when calling with --errorlist and add a testcase for it. 2010-04-03 Daniel Marjamäki * lib/checkmemoryleak.cpp: Cleanup: Removed redundant simplification in checkmemoryleak.cpp 2010-04-03 Daniel Marjamäki * lib/checkstl.cpp, lib/checkstl.h, test/teststl.cpp: Cleanup: Removed unfinnished checking of std::find 2010-04-03 Daniel Marjamäki * lib/tokenize.h: astyle formatting 2010-04-03 Daniel Marjamäki * webreport.sh: webreport: detect duplicate code 2010-04-03 Kimmo Varis * cli/cli.pro: Update CLI Qmake project file compiler flags. 2010-04-03 Daniel Marjamäki * lib/tokenize.cpp, lib/tokenize.h: Refactoring: Moved copy/paste code in Tokenizer 2010-04-03 Daniel Marjamäki * lib/checkclass.cpp, lib/checkclass.h: Refactoring: broke out copy/pasted code 2010-04-03 Daniel Marjamäki * lib/checkother.cpp: Borland C++: Fixed compiler error 2010-04-02 Reijo Tomperi * lib/mathlib.cpp: astyle fix 2010-04-02 Martin Ettl * lib/mathlib.cpp, lib/mathlib.h, test/testmathlib.cpp: added a helper function to mathlib::isNullValue(), it checks wheter a string has a null representation or not and returns a boolian result; extended nullchecks in testmathlib.cpp 2010-04-02 Martin Ettl * test/testmathlib.cpp: coverage report fix: more testcases for mathlib::isInt() added in order to get a better coverage 2010-04-02 Daniel Marjamäki * lib/checkclass.cpp, test/testclass.cpp: Fixed #1527 (Function can't be const if it has non-const operator overload call) 2010-04-02 Reijo Tomperi * lib/checkother.cpp: astyle fix 2010-04-02 Martin Ettl * : #ticket #1513 added asin() support 2010-04-02 Daniel Marjamäki * lib/tokenize.cpp, lib/tokenize.h: Cleanup: The Tokenizer doesn't need to handle UTF in code nor multiline string. That is handled in the Preprocessor. 2010-04-02 Reijo Tomperi * lib/checkother.cpp, lib/mathlib.cpp, test/testmathlib.cpp, test/testother.cpp, test/testsuite.h: astyle fix 2010-04-02 Martin Ettl * : commit 1d1d79a1e51f9d990c9c69823c78870ec1c870f0 Author: Daniel Marjamäki Date: Fri Apr 2 20:25:13 2010 +0200 2010-04-02 Martin Ettl * lib/checkother.cpp, lib/mathlib.cpp, test/testmathlib.cpp, test/testother.cpp, test/testsuite.cpp, test/testsuite.h: added acos() check to ticket #1513; added testcases for MathLib::toDoubleNumber(), now double conversion of zeros is handled correctly; changed assertEquals() function of testsuite parameters from unsigned int to double. This is needed to avoid overflow of unsigned int by comparing negative floating point values. 2010-04-02 Daniel Marjamäki * lib/tokenize.cpp, test/testclass.cpp: Fixed #1565 (False positive: Uninitialized variable 'B::j'. There are 2 classes with the name 'B') 2010-04-02 Martin Ettl * lib/checkother.cpp: added log10() check, for checking about parameters passed to mathfunctions that do not make sense 2010-04-02 Daniel Marjamäki * test/testclass.cpp: Added TODO test case to reduce false negatives for uninitialized class members 2010-04-02 Robert Reif * lib/checkclass.cpp: Cleanup: Removed unneeded code 2010-04-02 Daniel Marjamäki * lib/executionpath.cpp, test/testother.cpp: Fixed #1479 (false positive: unintialized variable when using goto) 2010-04-02 Robert Reif * lib/checkclass.cpp, lib/checkclass.h, test/testclass.cpp: Fixed #1563 (false positive: function can be const (assignment to static)) 2010-04-02 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: Fixed #1553 (false positive : uninitialized variable for struct timeval from ) 2010-04-02 Daniel Marjamäki * lib/checkother.cpp, lib/checkother.h, lib/mathlib.cpp, lib/mathlib.h, test/testmathlib.cpp, test/testother.cpp: astyle formatting 2010-04-02 Daniel Marjamäki * cli/cppcheckexecutor.cpp, cli/threadexecutor.cpp, gui/aboutdialog.cpp, gui/applicationdialog.cpp, gui/applicationlist.cpp, gui/checkthread.cpp, gui/csvreport.cpp, gui/fileviewdialog.cpp, gui/mainwindow.cpp, gui/projectfile.cpp, gui/report.cpp, gui/resultstree.cpp, gui/resultsview.cpp, gui/settingsdialog.cpp, gui/threadhandler.cpp, gui/threadresult.cpp, gui/translationhandler.cpp, gui/txtreport.cpp, gui/xmlreport.cpp, lib/check.h, lib/checkautovariables.cpp, lib/checkautovariables.h, lib/checkbufferoverrun.cpp, lib/checkbufferoverrun.h, lib/checkclass.cpp, lib/checkclass.h, lib/checkdangerousfunctions.cpp, lib/checkdangerousfunctions.h, lib/checkexceptionsafety.cpp, lib/checkexceptionsafety.h, lib/checkheaders.cpp, lib/checkmemoryleak.cpp, lib/checkmemoryleak.h, lib/checkother.cpp, lib/checkother.h, lib/checkstl.cpp, lib/checkstl.h, lib/checkunusedfunctions.cpp, lib/cppcheck.cpp, lib/errorlogger.cpp, lib/errorlogger.h, lib/executionpath.cpp, lib/executionpath.h, lib/filelister.cpp, lib/filelister_unix.cpp, lib/filelister_win32.cpp, lib/mathlib.cpp, lib/mathlib.h, lib/preprocessor.cpp, lib/settings.cpp, lib/token.cpp, lib/tokenize.cpp, test/testbufferoverrun.cpp, test/testmathlib.cpp, test/testmemleak.cpp, test/testother.cpp, test/testsimplifytokens.cpp, test/teststl.cpp, test/testsuite.cpp, test/testtoken.cpp, test/testtokenize.cpp, test/testunusedvar.cpp, tools/dmake.cpp, tools/extracttests.cpp: Reverted 'astyle fix'. Those changes are not in sync with my astyle configuration/setup. 2010-04-02 Martin Ettl * cli/cppcheckexecutor.cpp, cli/threadexecutor.cpp, gui/aboutdialog.cpp, gui/applicationdialog.cpp, gui/applicationlist.cpp, gui/checkthread.cpp, gui/csvreport.cpp, gui/fileviewdialog.cpp, gui/mainwindow.cpp, gui/projectfile.cpp, gui/report.cpp, gui/resultstree.cpp, gui/resultsview.cpp, gui/settingsdialog.cpp, gui/threadhandler.cpp, gui/threadresult.cpp, gui/translationhandler.cpp, gui/txtreport.cpp, gui/xmlreport.cpp, lib/check.h, lib/checkautovariables.cpp, lib/checkautovariables.h, lib/checkbufferoverrun.cpp, lib/checkbufferoverrun.h, lib/checkclass.cpp, lib/checkclass.h, lib/checkdangerousfunctions.cpp, lib/checkdangerousfunctions.h, lib/checkexceptionsafety.cpp, lib/checkexceptionsafety.h, lib/checkheaders.cpp, lib/checkmemoryleak.cpp, lib/checkmemoryleak.h, lib/checkother.cpp, lib/checkother.h, lib/checkstl.cpp, lib/checkstl.h, lib/checkunusedfunctions.cpp, lib/cppcheck.cpp, lib/errorlogger.cpp, lib/errorlogger.h, lib/executionpath.cpp, lib/executionpath.h, lib/filelister.cpp, lib/filelister_unix.cpp, lib/filelister_win32.cpp, lib/mathlib.cpp, lib/mathlib.h, lib/preprocessor.cpp, lib/settings.cpp, lib/token.cpp, lib/tokenize.cpp, test/testbufferoverrun.cpp, test/testmathlib.cpp, test/testmemleak.cpp, test/testother.cpp, test/testsimplifytokens.cpp, test/teststl.cpp, test/testsuite.cpp, test/testtoken.cpp, test/testtokenize.cpp, test/testunusedvar.cpp, tools/dmake.cpp, tools/extracttests.cpp: astyle fix 2010-04-02 Martin Ettl * lib/checkother.cpp, lib/checkother.h, lib/mathlib.cpp, lib/mathlib.h, test/testmathlib.cpp, test/testother.cpp: ticket #1513 new check: Detecting obviously wrong math call arguments passed to math functions) 2010-04-01 Reijo Tomperi * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fix #1548 (False positive: array index out of bounds in for-loop) http://sourceforge.net/apps/trac/cppcheck/ticket/1548 2010-04-01 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: Fixed #1552 (false positive: function can be const (array of struct)) 2010-04-01 Robert Reif * lib/checkclass.cpp, lib/checkclass.h, test/testclass.cpp: Fixed #1551 (false positive: The function 'A::vSet' can be const) 2010-04-01 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: Fixed #1550 (Improve check: Assignment to self) 2010-03-31 Reijo Tomperi * cppcheck.cbp: Update codeblocks project file 2010-03-31 Reijo Tomperi * lib/filelister.cpp: Fix cross compiling in Linux Change: #include "fileLister_win32.h" -> #include "filelister_win32.h" 2010-03-31 Daniel Marjamäki * Makefile, tools/dmake.cpp: Makefile: Added flag -Wno-long-long compiler flag to suppress warnings about long long 2010-03-31 Daniel Marjamäki * lib/checkother.cpp, lib/tokenize.cpp, test/testtokenize.cpp, test/testunusedvar.cpp: Fixed #1549 (false positive: uninitialized variable) 2010-03-31 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: Unit testing: Added test case for memset. Ticket: #1538 2010-03-31 Robert Reif * lib/token.cpp, lib/token.h, lib/tokenize.cpp, lib/tokenize.h, test/testdivision.cpp, test/testtokenize.cpp: Fixed #1492 (false negatives: array index out of bounds) 2010-03-31 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: Better checking for assignment to self. Ticket: #1550 2010-03-30 Robert Reif * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #1539 (False positive: possible error Array index out of bounds) 2010-03-29 Daniel Marjamäki * lib/checkclass.cpp, test/testclass.cpp: Fixed #1535 (False positive: member variable not initialized, struct with constructor) 2010-03-29 Robert Reif * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #1536 (###### If you see this, there is a bug ###### Token::Match() - varid was 0) 2010-03-28 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1148 (improve check: usage of uninitialized variables) 2010-03-28 Daniel Marjamäki * : commit 62d2845014da62f3ae18c468a5a4e6076d288adb Author: Robert Reif Date: Sun Mar 28 15:56:13 2010 +0200 2010-03-28 Reijo Tomperi * lib/preprocessor.cpp, test/testpreprocessor.cpp: Fix #1534 (False positive with #elif (defined NAME)) http://sourceforge.net/apps/trac/cppcheck/ticket/1534 2010-03-28 Robert Reif * lib/checkclass.cpp, lib/checkclass.h, test/testclass.cpp: Refactoring: Added CheckClass::isMemberFunc 2010-03-28 Daniel Marjamäki * lib/checkclass.cpp, test/testclass.cpp: Fixed #1516 (C++Builder properties mistaken for uninitialized variables) 2010-03-28 Daniel Marjamäki * lib/executionpath.cpp, test/testother.cpp: Fixed #1533 (False positive: Uninitialized variable) 2010-03-27 Reijo Tomperi * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fix #1532 (hang due to commit 772aa95c8a) http://sourceforge.net/apps/trac/cppcheck/ticket/1532 2010-03-27 Reijo Tomperi * test/testclass.cpp: astyle fix 2010-03-27 Martin Ettl * lib/checkclass.cpp, test/testclass.cpp: extended The function can be const test 2010-03-27 Robert Reif * lib/tokenize.cpp, test/testbufferoverrun.cpp: Fixed #1523 (false negative:: buffer access out of bounds when using shift operator) 2010-03-26 Reijo Tomperi * lib/preprocessor.cpp, test/testpreprocessor.cpp: Partial fix for #1475 (False positive: Not enough parameters for macro: #define A(a, b...)) http://sourceforge.net/apps/trac/cppcheck/ticket/1475 2010-03-26 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: Fixed #1519 (false negative: the function can be declared as const) 2010-03-26 Robert Reif * lib/checkclass.cpp, lib/checkclass.h, lib/tokenize.cpp, test/testclass.cpp: Fixed #1525 (false negative: the function can be declared as const (member declared as mutable)) 2010-03-26 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: Fixed #1529 (false positive: function can be const (struct member variable)) 2010-03-26 Daniel Marjamäki * lib/checkclass.cpp, test/testclass.cpp: Fixed #1496 (false positive: Member variable not initialized in the constructor 'X::m_d') 2010-03-26 Raphael Geissert * lib/checkother.cpp, test/testother.cpp: Fixed #1511 (false negative null pointer deref when dereferencing pointers to constants) 2010-03-26 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: Fixed #1522 (false positive: function can be const (assignment in return)) 2010-03-24 Daniel Marjamäki * lib/tokenize.cpp, test/testpreprocessor.cpp, test/testtokenize.cpp: Tokenizer: Simplify 'false ==' to '!' 2010-03-24 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: Fixed #1522 (false positive: function can be const (assignment in return)) 2010-03-24 Daniel Marjamäki * test/testpreprocessor.cpp: Preprocessor: Added TODO testcase when using variadic macros 2010-03-23 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: Fixed #1515 (false positive: The function 'wxThreadInternal::SetExitCode' can be const) 2010-03-23 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: Fixed #1517 (false negative: the function can be declared as const) 2010-03-20 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #1504 (False positive: Cppcheck incorrectly reports that extern variable is not initialized) 2010-03-20 Daniel Marjamäki * lib/checkmemoryleak.cpp: Fixed #1386 and #1387 (False positives given by CheckMemoryLeakInFunction when temporary and member variable don't have the same allocation and deallocation) 2010-03-19 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #1498 (false positive: The function 'V::vSet' can be const) 2010-03-19 Robert Reif * lib/tokenize.cpp, test/testclass.cpp: Tokenizer: remove unnamed anonymous structures and unions (#1493) 2010-03-19 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: Fixed #1491 (False positive when putting an access specifier at the end of a class declaration) 2010-03-19 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #1428 (False positive: (possible error) Memory leak when memory deleted in destructor) 2010-03-19 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp, test/testtokenize.cpp: Here is a patch that adds support for derived structs and fixes a bug that missed some nested structs. (#1493) 2010-03-19 Raphael Geissert * lib/preprocessor.cpp, test/testpreprocessor.cpp: Fixed #1512 (incorrect handling of ndefs in the preprocessor) 2010-03-19 Daniel Marjamäki * lib/checkother.h, lib/tokenize.cpp: astyle formatting 2010-03-18 Daniel Marjamäki * lib/tokenize.cpp: Fixed #1508 (false positive : uninitialized variable) 2010-03-18 Daniel Marjamäki * lib/checkother.h: doxygen: some updates to the lib/checkother 2010-03-18 Robert Reif * lib/tokenize.cpp, lib/tokenize.h, test/testsimplifytokens.cpp, test/testtokenize.cpp: Partial fix for #1493 (false positives: function can be const and struct or union member is never used) 2010-03-17 Daniel Marjamäki * lib/check.h, lib/checkautovariables.h, lib/checkbufferoverrun.h, lib/checkclass.h, lib/checkdangerousfunctions.h, lib/checkexceptionsafety.h, lib/checkother.cpp, lib/checkother.h, lib/checkstl.h, lib/tokenize.cpp, lib/tokenize.h: doxygen updates 2010-03-17 Daniel Marjamäki * lib/tokenize.h, test/testsimplifytokens.cpp, test/testtokenize.cpp: unit testing: made Tokenizer functions public so they can be unit tested 2010-03-17 Daniel Marjamäki * test/testmemleak.cpp: unit testing: use const_cast instead of defines 2010-03-17 Daniel Marjamäki * doxyfile: doxygen: enabled the JAVADOC_AUTOBRIEF so the @brief isn't required 2010-03-17 Daniel Marjamäki * lib/checkmemoryleak.h: refactoring: no need to hide functions because the definition isn't seen by the core program anyway. 2010-03-17 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1506 (typedef name hiding check combined with forward declaration leeds to false positive) 2010-03-16 Daniel Marjamäki * lib/tokenize.cpp, lib/tokenize.h, test/testsimplifytokens.cpp: Fixed #1476 (false positive: Uninitialized variable) 2010-03-16 Daniel Marjamäki * lib/checkother.cpp, test/testunusedvar.cpp: Fixed #1501 (false positive: Variable 'n' is assigned a value that is never used) 2010-03-16 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1503 (False positive for uninitialized variable) 2010-03-16 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: small const fix 2010-03-15 Kimmo Varis * win_installer/cppcheck.wxs: Installer: Use product name as start menu shortcut item name. 2010-03-15 Kimmo Varis * win_installer/cppcheck.wxs, win_installer/productInfo.wxi: Installer: Move couple of strings to productInfo.wxi. 2010-03-14 Daniel Marjamäki * lib/checkother.h, lib/token.h: doxygen: Some comments for CheckOther, added @todo to Token::Match 2010-03-14 Daniel Marjamäki * lib/cppcheck.h, lib/filelister.h, lib/settings.h: doxygen: updated comments for Cppcheck and FileLister 2010-03-14 Daniel Marjamäki * gui/checkthread.h, gui/resultstree.h, gui/resultsview.h, gui/threadresult.h: doxygen: fixed warning messages 2010-03-14 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #1494 (Improve Tokenizer::simplifyKnownVariables to handle for loops better) 2010-03-14 Daniel Marjamäki * doxyfile: doxygen: removed DETAILS_AT_TOP to get rid of warnings that it is deprecated 2010-03-14 Daniel Marjamäki * lib/preprocessor.cpp, lib/preprocessor.h, lib/settings.h: doxygen: fixed error messages 2010-03-13 Daniel Marjamäki * lib/checkexceptionsafety.h, lib/checkmemoryleak.h, lib/preprocessor.cpp, lib/preprocessor.h, lib/settings.h, lib/token.h: doxygen: fixed warning messages 2010-03-13 Daniel Marjamäki * lib/errorlogger.h, lib/mathlib.h: doxygen: updated comments for ErrorLogger and Severity 2010-03-13 Daniel Marjamäki * lib/checkbufferoverrun.h, lib/checkclass.h, lib/checkdangerousfunctions.h, lib/checkmemoryleak.cpp, lib/checkother.cpp: doxygen: added more comments for CheckNullPointer and CheckUninitVar 2010-03-13 Daniel Marjamäki * lib/checkexceptionsafety.h, lib/checkmemoryleak.h: doxygen: added comments 2010-03-13 Daniel Marjamäki * lib/checkclass.cpp, test/testclass.cpp: Fixed #1465 (false positive: unintialized class member) 2010-03-13 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #1460 (false positive: memory leak when using throw no_memory) 2010-03-13 Daniel Marjamäki * lib/tokenize.cpp, lib/tokenize.h, test/testsimplifytokens.cpp: Fixed #1477 (false positive: Uninitialized variable when pointer given to struct) 2010-03-13 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: Fixed #1491 (False positive when putting an access specifier at the end of a class declaration) 2010-03-13 Daniel Marjamäki * tools/dmake.cpp: astyle formatting 2010-03-13 Daniel Marjamäki * Makefile, tools/dmake.cpp: gcc: removed -Wlogical-op that is not supported by old GCC 2010-03-13 Daniel Marjamäki * cppcheck.cbproj, testrunner.cbproj: Borland C++: Updated project files 2010-03-12 Robert Reif * lib/checkclass.cpp, lib/checkclass.h, test/testclass.cpp: Fixed #1482 (Improve check const-function: function can be made const when assignment not to member variable (false negative)) 2010-03-12 Kimmo Varis * lib/filelister_unix.cpp: Fix ignoring filelister_unix.cpp code in Windows. 2010-03-12 Kimmo Varis * test/test.vcproj, test/testfilelister.cpp: Fix compiling tests. 2010-03-12 Daniel Marjamäki * lib/filelister_win32.cpp: astyle formatting 2010-03-11 Kimmo Varis * tools/Makefile, tools/dmake.cpp: Restore and fix tools Makefile. Fix include lines. 2010-03-11 Kimmo Varis * tools/dmake.cpp, tools/dmake.vcproj: Fix dmake for Windows. 2010-03-01 Kimmo Varis * Makefile, lib/filelister_unix.cpp, lib/filelister_win32.cpp, lib/lib.pri, tools/Makefile, tools/dmake.cpp: Fix compiling in Linux. Fix compiling dmake. 2010-02-28 Kimmo Varis * lib/filelister.cpp, lib/filelister.h, lib/filelister_unix.cpp, lib/filelister_unix.h, lib/filelister_win32.cpp, lib/filelister_win32.h: Add Unix/Linux version of FileLister and do some cleanups. 2010-02-28 Kimmo Varis * lib/filelister.cpp, lib/filelister.h, lib/filelister_win32.cpp: Remove Win32 implementation from common file. 2010-03-11 Kimmo Varis * cli/cppcheck.vcproj, gui/mainwindow.cpp, lib/checkheaders.cpp, lib/cppcheck.cpp, lib/filelister.cpp, lib/filelister.h, lib/filelister_win32.cpp, lib/filelister_win32.h, lib/lib.pri, lib/preprocessor.cpp, lib/tokenize.cpp: Implement Win32 FileLister as separate class. Improve the system used to have separate versions of code of FileLister for Win32 and Linux. New idea is to have Base FileLister class implementing common code and then derived classes for Win32 and Linux specific code. FileLister is not anymore a static class. Instead we use singleton of derived class. 2010-03-10 Daniel Marjamäki * createrelease: Fixed #1489 (Makefile creates debug version) 2010-03-10 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1488 (Invalid warning about shadowed variable) 2010-03-10 Robert Reif * lib/checkclass.cpp, lib/checkclass.h, test/testclass.cpp: Fixed #1486 (--errorlist shows two identical id values) 2010-03-09 Daniel Marjamäki * : commit 93f387cfffc20bd346bca77aad06ef4fe3ff69dd Author: Kimmo Varis Date: Tue Mar 9 20:26:16 2010 +0200 2010-03-09 Daniel Marjamäki * : commit ba7655ef0760375ecdca844dcd7691e834130980 Author: Kimmo Varis Date: Tue Mar 9 20:25:29 2010 +0200 2010-03-09 Kimmo Varis * : commit 4dd117db49143a2ded15c6588580fcdc26c05931 Author: Kimmo Varis Date: Tue Mar 9 17:37:39 2010 +0200 2010-03-09 Daniel Marjamäki * Changelog, createrelease: Changelog: Updated 2010-03-09 Daniel Marjamäki * cli/cppcheck.rc, cli/main.cpp, lib/cppcheck.cpp, man/manual.docbook, win_installer/productInfo.wxi: updated version to 1.42 2010-03-09 Kimmo Varis * win_installer/cppcheck.wxs: Installer: Add custom banner with Cppcheck icon. 2010-03-09 Kimmo Varis * : commit 04ff061bbb1c4d4d894196f9ebf52481d443a4ba Author: Daniel Marjamäki Date: Tue Mar 9 12:41:40 2010 +0100 2010-03-09 Daniel Marjamäki * lib/checkbufferoverrun.cpp: checkbufferoverrun: Refactorings 2010-03-09 Daniel Marjamäki * Makefile, cli/cli.pro, tools/dmake.cpp: dmake,qmake: temporarily removed -Wsign-conversion 2010-03-09 Daniel Marjamäki * lib/checkbufferoverrun.cpp: Revert "checkbufferoverrun: Fixed signedness compiler warnings" This reverts commit 3123de346cd959244315a687c7c8adc89ae46488. This commit caused failed tests 2010-03-09 Daniel Marjamäki * lib/checkbufferoverrun.cpp: checkbufferoverrun: Fixed signedness compiler warnings 2010-03-09 Daniel Marjamäki * createrelease: createrelease: set release mode for Makefile 2010-03-09 Daniel Marjamäki * Makefile: Makefile: updated by latest dmake 2010-03-09 Daniel Marjamäki * cli/cli.pro, tools/dmake.cpp: dmake, qmake: more sensitive compiler and runtime 2010-03-09 Daniel Marjamäki * Makefile, tools/dmake.cpp: dmake: debug/release mode, more gcc warnings 2010-03-09 Daniel Marjamäki * lib/checkclass.cpp, lib/checkclass.h, test/testclass.cpp: Function constness: I don't think it's necessary to show both definition and implementation location. I changed so only the location of the definition is shown. This fixes #1486. 2010-03-08 Reijo Tomperi * lib/check.h: Fix #1485 (cppcheck.exe 1.41 crashes when calling with option --errorlist) http://sourceforge.net/apps/trac/cppcheck/ticket/1485 2010-03-08 Kimmo Varis * win_installer/cppcheck.wixproj, win_installer/readme.txt: Installer: Put installer to Build folder and temp files to BuildTmp. 2010-03-08 Kimmo Varis * win_installer/cli.wxs: Installer: remove unused file. 2010-03-07 Reijo Tomperi * AUTHORS: Robert Reif added to AUTHORS file 2010-03-07 Kimmo Varis * createrelease: Fix filepaths in release script. 2010-03-07 Daniel Marjamäki * createrelease: 1.41: Updated version in 'createrelease' script 2010-03-07 Daniel Marjamäki * cli/cppcheck.rc, cli/main.cpp, lib/cppcheck.cpp, win_installer/productInfo.wxi: 1.41: Set version in files 2010-03-07 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Simplify enum: Fixed segmentation fault if code ends with enum type id 2010-03-07 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1474 (segmentation fault of cppcheck) 2010-03-07 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1472 (false positive: Data is allocated but not initialized: service) 2010-03-06 Reijo Tomperi * lib/tokenize.cpp, lib/tokenize.h, test/testsimplifytokens.cpp: Fix #1469 (False positive: Resource leak when fclose() is inside while) http://sourceforge.net/apps/trac/cppcheck/ticket/1469 2010-03-06 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1432 (false positive: uninitialized variable) 2010-03-06 Reijo Tomperi * lib/tokenize.cpp, test/testtokenize.cpp: Fix #1454 (False positive: arrayindexoutofbounds, static member sharing local name) http://sourceforge.net/apps/trac/cppcheck/ticket/1454 2010-03-05 Robert Reif * lib/checkclass.cpp, lib/checkclass.h, test/testclass.cpp: Fixed #1321 (Improve check const-function: function that is not implemented inline can be made const) 2010-03-04 Kimmo Varis * tools/dmake.vcproj: Add VS project file for building dmake. 2010-03-04 Daniel Marjamäki * lib/preprocessor.cpp, test/testpreprocessor.cpp: Fixed #1466 (false positive: Invalid number of character ({) when these macros are defined: '') 2010-03-04 Daniel Marjamäki * lib/tokenize.cpp: simplify templates: show debug message when bailout out 2010-03-04 Daniel Marjamäki * lib/tokenize.cpp: SimplifyTemplates: some simple refactoring so template name is properly seen. If it's not properly handled then bailout. Related with #1464 2010-03-03 Reijo Tomperi * lib/tokenize.cpp, test/testsimplifytokens.cpp: Partial fix #1464 (takes too long (days) to process some files) Fix template functions that return "&T". http://sourceforge.net/apps/trac/cppcheck/ticket/1464 2010-03-03 Daniel Marjamäki * lib/checkstl.cpp, test/teststl.cpp: STL: don't warn about the suspicious string::find condition because it's not always a bug 2010-03-02 Reijo Tomperi * lib/tokenize.cpp: Add simple debug print to make it possible to detect cases where template simplification goes wrong. http://sourceforge.net/apps/trac/cppcheck/ticket/1464 2010-02-28 Daniel Marjamäki * lib/preprocessor.cpp: Preprocessor: Removed unused function renameMacroVariables 2010-02-28 Kimmo Varis * gui/translationhandler.cpp: Apply patch #1408 (gui build fails with Qt-4.4.3: QLocale) Add missing QLocale include. Patch by barsnick. 2010-02-28 Daniel Marjamäki * lib/checkstl.cpp: STL: refactorings 2010-02-28 Daniel Marjamäki * lib/preprocessor.cpp, lib/tokenize.cpp: cleanup: removed unused variables 2010-02-28 Daniel Marjamäki * lib/checkother.cpp, lib/tokenize.cpp, test/testother.cpp: null pointer: Fixed better error message for 'possible null pointer' + removed redundant check in our Tokenizer. 2010-02-28 Daniel Marjamäki * lib/checkstl.cpp, test/teststl.cpp: STL: suspicious condition when using std::find 2010-02-28 Daniel Marjamäki * lib/checkstl.cpp: STL if find: check given severity 2010-02-27 Reijo Tomperi * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fix #1453 (possible infinite loop processing GNU Go's engine/montecarlo.c) http://sourceforge.net/apps/trac/cppcheck/ticket/1453 2010-02-27 Daniel Marjamäki * test/teststl.cpp: STL: suspicious conditions when using find. Added ok testcases and assert that no error message is written 2010-02-27 Daniel Marjamäki * lib/checkstl.cpp, lib/checkstl.h, test/teststl.cpp: STL: suspicious condition when using find on strings and containers 2010-02-27 Kimmo Varis * win_installer/config.wxi: Installer: Fix path to gui executable. 2010-02-27 Kimmo Varis * gui/gui.pro: GUI: Remove tabs from project file. 2010-02-27 Kimmo Varis * gui/gui.pro: GUI: Build to similar folders than cli in Windows. This makes it easier to handle build files and manage installer. 2010-02-27 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1439 (false positive: memory leak when using realloc) 2010-02-27 Daniel Marjamäki * lib/preprocessor.cpp, lib/tokenize.cpp: Refactoring error messages 2010-02-27 Kimmo Varis * cli/cppcheck.vcproj: Resource compiler still got unnecessary precompiler defines. 2010-02-27 Kimmo Varis * win_installer/config.wxi: Installer: Fix cli executable path. 2010-02-27 Kimmo Varis * cli/cppcheck.vcproj, test/test.vcproj: Move build products to Build and BuildTmp folders. This avoids polluting source folders with created/temp files. Also makes it easier for installer to pick files from consistently named folders. 2010-02-27 Kimmo Varis * cli/cppcheck.vcproj, test/test.vcproj: Projfiles: Fix preprocessor definitions. 2010-02-27 Kimmo Varis * test/test.vcproj: Projfiles: fix test project include paths. 2010-02-27 Kimmo Varis * cli/cppcheck.vcproj: Projfiles: Fix include paths - remove unneeded paths. 2010-02-27 Kimmo Varis * cli/cppcheck.vcproj, test/test.vcproj: Projfiles: Use $IntDir and $OutDir as paths where applicable. Try to also keep outdir clean of unnecessary files and direct most of build- time files to intdir. 2010-02-27 Daniel Marjamäki * lib/preprocessor.cpp: Fixed #1448 (Trying to check Unicode file prints confusing error) 2010-02-27 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1456 (PATCH: Variable hides typedef with same name false positive) 2010-02-26 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1397 (false positive: Memory leak in while loop) 2010-02-26 Reijo Tomperi * lib/preprocessor.cpp, test/testpreprocessor.cpp: Fix #1455 (Preprocessor: Wrong line number in "No pair for character" error) http://sourceforge.net/apps/trac/cppcheck/ticket/1455 2010-02-26 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1456 (PATCH: Variable hides typedef with same name false positive) 2010-02-26 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1457 (PATCH: Variable hides enumerator with same name false negative) 2010-02-26 Kimmo Varis * lib/cppcheck.cpp: Fix comment. 2010-02-25 Reijo Tomperi * test/testother.cpp: Add TODO test case for #1444 (inline suppression suppress all errors of the same type in a function) http://sourceforge.net/apps/trac/cppcheck/ticket/1444 2010-02-25 Reijo Tomperi * test/testtokenize.cpp: Add TODO test cases for #1454 (False positive: arrayindexoutofbounds, static member sharing local name) http://sourceforge.net/apps/trac/cppcheck/ticket/1454 2010-02-25 Reijo Tomperi * test/testtokenize.cpp: Cleanup test/testtokenize.cpp a bit by putting duplicate code into a function. 2010-02-25 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1452 (Simplify goto better) 2010-02-25 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: Fixed #1451 (false positive: operator = should return reference to self) 2010-02-25 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1445 (segfault in Tokenizer::simplifyRedundantParanthesis()) 2010-02-24 Reijo Tomperi * test/testsimplifytokens.cpp, tools/dmake.cpp: Add TODO test case for #1452 (Simplify goto better) http://sourceforge.net/apps/trac/cppcheck/ticket/1452 2010-02-24 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1449 (segmentation fault of cppcheck) 2010-02-23 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1434 (### Internal error in Cppcheck. Please report it.) 2010-02-23 Daniel Marjamäki * : commit 5254822bedb2d18341542fc1947dd2768fbbf068 Author: Daniel Marjamäki Date: Tue Feb 23 21:27:01 2010 +0100 2010-02-23 Reijo Tomperi * lib/preprocessor.cpp: Attempt to fix: #1425: -I doesn't work properly in Windows http://sourceforge.net/apps/trac/cppcheck/ticket/1425 2010-02-23 Daniel Marjamäki * cli/CMakeLists.txt, test/CMakeLists.txt: removed some more cmake files 2010-02-23 Daniel Marjamäki * tools/Makefile: tools/Makefile: fixed so the dmake can be built 2010-02-23 Daniel Marjamäki * Makefile: Makefile: Readded old Makefile again 2010-02-23 Daniel Marjamäki * tools/dmake.cpp: Readded man/install to the Makefile 2010-02-23 Daniel Marjamäki * readme.txt: readme: removed cmake/scons 2010-02-23 Daniel Marjamäki * : commit 8e58cfcd3229b4dca94795f9215bea3a76be5c7d Author: Daniel Marjamäki Date: Tue Feb 23 18:14:33 2010 +0100 2010-02-23 Kimmo Varis * gui/mainwindow.cpp: Fix GUI compile error on Linux. 2010-02-23 Kimmo Varis * gui/CMakeLists.txt: Add htmlhelp lib to GUI's CMake file. 2010-02-23 Kimmo Varis * win_installer/cppcheck.wxs: Update MSI installer to install HtmlHelp manual. 2010-02-23 Kimmo Varis * gui/mainwindow.h: Remove some excessive empty lines. 2010-02-23 Kimmo Varis * gui/cppcheck_de.ts, gui/cppcheck_en.ts, gui/cppcheck_fi.ts, gui/cppcheck_nl.ts, gui/cppcheck_pl.ts, gui/cppcheck_ru.ts, gui/cppcheck_se.ts: Update translation files. 2010-02-23 Kimmo Varis * gui/gui.pro, gui/main.ui, gui/mainwindow.cpp, gui/mainwindow.h: Open HTML help from Help-menu in Windows. 2010-02-23 Kimmo Varis * gui/mainwindow.cpp: Remove some excessive empty lines. 2010-02-22 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1442 (false positive: getting offset instead of dereferencing a null pointer) 2010-02-21 Kimmo Varis * readme.txt: Fix mixed EOL styles in readme.txt. Use LF for now. 2010-02-21 Daniel Marjamäki * lib/checkbufferoverrun.cpp, lib/checkbufferoverrun.h, lib/checkclass.cpp, test/testbufferoverrun.cpp, test/testclass.cpp: Fixed #1409 (False positive: Buffer access out-of-bounds with strncpy and an array in typedef'ed struct) 2010-02-21 Daniel Marjamäki * readme.txt: readme: removed 'dmake' information 2010-02-21 Daniel Marjamäki * lib/checkclass.cpp, test/testclass.cpp: Fixed #1426 (false positive: returning LPVOID can be const) 2010-02-21 Daniel Marjamäki * lib/tokenize.cpp, lib/tokenize.h, test/testtokenize.cpp: Fixed #1396 (false positive: Resource leak) 2010-02-21 Daniel Marjamäki * lib/checkother.cpp: Fixed #1430 (void foo(int nb)) 2010-02-21 Daniel Marjamäki * lib/checkother.cpp: Refactored the CheckOther::functionVariableUsage 2010-02-20 Daniel Marjamäki * lib/tokenize.cpp, lib/tokenize.h, test/testtokenize.cpp: Tokenizer: simple simplification of array sizes 2010-02-20 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #1395 (false positive: Possible null pointer dereference) 2010-02-20 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #1424 (false positive: unintialized variable) 2010-02-20 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #1422 (false positive: uninitialized variable) 2010-02-20 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #1407 (false positive memory leak when returning pointer to the allocated memory) 2010-02-20 Daniel Marjamäki * lib/checkclass.cpp, test/testclass.cpp: Fixed #1403 (false positive: The function can be const) 2010-02-20 Daniel Marjamäki * lib/executionpath.cpp, test/testother.cpp: Fixed #1402 (false positive: uninitialized variable) 2010-02-20 Daniel Marjamäki * tools/dmake.cpp: astyle formatting 2010-02-20 Robert Reif * lib/tokenize.cpp, lib/tokenize.h, test/testsimplifytokens.cpp: Fixed #1427 (new check: check for typedef name hiding) 2010-02-20 Daniel Marjamäki * lib/checkmemoryleak.cpp, lib/tokenize.cpp: Borland C++: Fixed compiler errors (operands must be same type) 2010-02-19 Reijo Tomperi * SConstruct: SConstruct, fix compiling on systems where qt4 is not installed 2010-02-19 Reijo Tomperi * SConstruct: Add: 'scons ccwin32' - Cross compile win32 (cli) in Linux 2010-02-19 Daniel Marjamäki * tools/dmake.cpp: dmake: simplified a little 2010-02-19 Daniel Marjamäki * readme.txt: updated readme.txt 2010-02-19 Reijo Tomperi * SConstruct: SConstruct updated, help target added. Use 'scons -h' to see help 2010-02-19 Reijo Tomperi * SConstruct: SConstruct update: Add coverage-target and add more gcc compiler flags 2010-02-19 Daniel Marjamäki * lib/mathlib.cpp: Refactoring: Using string::compare instead of strncmp 2010-02-19 Daniel Marjamäki * gui/test.cpp, test/test.cxx: renamed gui/test.cpp to test/test.cxx 2010-02-18 Reijo Tomperi * SConstruct, qt4.py: Add SConstruct and qt4.py for alternative build system 2010-02-18 Daniel Marjamäki * lib/checkbufferoverrun.cpp: Refactoring CheckBufferOverrun. Use std::string instead of const char * 2010-02-18 Daniel Marjamäki * lib/checkother.cpp, lib/checkother.h, test/testunusedvar.cpp: astyle formatting 2010-02-18 Daniel Marjamäki * lib/checkother.cpp, lib/checkother.h, test/testother.cpp, test/testunusedvar.cpp: readded checks for unused variables and unreachable code that were removed in 42c608b6f085693f9bc80bf9be9a3570f0a5bf87 2010-02-18 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1411 (### Internal error in Cppcheck. Please report it.) 2010-02-17 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: Fixed #1405 (false positive: operator = should return reference t 2010-02-17 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1405 (false positive: operator = should return reference to itself) 2010-02-17 Daniel Marjamäki * lib/executionpath.cpp, test/testother.cpp: Fixed #1389 (false positive: uninitialized variable) 2010-02-16 Moritz Barsnick * gui/main.ui: Fixed #1334 (gui build fails) 2010-02-16 Robert Reif * lib/tokenize.cpp, lib/tokenize.h, test/testsimplifytokens.cpp: Fixed #1388 (enum token/template parameter confusion - False positive) 2010-02-15 Reijo Tomperi * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fix #1392 (Segfault in CheckBufferOverrun::checkScope) http://sourceforge.net/apps/trac/cppcheck/ticket/1392 2010-02-14 Monika Lukow * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #1333 (Detect access out of bounds 'for (i = 100; i > 0; --i) a[i] = 0;') 2010-02-14 Reijo Tomperi * lib/preprocessor.cpp: Remove unnecessary file open. 2010-02-14 Reijo Tomperi * lib/checkbufferoverrun.cpp, lib/checkclass.h: astyle fix 2010-02-14 Daniel Marjamäki * lib/checkbufferoverrun.cpp, lib/checkbufferoverrun.h, lib/checkclass.cpp, lib/checkclass.h, lib/checkheaders.cpp, lib/checkmemoryleak.cpp, lib/checkmemoryleak.h, lib/checkother.cpp, lib/checkother.h, lib/checkunusedfunctions.cpp, lib/filelister.cpp, lib/filelister.h, lib/settings.cpp, lib/settings.h, lib/token.cpp, lib/token.h, lib/tokenize.cpp, lib/tokenize.h: Refactoring: Use std::string instead of const char * 2010-02-14 Daniel Marjamäki * cli/CMakeLists.txt: Output the cppcheck program in the base folder 2010-02-14 Daniel Marjamäki * Makefile: Removed old Makefile - we'll use CMake from now on 2010-02-12 Reijo Tomperi * lib/token.cpp, lib/token.h: Added %name% pattern to Token. Currenly same as %var%, but in the future %var% is supposed to match only tokens that have varid != 0. 2010-02-12 Reijo Tomperi * lib/tokenize.h: Fix operator= warning from our own code. 2010-02-12 Reijo Tomperi * lib/checkother.cpp, lib/tokenize.cpp, test/testdivision.cpp: Fix #1385 (False positive: unsigned division) http://sourceforge.net/apps/trac/cppcheck/ticket/1385 This also fixes a bug in setVarId(). "unsigned int a" didn't get varid, untill later when unsigned was simplified away. 2010-02-12 Daniel Marjamäki * lib/preprocessor.cpp, test/testpreprocessor.cpp: Fixed #1382 (False positive: uninitialized variable when using assembly to initialize variable) 2010-02-10 Reijo Tomperi * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fix #1340 (False positive: Array out of bounds for re-initialised array pointer) http://sourceforge.net/apps/trac/cppcheck/ticket/1340 2010-02-10 Daniel Marjamäki * lib/checkclass.cpp, test/testclass.cpp: Fixed #1376 (Member variable not initialized in the constructor false positive) 2010-02-09 Reijo Tomperi * lib/filelister.cpp, lib/preprocessor.cpp, test/testfilelister.cpp: Possibly fix #1369 (Internal error - double-declared enum followed by another enum) http://sourceforge.net/apps/trac/cppcheck/ticket/1369 Don't include same file twice if one is a/a.h and other is a/../a/a.h 2010-02-09 Daniel Marjamäki * test/teststl.cpp: Fixed #1373 (###### If you see this, there is a bug ######) 2010-02-09 Reijo Tomperi * lib/tokenize.cpp, test/testtokenize.cpp: Fix #1366 (void Tokenizer::simplifyTemplates() --> Abort) http://sourceforge.net/apps/trac/cppcheck/ticket/1366 2010-02-08 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp, test/testtokenize.cpp: Fixed #1364 (False positive: (error) Possible null pointer dereference) 2010-02-08 Daniel Marjamäki * lib/executionpath.cpp: Fixed #1360 (false positive:: uninitialized class member of nested class inside a function) 2010-02-08 Reijo Tomperi * test/testother.cpp: astyle fix 2010-02-08 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: Fixed #1344 (false negative: missing const not found) 2010-02-07 Monika Lukow * lib/checkother.cpp, test/testother.cpp: Fixed #1094 (Improve check: unusual pointer arithmetic: 'ch+str') 2010-02-07 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #1361 (### Internal error in Cppcheck. Please report it) 2010-02-07 Daniel Marjamäki * lib/checkclass.cpp, lib/token.cpp, lib/tokenize.cpp, test/testtokenize.cpp: Fixed #1356 (Double-False positive: uninitialized variable) 2010-02-07 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Tokenizer: Fixed bug in setVarId. functions should never have a variable id 2010-02-07 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1362 (Internal error when using ?-operator and nested {}) 2010-02-06 Daniel Marjamäki * lib/tokenize.cpp: astyle formatting 2010-02-06 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #1346 (False positive: Memory leak when allocated memory is stored elsewhere inside a condition) 2010-02-06 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #1363 (false positive: memory leak) 2010-02-06 Daniel Marjamäki * lib/cppcheck.cpp: Fixed #824 (Exit code of cppcheck) 2010-02-06 Daniel Marjamäki * lib/checkstl.cpp: fixed null pointer dereference when using --errorlist 2010-02-06 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1352 (false positive: uninitialized variable) 2010-02-06 Daniel Marjamäki * lib/checkstl.cpp: Borland C++: Fixed compiler error. When using 'a?b:c', Borland C++ requires that 'b' and 'c' has the same types 2010-02-06 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1355 (Fixed enum bug when expression contain comma) 2010-02-06 Daniel Marjamäki * lib/preprocessor.cpp, test/testpreprocessor.cpp: Partial fix for #322 (get configurations from headers that don't start at the beginning of the file) 2010-02-06 Reijo Tomperi * test/testtokenize.cpp: Minor fix to previous commit 2010-02-06 Reijo Tomperi * test/testtokenize.cpp: Test case for #1356 (Double-False positive: uninitialized variable) 2010-02-05 Reijo Tomperi * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fix #1358 (False negative: out-of-bounds not found near return) http://sourceforge.net/apps/trac/cppcheck/ticket/1358 2010-02-05 Daniel Marjamäki * lib/checkother.cpp, lib/checkother.h, test/testother.cpp: Fixed #984 (improve output if strncpy is followed by strncat) 2010-02-05 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1351 (add expression support to simplifyEnum) 2010-02-04 Daniel Marjamäki * lib/checkclass.cpp, test/testclass.cpp: CheckClass::noMemset: Refactoring so it handles more complex std template types 2010-02-04 Daniel Marjamäki * lib/checkclass.cpp, test/testclass.cpp: Class checking: Minor refactoring when analysing memset on class 2010-02-04 Daniel Marjamäki * lib/checkclass.cpp, test/testclass.cpp: Fixed #1287 (Use of memset on struct - std template types not handled) 2010-02-03 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1337 (Division by zero with __alignof__()) 2010-02-03 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #1345 (Not initialised variables warning missing in classes with dllexport) 2010-02-03 Daniel Marjamäki * lib/checkunusedfunctions.cpp, test/testunusedfunctions.cpp: Fixed #1342 (Superclass constructors in initializer lists are considered unused functions when superclass has a namespace.) 2010-02-03 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1343 (simplifyTypedef doesn't support deeply nested classes) 2010-02-02 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #1341 (false positive 'uninitialized variable' when using Exception specifications) 2010-02-01 Kimmo Varis * man/CMakeLists.txt: CMake - build htmlhelp manual in Cygwin. I want to build htmlhelp manual for Windows with Cygwin. This is the easiest way to create "native" manual for Windows users. 2010-02-01 Kimmo Varis * man/CMakeLists.txt: CMake - build HTML manual in Cygwin. Latest update to Cygwin made possible to build HTML manual also in the Cygwin. Requires latest version 4.5 of DocBook XML. 2010-02-01 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1339 (add nested struct support to simplifyEnum and simplifyTypedef) 2010-02-01 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Reverted 4f30468c80e954c8f91e95052d777caf31a01e58. There was false positives such as #1335 so please fix them and then re-commit. 2010-02-01 Kimmo Varis * gui/checkthread.cpp: GUI part of ticket #1068 (GUI: stop or quit when processing a large file). 2010-02-01 Kimmo Varis * test/CMakeLists.txt: CMake - fix building tests for Visual Studio. Need to include lib sources directly to test project also. 2010-01-31 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1338 (simplify typedefs with global and nested namespace) 2010-01-31 Reijo Tomperi * test/testbufferoverrun.cpp: Added test case for #1333 (Detect access out of bounds 'for (i = 100; i > 0; --i) a[i] = 0;') http://sourceforge.net/apps/trac/cppcheck/ticket/1333 2010-01-31 Daniel Marjamäki * lib/tokenize.cpp, lib/tokenize.h, test/testsimplifytokens.cpp: Fixed #1004 (improve check: Unintialized variable not detected when using a reference (&)) 2010-01-31 Monika Lukow * : commit 25822dff2462d00e7293fbc0793b8e3994acb1a4 Author: Monika Lukow Date: Sun Jan 31 11:44:30 2010 +0100 2010-01-31 Monika Lukow * lib/checkbufferoverrun.cpp: Fixed #1274 (false positive: Dangerous usage of strncat) 2010-01-31 Monika Lukow * lib/checkother.cpp, test/testother.cpp: Fixed #1094 (Improve check: unusual pointer arithmetic: 'ch+str') 2010-01-31 Kimmo Varis * CMakeLists.txt, cli/CMakeLists.txt, gui/CMakeLists.txt: Make workaround fix for ticket #1299. Since lib does not work when built as an static library, compile lib code as part of cli/gui code. 2010-01-31 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp, test/testtokenize.cpp: Tokenizer: remove redundant assignments and variables 2010-01-31 Daniel Marjamäki * lib/tokenize.cpp, lib/tokenize.h, test/testsimplifytokens.cpp, test/testtokenize.cpp: Tokenizer: Remove redundant assignments and variables 2010-01-31 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Tokenizer: remove the keyword 'inline' 2010-01-31 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Tokenizer: fix for multiple array definitions for a single typedef 2010-01-31 Robert Reif * lib/tokenize.cpp: Fixed #1326 (remove simplified enum definitions) 2010-01-30 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1331 (simplify typedef of complex arrays) 2010-01-30 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Null pointer dereference: sending to output stream 2010-01-30 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Tokenizer: improved the simplifyInitVar 2010-01-30 Daniel Marjamäki * lib/tokenize.cpp, lib/tokenize.h, test/testsimplifytokens.cpp, test/testtokenize.cpp: Fixed #1005 (improve check: nullpointer dereference not found when it is initialized with NULL-cast) 2010-01-30 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed 1329 (simplify typedef of function pointer returning template) 2010-01-29 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1327 (False positive: Redundant code: Found a statement that begins with numeric constant) 2010-01-29 Reijo Tomperi * lib/checkclass.cpp: Remove debug print 2010-01-29 Reijo Tomperi * cppcheck.cbp, lib/checkclass.cpp, lib/checkmemoryleak.cpp, lib/tokenize.cpp, lib/tokenize.h, test/testtokenize.cpp: Improved updateClassList(), but not yet took it into use. findClassFunction is now non-static. updateClassList usage is currently commented out as it doesn't handle class inside a function 2010-01-29 Daniel Marjamäki * lib/checkclass.cpp, test/testclass.cpp: Fixed #1319 (false negative: missing const not found) 2010-01-29 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Tokenizer: Fixed const simplification 2010-01-29 Robert Reif * test/testsuite.cpp, test/testsuite.h: Fixed #1324 (show number of tests that don't produce the desired results) 2010-01-29 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: Fixed #1323 (segfault with style in CheckClass::operatorEqRetRefThis()) 2010-01-29 Robert Reif * lib/preprocessor.cpp, lib/tokenize.cpp: Fixed #1325 (Segmentation fault in simplifyTypedef due to bad preprocessing) 2010-01-29 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1326 (remove simplified enum definitions) 2010-01-27 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #1286 (Memory leak not detected) 2010-01-27 Daniel Marjamäki * lib/cppcheck.cpp: killerbot: Fixed #1314 (specify the files to check in 1 input file) 2010-01-27 Daniel Marjamäki * lib/checkmemoryleak.cpp, lib/checkmemoryleak.h, test/testmemleak.cpp: Fixed #1315 (mismatched allocation and deallocaton not detected) 2010-01-27 Daniel Marjamäki * lib/checkclass.h, lib/checkstl.h: updated --doc output about new checks in 1.40 2010-01-27 Daniel Marjamäki * lib/checkautovariables.cpp, lib/checkautovariables.h, test/testautovariables.cpp: Auto variables: Improved handling of temporaries 2010-01-27 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1316 (### Internal error in Cppcheck. Please report it.) 2010-01-26 Daniel Marjamäki * lib/checkautovariables.cpp, lib/checkautovariables.h, test/testautovariables.cpp: Auto variables: returning pointer to temporary .c_str() data 2010-01-26 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #1302 (False positive: Confusion between POSIX open() and class member) 2010-01-26 Daniel Marjamäki * lib/checkstl.cpp, test/teststl.cpp: Fixed #1278 (Confusing style message formatting) 2010-01-26 Kimmo Varis * CMakeLists.txt, gui/CMakeLists.txt: CMake - Build GUI also in Cygwin if QT4 is found. 2010-01-25 Daniel Marjamäki * lib/checkclass.cpp, test/testclass.cpp: Fixed #1312 (false positive: missing const message on functions returning references) 2010-01-25 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1313 (unnamed enums not simplified properly) 2010-01-24 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1307 (Internal error with typedef in parameter list) 2010-01-24 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Memory leaks: some refactorings and minor improvements 2010-01-24 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1238 (False Negative : memory leak with template class) 2010-01-24 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Tokenizer: Fixed Tokenizer::simplifyKnownVariable bug when the variable is re-assigned in a loop 2010-01-24 Daniel Marjamäki * lib/checkclass.cpp, test/testclass.cpp: Fixed #1308 (False positive: The function 'x' can be const for a static member function) 2010-01-24 Daniel Marjamäki * test/testother.cpp: TestOther::uninitvar1: refactoring. splitting up this function into multiple functions 2010-01-24 Daniel Marjamäki * lib/checkclass.cpp: const class functions: refactorings 2010-01-24 Daniel Marjamäki * lib/checkclass.cpp, test/testclass.cpp: const: fixed false positive when using increment/decrement 2010-01-23 Reijo Tomperi * lib/preprocessor.cpp, lib/tokenize.cpp, lib/tokenize.h: Fix some style errors found from our own code. 2010-01-23 Daniel Marjamäki * lib/checkclass.cpp, test/testclass.cpp: CheckClass: The operator< etc member functions can often be const 2010-01-23 Reijo Tomperi * lib/cppcheck.cpp, lib/tokenize.cpp, lib/tokenize.h, test/teststl.cpp, test/testtokenize.cpp: Fix #1279 (Change error message: Invalid number of character ({). Can't process file.) http://sourceforge.net/apps/trac/cppcheck/ticket/1279 2010-01-23 Daniel Marjamäki * lib/checkstl.cpp, test/teststl.cpp: STL: fixed false positive when using erase 2010-01-23 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1301 (False positive: Data is allocated but not initialized) 2010-01-23 Daniel Marjamäki * lib/checkclass.cpp, test/testclass.cpp: Fixed #1305 (False positive: The function 'x' can be const when indirectly calling a non-const member) 2010-01-23 Daniel Marjamäki * lib/checkclass.cpp, test/testclass.cpp: Fixed #1304 (False positive: The function 'x' can be const when modifing a member) 2010-01-23 Daniel Marjamäki * lib/checkclass.cpp, test/testclass.cpp: Fixed #1303 (False positive: The function 'x' can be const for a constructor) 2010-01-23 Daniel Marjamäki * lib/checkautovariables.cpp, lib/checkautovariables.h, test/testautovariables.cpp: New Check: Detect return of invalid reference 2010-01-23 Duraffort * gui/CMakeLists.txt: Do not build the gui if Qt4 headers are not present. 2010-01-23 Daniel Marjamäki * Makefile, tools/dmake.cpp: Revert "removed tools/dmake and Makefile. Please use cmake from now on." This reverts commit cfacd5fe1014d3fac2cf617f9f9a32ad5c92f561. 2010-01-23 Daniel Marjamäki * lib/checkclass.cpp, lib/checkclass.h, test/testclass.cpp: only run CheckClass::checkConst if style checking is on 2010-01-23 Daniel Marjamäki * lib/checkclass.cpp, lib/checkclass.h, test/testclass.cpp: Partial fix for #13 - detect simple cases of member functions that can be const 2010-01-23 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: detect when function pointer that is null is used 2010-01-23 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Report when using uninitialized function pointer 2010-01-23 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Function pointers: re-enabled the simplifyFunctionPointers 2010-01-22 Daniel Marjamäki * Makefile, tools/dmake.cpp: removed tools/dmake and Makefile. Please use cmake from now on. 2010-01-22 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1298 ((error) ### Internal error in Cppcheck. Please report it. (typedef in fun proto)) 2010-01-22 Daniel Marjamäki * lib/tokenize.cpp, lib/tokenize.h, test/testsimplifytokens.cpp: Fixed #1276 (False Uninitialized variable when using goto) 2010-01-22 Daniel Marjamäki * lib/checkclass.cpp, lib/checkclass.h, lib/checkstl.h: doxygen and minor refactorings 2010-01-22 Daniel Marjamäki * lib/checkclass.cpp, test/testclass.cpp: Fixed #643 (Member variable not initialized not detected if any unknown function called) 2010-01-22 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1297 (typedef causes internal error in vlc/modules/access/imem.c) 2010-01-21 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #1290 (1.40: Internal error) 2010-01-21 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1273 (scope of variable limited not detected in latest versions) 2010-01-21 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: This patch simplifies the function pointer return type code and allows more complex return types. 2010-01-21 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Improved typedef simplification of function pointers 2010-01-20 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #1293 (Things to add to call_func_white_list) 2010-01-20 Daniel Marjamäki * : commit 96359b14ffb8580939a91e57bdc4e4e74b71ee51 Author: Daniel Marjamäki Date: Wed Jan 20 21:19:06 2010 +0100 2010-01-20 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Handle/simplify function pointer typedefs 2010-01-20 Reijo Tomperi * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fix #1296 (false positive: index out of bounds) http://sourceforge.net/apps/trac/cppcheck/ticket/1296 2010-01-19 Reijo Tomperi * cppcheck.cbp: Updated cppcheck.cbp project file. Fixes #1292 (cppcheck.cbp needs an update (V1.40)) http://sourceforge.net/apps/trac/cppcheck/ticket/1292 2010-01-19 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #1282 (False positive for a memory leak in a simple loop) 2010-01-18 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: CheckMemoryLeak: Added 'scanf' and 'sscanf' to the whitelist 2010-01-18 Daniel Marjamäki * lib/checkmemoryleak.cpp, lib/checkmemoryleak.h, test/testmemleak.cpp: Fixed #1266 ('qsort' missing in call_func_white_list) 2010-01-18 Daniel Marjamäki * lib/cppcheck.cpp, lib/cppcheck.h, lib/settings.cpp, lib/settings.h: Added Cppcheck::terminate function that will terminate the checking ASAP 2010-01-18 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1251 (tokenize typedef of reference) 2010-01-17 Kimmo Varis * win_installer/config.wxi, win_installer/cppcheck.wxs: Installer: Add config variable for pdf manual path. 2010-01-17 Kimmo Varis * : commit 2581c9fa9fc8974ccd150f3a4b05e89d592b6bff Author: Kimmo Varis Date: Sun Jan 17 20:41:26 2010 +0200 2010-01-17 Kimmo Varis * win_installer/readme.txt, win_installer/readme_InnoSetup.txt: Installer: Create short documentation for WiX installer. 2010-01-17 Kimmo Varis * win_installer/cppcheck.wxs: Installer: Path variable for gui.exe was missing in one place. 2010-01-17 Kimmo Varis * win_installer/config.wxi, win_installer/cppcheck.wxs, win_installer/productInfo.wxi: Installer: Move installer configuration to new file. 2010-01-17 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1262 (cppcheck false positives: 'Possible null pointer dereference', 'Uninitialized variable') 2010-01-17 Daniel Marjamäki * lib/tokenize.h: Fixed doxygen error messages 2010-01-17 Daniel Marjamäki * lib/checkautovariables.h, lib/checkclass.h, lib/checkdangerousfunctions.h, lib/checkexceptionsafety.h, lib/checkother.h, lib/checkstl.h: Reformatting the --doc output to work better in the wiki 2010-01-17 Daniel Marjamäki * man/manual.docbook: manual: updated version to 1.40 2010-01-17 Daniel Marjamäki * Changelog: updated Changelog 2010-01-17 Daniel Marjamäki * cli/cppcheck.rc, cli/main.cpp, createrelease, lib/cppcheck.cpp, win_installer/productInfo.wxi: Updated version to 1.40 2010-01-17 Daniel Marjamäki * test/testsimplifytokens.cpp: Added TODO test for better pointer aliasing with memset 2010-01-17 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1275 (Cppcheck hangs when analysing the code 'typedef struct { } A, *B, **C;') 2010-01-17 Kimmo Varis * : commit 97eb380bba8deeb480d035e606157d610db98379 Author: Kimmo Varis Date: Sun Jan 17 01:21:45 2010 +0200 2010-01-17 Kimmo Varis * win_installer/cppcheck.wxs: Installer: Update package version to 300 to use latest installer version. 2010-01-17 Kimmo Varis * win_installer/cppcheck.wxs, win_installer/productInfo.wxi: Installer: Add variable for Qt dll location. 2010-01-17 Kimmo Varis * win_installer/cppcheck.wixproj, win_installer/cppcheck.wxs, win_installer/productInfo.wxi: Install MS CRT runtimes. Add VS2008 CRT merge module to the installer. This is the correct way to install MS runtimes. 2010-01-17 Kimmo Varis * win_installer/cli.wxs, win_installer/cppcheck.wixproj, win_installer/cppcheck.wxs, win_installer/productInfo.wxi: Installer: Add project file. Project file allows building installer with msbuild. Add config variables for binaries directories to avoid copying binaries to installer directory. 2010-01-16 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1272 (links in typedef not handled correctly) 2010-01-16 Daniel Marjamäki * : commit 0a8ca1f160bf635f63e4e7d936a65fac995af779 Author: Daniel Marjamäki Date: Sat Jan 16 13:56:57 2010 +0100 2010-01-16 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp, test/testtokenize.cpp: Refactoring the handling of typedefs 2010-01-16 Daniel Marjamäki * cppcheck.cbproj, lib/checkclass.cpp, lib/checkclass.h: Revert "minor tweak in Borland C++ project file" This reverts commit ad06ee4f71698fcd67d2d42d27c8117ff1ecc234. 2010-01-16 Daniel Marjamäki * cppcheck.cbproj, lib/checkclass.cpp, lib/checkclass.h: minor tweak in Borland C++ project file 2010-01-15 Reijo Tomperi * lib/tokenize.cpp, test/testtokenize.cpp: Fix part of #1262 (cppcheck false positives: 'Possible null pointer dereference' http://sourceforge.net/apps/trac/cppcheck/ticket/1262 2010-01-14 Daniel Marjamäki * lib/preprocessor.cpp: refactoring 2010-01-14 Daniel Marjamäki * lib/filelister.cpp, lib/preprocessor.cpp: astyle formatting 2010-01-14 Daniel Marjamäki * cli/threadexecutor.cpp, cli/threadexecutor.h: lanurmi: Fixed threads handling when using Sun compiler 2010-01-14 Daniel Marjamäki * lib/filelister.cpp, lib/filelister.h, lib/preprocessor.cpp: lanurmi: Fixed #1269 (Changes required for compiling with Sun's compiler) 2010-01-14 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #1264 (False positive: Resource leak with if-else in while) 2010-01-14 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1268 (Null pointer dereference false positive) 2010-01-14 Henrik Nilsson * htmlreport/cppcheck-htmlreport: cppcheck-htmlreport now takes a parameter for source code encoding to support non ascii characters. Also present a nicer error message if highlighting fail for a file. 2010-01-13 Daniel Marjamäki * lib/preprocessor.cpp, lib/preprocessor.h: wrote comments about the preprocessor 2010-01-13 Daniel Marjamäki * lib/executionpath.cpp, test/testother.cpp: Fixed #1265 ((error) Uninitialized variable on macro expansion) 2010-01-13 Henrik Nilsson * htmlreport/cppcheck-htmlreport: cppcheck-htmlreport now takes a --title parameter that will be displayed on top of every page. 2010-01-13 Henrik Nilsson * htmlreport/cppcheck-htmlreport: Added !DOCTYPE declaration for html generated by the cppcheck-htmlreport tool. 2010-01-13 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Tokenizer: fixed typedef issues 2010-01-12 Daniel Marjamäki * lib/checkother.cpp: Uninitialized variables: disable subfunction analysis if multiple threads are used 2010-01-12 Daniel Marjamäki * lib/checkmemoryleak.cpp: CheckMemoryLeaks: Added 'strlen' to white list 2010-01-12 Daniel Marjamäki * lib/checkmemoryleak.cpp: Fixed #1258 ('fscanf' missing in call_func_white_list) 2010-01-12 Daniel Marjamäki * lib/checkclass.cpp, test/testclass.cpp: Fixed #1259 (false postive: Member variable 'A::b' is not assigned a value in 'A::operator=') 2010-01-12 Henrik Nilsson * htmlreport/cppcheck-htmlreport: cppcheck-htmlreport now annotates the highlighted source code with the cppcheck error message. 2010-01-12 Daniel Marjamäki * lib/tokenize.cpp, lib/tokenize.h, test/testsimplifytokens.cpp: Tokenizer: some cleanup of std:: 2010-01-12 Henrik Nilsson * htmlreport/cppcheck-htmlreport: Fixed some markup errors in generated html from the cppcheck-htmlreport script. 2010-01-12 Reijo Tomperi * test/testtoken.cpp: Get rid of casting in test file. http://sourceforge.net/apps/trac/cppcheck/ticket/1242 2010-01-12 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1070 (Improve scope error message) 2010-01-12 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #1257 (potential leaks not reported becauseof 'continue' in loop) 2010-01-12 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1252 (Internal error in Cppcheck while parsing struct) 2010-01-11 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1250 (tokenize typedef of union) 2010-01-11 Daniel Marjamäki * lib/checkother.cpp, lib/checkother.h, test/testother.cpp: Fixed #1174 (improve check: Unintialized variable not detected in subfunction) 2010-01-11 Daniel Marjamäki * lib/checkbufferoverrun.cpp, lib/tokenize.cpp, test/testbufferoverrun.cpp: BufferOverrun: negative index is out of bounds 2010-01-11 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Uninitialized variables: fixed false positives when using pointer aliasing 2010-01-11 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1248 (tokenize typedef of array) 2010-01-10 Daniel Marjamäki * lib/executionpath.cpp, test/testother.cpp: ExecutionPath: better handling of for/while/do/switch, it doesn't bail out everything 2010-01-10 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1225 (false negative :: uninitialized variable not detected when using enums) 2010-01-10 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: fixed unlogged errors from the tokenizer and also some errors reported by valgrind 2010-01-10 Daniel Marjamäki * test/testtoken.cpp: ivoire: 64-bit portability fix 2010-01-10 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: memory leaks: better handling of loops and switch 2010-01-10 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #1220 (False memory leak when using while) 2010-01-10 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Memory leaks: Better handling of switch 2010-01-10 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1218 (Improve check: incrementing uninitialized variable i++) 2010-01-10 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1244 (tokenize typedef of unnamed struct) 2010-01-09 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1189 (false negative: using uninitialized variable i 'a[i] = 0;') 2010-01-09 Daniel Marjamäki * lib/preprocessor.cpp, test/testpreprocessor.cpp: Fixed #1231 (Preprocessor: Fail to evaluate '#if ! defined _ABCD_') 2010-01-09 Kimmo Varis * build.bat: Add "all" target for build.bat. 2010-01-09 Kimmo Varis * build.bat: Make release the default target in build.bat. 2010-01-09 Kimmo Varis * build.bat: Allow building both debug and release targets using build.bat. 2010-01-09 Kimmo Varis * build.bat: Improve build.bat to support building from QT prompt. 2010-01-09 Kimmo Varis * build.bat: Fix build.bat after directory renames. 2010-01-09 Kimmo Varis * win_installer/build2.bat: Update build2.bat to point to latest Qt SDK. 2010-01-09 Daniel Marjamäki * lib/tokenize.cpp: Borland C++: Fixed compiler error 2010-01-08 Daniel Marjamäki * lib/executionpath.cpp, test/testother.cpp: fixed segmentation fault 2010-01-08 Daniel Marjamäki * lib/executionpath.cpp, test/testother.cpp: Fixed #1237 (Uninitialized variable false positive for return-value pattern in pan source code.) 2010-01-08 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: Fixed #1233 (false positive: operator = should check for assignment to self) 2010-01-07 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #1235 (CheckMemoryLeakInFunction: Wrong handling of 'fcloseall') 2010-01-07 Kimmo Varis * win_installer/build1.bat: Update batch file for latest Qt SDK location. 2010-01-07 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1232 (segmentation fault of cppcheck when scanning templates) 2010-01-06 Daniel Marjamäki * lib/tokenize.cpp: After suggestion from Jim Vollner, remove dead pointers from the used list 2010-01-06 Daniel Marjamäki * lib/token.cpp, lib/tokenize.cpp: uncomment validation of Tokenizer::_tokensBack 2010-01-06 Daniel Marjamäki * lib/checkbufferoverrun.cpp, lib/checkmemoryleak.cpp, lib/token.cpp, lib/token.h, lib/tokenize.cpp, test/testbufferoverrun.cpp, test/testsimplifytokens.cpp, test/testtoken.cpp: Ticket #1228 : Handle tokensBack in the Token class. When adding&removing tokens the Token class can make sure that this pointer is updated accordingly. It is very important that the tokensBack has the same scope as the token list, otherwise there will be a dead pointer problem. 2010-01-06 Daniel Marjamäki * lib/checkclass.cpp, test/testclass.cpp: Fixed #1221 ([False positive] Member variable not initialized with operator[] gives wrong result) 2010-01-06 Kimmo Varis * CMake/xmlto.cmake, CMakeLists.txt, man/CMakeLists.txt: CMake - build Docbook manual in Linux. Add XMLTO macro to build Docbook manual using xmlto program. xmlto is not available in Windows so limit building to Linux. Adds new target "html" to build which is not run automatically. 2010-01-06 Kimmo Varis * gui/mainwindow.cpp: Fixed #1229 (GUI: project file not read when checking a file) 2010-01-06 Kimmo Varis * gui/mainwindow.cpp: Fixed #1226 (GUI: project include file relative path search problem) Thanks for Robert Reif for finding and reporting problem in previous commit. 2010-01-06 Kimmo Varis * : commit 5bb3c5898bf87a5aed5e3f775daf7c70fe9fe20c Author: Kimmo Varis Date: Wed Jan 6 01:40:26 2010 +0200 2010-01-06 Reijo Tomperi * lib/tokenize.cpp: Added more validating code to tokenizer. Currently commented out. 2010-01-06 Kimmo Varis * gui/gui.cppcheck: Add lib directory to gui "project file" include. 2010-01-05 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: Fixed #1224 (segmentation fault of cppcheck) 2010-01-05 Kimmo Varis * test/CMakeLists.txt: CMake - Include test project's header file to VS IDE project. 2010-01-05 Kimmo Varis * CMakeLists.txt: CMake - Include test project when creating VS IDE project. 2010-01-04 Robert Reif * lib/tokenize.cpp, lib/tokenize.h, test/testsimplifytokens.cpp: Fixed #1215 (are enums processed properly?) 2010-01-03 Kimmo Varis * cli/CMakeLists.txt: CMake - add header files to CLI project and VS project. 2010-01-03 Kimmo Varis * lib/CMakeLists.txt: CMake - add header files to lib project (and to VS project). 2010-01-03 Kimmo Varis * gui/CMakeLists.txt: CMake - Create folders for GUI files in Visual Studio IDE. 2010-01-03 Kimmo Varis * : commit b483221f4534938ef1849d6eefa5b28c4924c952 Author: Kimmo Varis Date: Sun Jan 3 19:50:04 2010 +0200 2010-01-03 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1023 (improve check: Unintialized variable not detected when using +=) 2010-01-03 Daniel Marjamäki * test/testbufferoverrun.cpp: refactoring 2010-01-03 Daniel Marjamäki * test/testbufferoverrun.cpp: added test case for #1193 (false negative: array out of bounds in loop when there is calculation) 2010-01-03 Daniel Marjamäki * lib/executionpath.cpp, test/testother.cpp: Fixed #1216 (false positive: uninitialized variable when using exit|abort) 2010-01-03 Daniel Marjamäki * lib/checkother.cpp, lib/executionpath.cpp, test/testother.cpp: Fixed #440 (NULL referencing not detected) 2010-01-03 Daniel Marjamäki * gui/mainwindow.cpp: Fixed #1187 (GUI: fix project file loading) 2010-01-03 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: Fixed #1184 (improve test: operator =) 2010-01-03 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1214 (false positive: uninitialized variable 'bool fixed = std::ios_base::fixed;') 2010-01-02 Daniel Marjamäki * lib/preprocessor.cpp, test/testpreprocessor.cpp: Fixed #1203 (Preprocessor: Doesn't handle macros usage that contain ';') 2010-01-02 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1209 (False positive: uninitialized variable c when it is initialized with 'ab(sizeof(xyz), &c)') 2010-01-02 Robert Reif * lib/checkclass.cpp, lib/checkclass.h, lib/tokenize.cpp, lib/tokenize.h, test/testconstructors.cpp, test/testtokenize.cpp: Fixed #1211 (add struct support for constructor checks) 2010-01-02 Daniel Marjamäki * lib/executionpath.cpp, test/testother.cpp: Fixed #1202 (false positive: uninitialized variable when using 'do') 2010-01-02 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #1204 (Tokenizer::findClassFunction broken) 2010-01-02 Slava Semushin * lib/checkautovariables.cpp, test/testautovariables.cpp: Fixed #1013 (autovariables: detect when assigning parameter **par) http://sourceforge.net/apps/trac/cppcheck/ticket/1013 2010-01-02 Slava Semushin * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1197 (Segmentation fault when we define function which was already defined by preprocessor) http://sourceforge.net/apps/trac/cppcheck/ticket/1197 2010-01-01 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1178 (1.39: Internal error) 2010-01-01 Daniel Marjamäki * lib/executionpath.cpp, test/testother.cpp: Fixed #1200 (false positive 'uninitialized variable' when using throw) 2010-01-01 Daniel Marjamäki * lib/checkother.cpp: refactoring the fix for #1191 2010-01-01 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1191 (false positive: uninitialized variable) 2010-01-01 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #1196 (Hang: Cppcheck hang for the file linux-2.6/drivers/crypto/hifn_795x.c) 2009-12-31 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1188 (false negative: dereferencing p, which is a null pointer 'int y = 5 + *p') 2009-12-31 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: fixed a hang in Tokenizer::simplifyFunctionParameters 2009-12-31 Daniel Marjamäki * test/testclass.cpp: Self assignment in class: added TODO test cases to reduce false positives 2009-12-31 Robert Reif * lib/checkclass.cpp, lib/checkclass.h, test/testclass.cpp: Fixed #1184 (improve test: operator =) 2009-12-31 Daniel Marjamäki * lib/cppcheck.cpp: fixed cppcheck warning 2009-12-31 Daniel Marjamäki * lib/preprocessor.cpp: Fixed #1181 (Preprocessor fails while expanding macros) 2009-12-31 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1183 (False positive: uninitialized variable p 'd = bar(sizeof(*p));') 2009-12-30 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1182 (False positive: uninitialized variable 'int *pa = &a;') 2009-12-30 Daniel Marjamäki * lib/checkmemoryleak.cpp, lib/checkmemoryleak.h, test/testmemleak.cpp: Fixed #1173 (Improve check: memory leak not detected in constructor) 2009-12-30 Robert Reif * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1167 (### Internal error in Cppcheck. Please report it.) 2009-12-30 Daniel Marjamäki * lib/checkother.cpp: cleanup 2009-12-30 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1087 (uninitialized data not detected 'char z = *str') 2009-12-30 Daniel Marjamäki * lib/checkother.cpp, lib/tokenize.cpp, test/testother.cpp, test/testtokenize.cpp: Fixed #1105 (improve check: uninitialized variable not detected for 'a = a') 2009-12-30 Robert Reif * lib/checkclass.cpp, test/testclass.cpp: Fixed #1176 (void operator = check doesn't support struct) 2009-12-30 Daniel Marjamäki * lib/checkother.cpp, lib/checkother.h, test/testother.cpp: Fixed #1041 (passing a nullpointer to a reference) 2009-12-30 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #1067 (Tokenizer: K&R style function that returns function pointer) 2009-12-30 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1177 (False positive: pointer is not dereferenced 'sizeof(*p)') 2009-12-30 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #1168 (false positive: Uninitialized variable) 2009-12-29 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1166 (improve check: using uninitialized pointer to create reference 'int &r(*p);') 2009-12-29 Daniel Marjamäki * lib/tokenize.cpp, test/testother.cpp: Robert Reif: Fixed #1163 (post increment test broken for complex template types) 2009-12-29 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1165 (Tokenizer: wrong simplification of 'do { .. } while (0)' if the body contains continue or break) 2009-12-29 Daniel Marjamäki * lib/checkother.cpp, lib/executionpath.cpp, lib/executionpath.h: ExecutionPath: Refactoring. Removed the bailOut variable 2009-12-29 Daniel Marjamäki * lib/executionpath.cpp, lib/executionpath.h, test/testother.cpp: Fixed #1160 (Null pointer dereference vs. goto) 2009-12-29 Daniel Marjamäki * lib/checkclass.cpp: astyle formatting 2009-12-29 Daniel Marjamäki * lib/checkclass.cpp, test/testclass.cpp: Robert Reif: Fixed #1164 (only first void operator = found) 2009-12-29 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Robert Reif: Fixed #1162 (add support to tokenize typedefs with templates) 2009-12-28 Daniel Marjamäki * lib/executionpath.cpp, lib/preprocessor.cpp: Valgrind: Fixed memory leaks when running testrunner that was found by Valgrind 2009-12-28 Daniel Marjamäki * lib/checkstl.h, test/teststl.cpp: Robert Reif: Fixed #1158 ((possible style) message with regular check) 2009-12-28 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Robert Reif: Fixed #1161 (add tokenize support for typedefs with enum definitions) 2009-12-28 Daniel Marjamäki * lib/tokenize.cpp: Fixed #1159 (Valgrind gives error in Tokenizer::simplifyWhile0) 2009-12-28 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1156 ([False positive] Uninitialized variable - class member in constructor) 2009-12-28 Daniel Marjamäki * lib/cppcheck.cpp, lib/cppcheck.h, lib/preprocessor.cpp, lib/settings.cpp, lib/settings.h: exitcode suppressions. Partly fixes #1113 2009-12-28 Daniel Marjamäki * lib/tokenize.cpp, lib/tokenize.h, test/testsimplifytokens.cpp, test/testtokenize.cpp: Tokenizer: Simplify 'while (0)' better 2009-12-27 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed another issue with #1154 (false positive: Data is allocated but not initialized) 2009-12-27 Daniel Marjamäki * lib/mathlib.cpp, test/testmathlib.cpp: astyle formatting 2009-12-27 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1154 (false positive: Data is allocated but not initialized) 2009-12-27 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1138 (improve check: dereferencing uninitialized pointer) 2009-12-27 Martin Ettl * lib/mathlib.cpp, test/testmathlib.cpp: added further testcases to testmathlib::convert(); now the conversion of +-[hexnumber|octalnumber] works correctly 2009-12-27 Martin Ettl * test/testmathlib.cpp: added further testcases to testmathlib::isint() 2009-12-27 Martin Ettl * lib/mathlib.cpp, test/testmathlib.cpp: extended testcases of mathlib; fixed zero conversion: +0 and -0 is converted to 0 2009-12-27 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #972 (New check: return pointer of stack memory) 2009-12-27 Daniel Marjamäki * lib/checkother.cpp: Uninitialized variables: Refactoring and commenting a little 2009-12-27 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1153 (False positive: uninitialized data for reinterpret_cast) 2009-12-26 Daniel Marjamäki * test/testmemleak.cpp: Fixed #1120 (Test compile warnings with Cygwin) 2009-12-26 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Uninitialized variables: Fixed false positive for 'if (ptr)' 2009-12-26 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1151 (false positive: Data is allocated but not initialized) 2009-12-26 Daniel Marjamäki * lib/executionpath.cpp: Fixed #1152 (Hang/Slow: ExecutionPath handling hangs) 2009-12-25 Daniel Marjamäki * lib/checkother.cpp, lib/executionpath.cpp, lib/executionpath.h, test/testother.cpp: ExecutionPath: Refactoring if-handling 2009-12-25 Daniel Marjamäki * lib/checkmemoryleak.cpp, lib/checkother.cpp, lib/executionpath.cpp, lib/executionpath.h: ExecutionPath: Refactoring the interface 2009-12-25 Daniel Marjamäki * lib/checkother.cpp, lib/executionpath.cpp, lib/executionpath.h, test/testother.cpp: Fixed #683 (wrong usage of strcmp) 2009-12-25 Daniel Marjamäki * man/manual.docbook: htmlreport: added brief information in the manual 2009-12-25 Daniel Marjamäki * : Merge commit 'hn/master' 2009-12-25 Daniel Marjamäki * lib/cppcheck.cpp: Robert Reif: fix cppcheck post increment warning 2009-12-25 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1141 (Tokenizer: Wrong simplification of calculations) 2009-12-23 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: fixed unit testing 2009-12-23 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Refactoring the uninitialized variable / null pointer checks so they use a common function to inspect function calls 2009-12-23 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1147 (Improve check: return uninitialized variable) 2009-12-23 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed false positives about uninitialized variables 2009-12-23 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1137 (false positive: uninitialized variable when using a class object) 2009-12-23 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Robert Reif: Fixed #1139 (false negative: CheckOther::postIncrement() only finds at most one problem) 2009-12-23 Daniel Marjamäki * test/testtokenize.cpp: Robert Reif: code cleanup 2009-12-23 Daniel Marjamäki * lib/cppcheck.cpp: Robert Reif: fix a style warning 2009-12-22 Daniel Marjamäki * lib/checkmemoryleak.cpp: Borland C++: Fixed compiler error 2009-12-22 Daniel Marjamäki * lib/executionpath.h, lib/preprocessor.cpp: Visual Studio: Added casts to silence compiler warnings 2009-12-22 Daniel Marjamäki * lib/checkmemoryleak.cpp, lib/checkmemoryleak.h: Visual Studio: Fixed unittests 2009-12-22 Daniel Marjamäki * testrunner.cbproj: C++ Builder: updated the testrunner project file - added the lib/executionpath.cpp 2009-12-22 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1133 (Uninitialized array: strchr, strrchr, etc) 2009-12-22 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1128 (false positive: Data is allocated but not initialized) 2009-12-22 Daniel Marjamäki * lib/preprocessor.cpp, test/testpreprocessor.cpp: Fixed #1112 (cppcheck fails because of accented characters in comments) 2009-12-22 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1127 (Segfault with template) 2009-12-22 Daniel Marjamäki * test/testmemleak.cpp, test/testother.cpp: astyle formatting 2009-12-22 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Eric Sesterhenn: Fixed #1130 (False positive uninitialized variable) 2009-12-22 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Eric Sesterhenn: Fixed #1131 (descriptor leak false positive) 2009-12-22 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Robert Reif: Fixed #1108 (Only trivial typedefs are tokenized properly) 2009-12-21 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1096 (Non-obvious error message: Overlapping data buffer) 2009-12-21 Daniel Marjamäki * lib/checkstl.cpp, test/teststl.cpp: Fixed #1095 (Non-obvious error message: Dangerous usage of erase) 2009-12-21 Daniel Marjamäki * lib/preprocessor.cpp: preprocessor: removed unnecessary casts 2009-12-21 Daniel Marjamäki * lib/checkexceptionsafety.cpp, test/testexceptionsafety.cpp: Fixed #1126 (False positive: upon exception there is memory leak (calling unknown function)) 2009-12-21 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: ericsesterhenn: Fixed #1091 (improve check: nullpointer dereference not detected) 2009-12-21 Daniel Marjamäki * lib/checkmemoryleak.cpp, lib/checkother.cpp, lib/executionpath.cpp, lib/executionpath.h: Execution Path: Refactoring 2009-12-20 Reijo Tomperi * lib/preprocessor.cpp, test/testpreprocessor.cpp: Fix #1124 (Invalid number of character ((). Can't process file.) http://sourceforge.net/apps/trac/cppcheck/ticket/1124 2009-12-20 Daniel Marjamäki * lib/checkother.cpp, lib/executionpath.h, test/testmemleak.cpp: Execution Path: some refactorings of the checking 2009-12-20 Daniel Marjamäki * lib/executionpath.cpp, test/testother.cpp: Fixed #1119 (false positve: uninitialized variable y when y is assigned in inner expression 'x = (y = 10)') 2009-12-20 Daniel Marjamäki * lib/tokenize.cpp: Fixed #1117 (segmentation fault of cppcheck) 2009-12-20 Kimmo Varis * CMakeLists.txt, test/CMakeLists.txt: CMake - add 'make check' -target. Tests are now excluded from normal targets to make compiling faster. 'make check' -target will compile and run tests. 2009-12-20 Kimmo Varis * cli/CMakeLists.txt, gui/CMakeLists.txt, lib/CMakeLists.txt, test/CMakeLists.txt: CMake - use more strict compiler flags. 2009-12-20 Daniel Marjamäki * lib/preprocessor.cpp: Preprocessor: Use 'unsigned char' instead of 'char' 2009-12-20 Daniel Marjamäki * lib/checkclass.cpp: code cleanup 2009-12-19 Daniel Marjamäki * lib/checkstl.cpp: stl size: minor fix to prevent segmentation fault when token is null 2009-12-19 Daniel Marjamäki * lib/checkstl.h: stl size: added documentation 2009-12-19 Daniel Marjamäki * lib/checkclass.cpp, lib/checkclass.h, test/testclass.cpp, test/testconstructors.cpp: Fixed #1093 (False positive: missing constructor) 2009-12-19 Daniel Marjamäki * lib/checkbufferoverrun.cpp, lib/checkstl.cpp, test/testbufferoverrun.cpp: astyle 2009-12-19 Kimmo Varis * gui/CMakeLists.txt: CMake- fix building GUI from different directory. 2009-12-19 Kimmo Varis * CMakeLists.txt: CMake - disable building GUI for Cygwin. 2009-12-19 Kimmo Varis * : commit d51520d656459780d4addc67cd2e1e3dd830bb2b Author: Kimmo Varis Date: Sat Dec 19 16:54:38 2009 +0200 2009-12-19 Kimmo Varis * gui/cppcheck-gui.rc: Fix Windows GUI resource file. 2009-12-19 Daniel Marjamäki * lib/checkstl.cpp, lib/checkstl.h, test/teststl.cpp: robert reif: Fixed #1118 (new check: use empty() instead of checking size() against zero) 2009-12-19 Kimmo Varis * cli/CMakeLists.txt, gui/CMakeLists.txt, test/CMakeLists.txt: CMake - cleaner way to set additional library for Windows. 2009-12-18 Daniel Marjamäki * lib/checkstl.cpp, test/teststl.cpp: Fixed #1107 (False positive: Dangerous usage of erase, when using std::list) 2009-12-18 Daniel Marjamäki * lib/filelister.cpp: lanurmi: Fixed #1016 (Patch: Refactor #ifdefs in filelister.cpp) 2009-12-18 Daniel Marjamäki * cli/cppcheck.vcproj, test/test.vcproj: Fixed #1101 (link error with latest git in Visual Studio) 2009-12-18 Daniel Marjamäki * cppcheck.cbproj: C++ Builder: updated project file 2009-12-18 Daniel Marjamäki * lib/checkbufferoverrun.h: added error info about the strncpy check 2009-12-18 Daniel Marjamäki * lib/checkbufferoverrun.cpp, lib/checkbufferoverrun.h, test/testbufferoverrun.cpp: ericsesterhenn: Fixed #1106 (check if buffer is zero terminated after a strncpy) 2009-12-17 Kimmo Varis * cli/CMakeLists.txt, gui/CMakeLists.txt, test/CMakeLists.txt: CMake - Fix Windows build. 2009-12-17 Kimmo Varis * lib/CMakeLists.txt: CMake - add missing file in lib. 2009-12-17 Kimmo Varis * lib/CMakeLists.txt: CMake - reorder files in lib's makefile. 2009-12-14 Kimmo Varis * gui/CMakeLists.txt: CMake - build GUI translation files. 2009-12-14 Kimmo Varis * CMakeLists.txt, gui/CMakeLists.txt: CMake GUI build - fix adding resources to GUI. 2009-12-14 Kimmo Varis * CMakeLists.txt, gui/CMakeLists.txt: Build GUI using CMake. This is a start for building GUI with CMake. It works but it is a bit ugly. 2009-12-14 Kimmo Varis * CMakeLists.txt, test/CMakeLists.txt: Add testsuite to CMake build files. 2009-12-12 Kimmo Varis * CMakeLists.txt, cli/CMakeLists.txt, lib/CMakeLists.txt: Add simple CMake build files to build lib and cli. Apparently not everybody wants to use QMake to build cppcheck. Which is understandable if you only want to hack on/build lib and cli. Qt and QMake are pretty lot to install for just that. So lets start using CMake. It is widely used and is "just" build system and not programming framework. CMake is also easy to use for building Qt software too so it can replace QMake. This first commit only builds lib and cli for Linux. 2009-12-15 Daniel Marjamäki * lib/tokenize.cpp, test/testpreprocessor.cpp: Fixed #1086 (segmentation fault of cppcheck '#if define(A)+define(B)+define(C)!=1') 2009-12-15 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1103 (false positive: uninitialized variable when using references) 2009-12-15 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: TestLocalLeaks: going out of scope 2009-12-15 Henrik Nilsson * htmlreport/cppcheck-htmlreport: cppcheck doesn't always report a filename for an error. Added some error checking so this tool doesn't crash. 2009-12-15 Henrik Nilsson * htmlreport/setup.py: Added a installation script for the cppcheck-htmlreport utility. The script uses distutils to install the script into /usr/bin/. The following will install the script: sudo ./setup.py install 2009-12-15 Reijo Tomperi * lib/checkmemoryleak.cpp: Fix compiler error: cast from 'CheckLocalLeaks*' to 'int' loses precision 2009-12-14 Daniel Marjamäki * lib/lib.pri: fixed #1099 (GUI: unable to build gui from current git-head) 2009-12-15 Reijo Tomperi * lib/preprocessor.cpp, test/testpreprocessor.cpp: Fix #1076 (Invalid number of character ({). Can't process file.) http://sourceforge.net/apps/trac/cppcheck/ticket/1076 2009-12-14 Daniel Marjamäki * Makefile, lib/checkmemoryleak.cpp, lib/checkmemoryleak.h, lib/checkother.cpp, lib/executionpath.cpp, lib/executionpath.h, test/testmemleak.cpp: Added TestLocalLeaks 2009-12-13 Reijo Tomperi * test/testpreprocessor.cpp: Test case for #1076 (Invalid number of character ({). Can't process file.) 2009-12-13 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #1082 (False positive: Resource leak in loop which exits only after releasing resource) 2009-12-13 Daniel Marjamäki * lib/preprocessor.cpp, lib/preprocessor.h, test/testcppcheck.cpp, test/testpreprocessor.cpp, test/testsuite.cpp: Fixed #1084 (define configuration lost) 2009-12-13 Daniel Marjamäki * lib/preprocessor.cpp, test/testpreprocessor.cpp: Fixed #1058 (Preprocessor: extracting configuration for '#if DEF == 1') 2009-12-13 Daniel Marjamäki * lib/checkclass.cpp, test/testclass.cpp: Fixed #1072 (False positive: class member initialization with '*p=0;') 2009-12-12 Daniel Marjamäki * using_gcov.txt: removed deprecated file using_gcov.txt 2009-12-12 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #1097 (Internal error: When macro is not expanded 'ABC(for (i=0;i<10;i++) ..);') 2009-12-12 Daniel Marjamäki * lib/checkexceptionsafety.cpp, test/testexceptionsafety.cpp: Fixed #1074 (Exception safety: auto deallocated classes don't leak) 2009-12-11 Daniel Marjamäki * lib/preprocessor.cpp, test/testpreprocessor.cpp: Preprocessor: Fixed TODO_ASSERT_EQUALS 2009-12-11 Daniel Marjamäki * lib/checkclass.cpp, test/testclass.cpp: Fixed #1080 (false positive: member variable not initialized) 2009-12-11 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1075 (False positive: uninitialized variable 'return bar(s);') 2009-12-11 Daniel Marjamäki * lib/preprocessor.cpp, lib/tokenize.cpp, test/testpreprocessor.cpp: Fixed #1060 (Preprocessor: wrong define handling) 2009-12-11 Henrik Nilsson * htmlreport/cppcheck-htmlreport: index.html page is now complete with a list of files and all errors found. Other changes: * added a stylesheet and made the html design much better. * contains links directly to the line in the source file. 2009-12-09 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #1061 (false positve: uninitialized variable) 2009-12-09 Daniel Marjamäki * lib/tokenize.cpp, test/testpreprocessor.cpp: Fixed #1024 (Preprocessor: doesn't expand macro in macro) 2009-12-09 Daniel Marjamäki * lib/preprocessor.cpp, lib/preprocessor.h, test/testpreprocessor.cpp: Preprocessor: Refactoring the Preprocessor::expandMacros 2009-12-08 Reijo Tomperi * lib/checkunusedfunctions.cpp, test/testunusedfunctions.cpp: Fix #1071 ((style) The function 'throw' is never used) http://sourceforge.net/apps/trac/cppcheck/ticket/1071 2009-12-08 Reijo Tomperi * lib/tokenize.cpp: Apply patch from #1066 (Speed up cppcheck) http://sourceforge.net/apps/trac/cppcheck/ticket/1066 2009-12-08 Henrik Nilsson * htmlreport/README.txt, htmlreport/cppcheck-htmlreport: Added a python script that takes the cppcheck output xml file and generates a html report of it. The html report is complete with syntax highlighted source code using the pygments module. This initial commit contains generation of html files but the actual errors is missing from the html content and the index.html file. 2009-12-08 Reijo Tomperi * lib/checkautovariables.cpp, test/testautovariables.cpp: Fix #1069 (Minor spelling mistake across cppcheck) http://sourceforge.net/apps/trac/cppcheck/ticket/1069 2009-12-08 Reijo Tomperi * test/testsimplifytokens.cpp: Added test case for else if simplification 2009-12-07 Reijo Tomperi * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fix #1065 (Internal error - incrementing single char in char array) http://sourceforge.net/apps/trac/cppcheck/ticket/1065 2009-12-07 Daniel Marjamäki * lib/checkexceptionsafety.cpp, test/testexceptionsafety.cpp: Fixed #1063 (False positive: deallocated memory doesn't leak upon exception) 2009-12-07 Reijo Tomperi * lib/tokenize.cpp, test/testtokenize.cpp: Fix #1057 (Tokenizer: negative numbers are not tokenized correctly in switch-case) http://sourceforge.net/apps/trac/cppcheck/ticket/1057 2009-12-06 Reijo Tomperi * lib/checkother.cpp: small fix to previous commit 2009-12-06 Reijo Tomperi * lib/checkother.cpp: Minor refactoring for checkother.cpp 2009-12-06 Daniel Marjamäki * lib/checkother.cpp: STL: fix iterator bug 2009-12-06 Daniel Marjamäki * lib/checkother.cpp: Visual C++: Suppress compiler warnings 2009-12-06 Daniel Marjamäki * lib/preprocessor.cpp, lib/preprocessor.h, test/testpreprocessor.cpp: Preprocessor: Reverted refactoring 2009-12-06 Daniel Marjamäki * lib/preprocessor.cpp, lib/preprocessor.h, test/testpreprocessor.cpp: Preprocessor: Fix so the unit tests work again 2009-12-06 Daniel Marjamäki * lib/checkother.cpp, lib/cppcheck.cpp, lib/preprocessor.cpp, lib/preprocessor.h, lib/settings.cpp, lib/settings.h: twistedwave: Fixed #1055 (Support for inline suppressions) 2009-12-06 Daniel Marjamäki * lib/preprocessor.cpp, lib/preprocessor.h, test/testpreprocessor.cpp: Preprocessor: Refactoring to make it simpler 2009-12-06 Daniel Marjamäki * lib/checkother.cpp, lib/checkother.h, test/testother.cpp: newcheck: added the 'newcheck' functionality. It's still in early state so it needs refactoring 2009-12-06 Daniel Marjamäki * lib/checkclass.cpp, lib/checkclass.h, test/testclass.cpp: class checking: It's a 'possible style' error if a private constructor is not initializing a member variable 2009-12-06 Daniel Marjamäki * Makefile: Makefile: restored to debugging mode 2009-12-06 Martin Ettl * gui/resultstree.cpp, gui/resultstree.h: gui:added an right-click option "copy message" 2009-12-06 Daniel Marjamäki * Changelog: Updated Changelog 2009-12-06 Daniel Marjamäki * Makefile: update the Makefile for the release 2009-12-06 Daniel Marjamäki * cli/cppcheck.rc, cli/main.cpp, createrelease, lib/cppcheck.cpp, win_installer/cli.wxs: version 1.39 2009-12-06 Daniel Marjamäki * lib/tokenize.cpp: suppress 'internal error' message about failed template instantiation in release mode 2009-12-06 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1052 (Internal error for 'int vals[] = { 0x13, 1?0x01:0x00 };') 2009-12-06 Daniel Marjamäki * lib/tokenize.cpp: Fixed #1051 (segmentation fault when there is syntax error) 2009-12-06 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1050 (Internal error: In tokenizer for: 'do { sizeof 1; } while (0);') 2009-12-05 Daniel Marjamäki * lib/tokenize.cpp: Fixed #1049 (Tokenizer: internal error for 'std::list w1, w2;') 2009-12-05 Daniel Marjamäki * lib/checkexceptionsafety.cpp, test/testexceptionsafety.cpp: Fixed #1048 (False positive: exceptNew error with nothrow) 2009-12-05 Reijo Tomperi * man/cppcheck.1.xml: Minor fixes to the man page. 2009-12-05 Reijo Tomperi * test/testsimplifytokens.cpp: CRLF -> LF fix 2009-12-05 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #1046 (tokenizer: internal error for 'discard_block< (1 << 24), 10, 24 > u, v;') 2009-12-05 Daniel Marjamäki * lib/cppcheck.cpp, man/cppcheck.1.xml: updated help about --enable 2009-12-05 Daniel Marjamäki * cppcheck.cbproj, lib/settings.cpp: Borland C++: fixed compiler error and updated the project file to include iterator debugging 2009-12-05 Daniel Marjamäki * lib/checkexceptionsafety.cpp: Fixed #1044 (Access violation with --enable=all) 2009-12-05 Daniel Marjamäki * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #1026 (false positive: buffer access out of bounds) 2009-12-05 Daniel Marjamäki * lib/cppcheck.cpp, lib/settings.cpp: Fixed #1043 (use cppcheck:.. syntax in error messages) 2009-12-04 Daniel Marjamäki * lib/settings.cpp: --enable: readded code so that parameters can be comma separated 2009-12-04 Daniel Marjamäki * lib/settings.cpp: fix a bug in commit 84a6fe6b54c26acb5d1dc3fd57b1de9634a801b1 2009-12-04 Daniel Marjamäki * man/manual.docbook: updated the manual 2009-12-04 Daniel Marjamäki * lib/cppcheck.cpp, lib/settings.cpp, test/testexceptionsafety.cpp: Fixed #1034 (change --enable to --enable=all) 2009-12-04 Reijo Tomperi * lib/token.cpp, lib/tokenize.cpp, lib/tokenize.h, test/testtokenize.cpp: Fix #1037 (tokenizing a nested do while, while loop fails) http://sourceforge.net/apps/trac/cppcheck/ticket/1037 2009-12-03 Reijo Tomperi * lib/checkmemoryleak.cpp: astyle fix 2009-12-03 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Eric Sesterhenn: Fixed #1032 (False positive resource leak with exit at end of function) 2009-12-02 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1030 (wrong line number with goto) 2009-11-30 Reijo Tomperi * lib/checkexceptionsafety.cpp, lib/cppcheck.cpp, lib/settings.cpp, lib/settings.h, test/testexceptionsafety.cpp: Refactoring: Parse --enable values in Settings class 2009-11-30 Reijo Tomperi * lib/cppcheck.cpp: Add --unused-functions back to help, but mention that it is deprecated. 2009-11-30 Reijo Tomperi * man/cppcheck.1.xml: Update man page 2009-11-30 Daniel Marjamäki * lib/tokenize.cpp, test/testmemleak.cpp, test/testsimplifytokens.cpp: ericsesterhenn: Fix #1028 (False positive resource leak) 2009-11-29 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fix #1022 (False positive: uninitialized variable when using local struct) 2009-11-29 Reijo Tomperi * lib/cppcheck.cpp: Fix #986 (Move --all and --style to --enable) http://sourceforge.net/apps/trac/cppcheck/ticket/986 2009-11-29 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1027 (Internal error: sizeof a++) 2009-11-29 Daniel Marjamäki * lib/tokenize.cpp: changed error message when there an internal error in Cppcheck is found 2009-11-29 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1020 (lib/tokenize.cpp:4615: bool Tokenizer::validate() const: Assertion 0 failed) 2009-11-28 Reijo Tomperi * lib/cppcheck.cpp, lib/tokenize.cpp, lib/tokenize.h: validator bugs are now printed using the errorlogger 2009-11-28 Daniel Marjamäki * lib/check.h: DJGPP: fix runtime errors because list is destroyed before objects 2009-11-28 Daniel Marjamäki * cli/cli.pro, test/test.pro: use checked STL in debugmode 2009-11-28 Daniel Marjamäki * cli/cli.pro: cli: in release use the NDEBUG to avoid assertions 2009-11-28 Daniel Marjamäki * gui/gui.pro: gui: with the define NDEBUG the assertions are disabled 2009-11-28 Reijo Tomperi * lib/checkbufferoverrun.cpp, lib/preprocessor.cpp: Use sizeOfType() instead of sizeof(void*) 2009-11-28 Martin Ettl * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: partial fix of ticket #997; added check for write() two testcases 2009-11-28 Daniel Marjamäki * lib/preprocessor.cpp, lib/token.cpp, lib/token.h, lib/tokenize.cpp: mode change from 755 to 644 2009-11-28 Daniel Marjamäki * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #1021 (Out-of-bounds access false positive) 2009-11-28 Daniel Marjamäki * lib/preprocessor.cpp, lib/token.cpp: minor fixes 2009-11-28 Daniel Marjamäki * lib/token.cpp, lib/token.h: fixed buffer overrun and removed redundant function Token::str 2009-11-28 Daniel Marjamäki * testrunner.cbproj: Borland C++: updated the testrunner project 2009-11-28 Daniel Marjamäki * lib/tokenize.cpp: Borland C++: Fixed compiler error 2009-11-28 Reijo Tomperi * lib/token.cpp, lib/token.h, lib/tokenize.cpp: Token debug function printOut() can now print out filename instead of index 2009-11-27 Reijo Tomperi * lib/token.cpp, lib/token.h, lib/tokenize.cpp, test/testsimplifytokens.cpp: Fix #1018 (strcat(strcat()) causes assertion in Tokenizer::validate) Test case provided by povaddict http://sourceforge.net/apps/trac/cppcheck/ticket/1018 2009-11-27 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #1015 (SIGABRT: Tokenizer::validate for openttd/src/ai/ai_config.cpp) 2009-11-26 Daniel Marjamäki * lib/preprocessor.cpp, test/testpreprocessor.cpp: Fixed #1014 (Preprocessor: Invalid preprocessing of '#define some_delete(x) delete x;') 2009-11-25 Reijo Tomperi * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fix #1007 (False positive array index out of bounds concerning a switch statement in a for loop) Bailout if switch is found in for loop. http://sourceforge.net/apps/trac/cppcheck/ticket/1007 2009-11-24 Daniel Marjamäki * gui/resultstree.cpp: Robert Reif: initialize array (#366) 2009-11-23 Daniel Marjamäki * win_installer/cppcheck.wxs: windows installer: non-advertised shortcut for manual. Seems to work better 2009-11-23 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #989 (CppCheck crashes on Win XP when scanning large directories/subdirectories) 2009-11-22 Reijo Tomperi * Makefile, tools/dmake.cpp: Added 'make man' to Makefile 2009-11-22 Reijo Tomperi * lib/tokenize.h: Fix #1003 (Compiler warning: is there a reason for Tokenizer::getErrorMessages to be virtual?) Destructor is now virtual. http://sourceforge.net/apps/trac/cppcheck/ticket/1003 2009-11-22 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Temporary fix for #994 (cppcheck cannot check my sources with segfaulting) 2009-11-22 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #993 (Latest Git drop aborts at 63% of wine tree) 2009-11-21 Daniel Marjamäki * win_installer/build3.bat: Installer: minor fix in build script 2009-11-22 Slava Semushin * lib/preprocessor.cpp: lib/preprocessor.cpp: clean up code. Improvements for: 092f64b77a554848db35b263bfd252f266db80f3 No functional change. 2009-11-21 Daniel Marjamäki * lib/preprocessor.cpp, lib/preprocessor.h, lib/tokenize.h, test/testpreprocessor.cpp: Fixed #982 (Preprocessor: detects and remove conditions which always true) 2009-11-21 Slava Semushin * lib/tokenize.cpp: Fixed #988 (Tokenizer::simplifyDoWhileAddBraces(): don't add braces after "do" when it not a loop) FIXME: test cases needed. http://sourceforge.net/apps/trac/cppcheck/ticket/988 2009-11-21 Daniel Marjamäki * win_installer/cli.wxs, win_installer/cppcheck.wxs, win_installer/gui.wxs, win_installer/productInfo.wxi: Windows Installer: added manual.pdf, renamed cppcheck.msi => cli.msi, renamed gui.msi => cppcheck.msi, fixes for upgrading 2009-11-21 Reijo Tomperi * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fix #995 (false positive: buffer access out of bounds when using fgets) http://sourceforge.net/apps/trac/cppcheck/ticket/995 2009-11-20 Reijo Tomperi * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fix #985 (Detect buffer overrun with read()) http://sourceforge.net/apps/trac/cppcheck/ticket/985 2009-11-20 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #965 (Division by zero false positive with nested macros) 2009-11-21 Slava Semushin * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #990 (Tokenizer::simplifyIfAddBraces() handle case where statement after if doesn't end by semicolon) http://sourceforge.net/apps/trac/cppcheck/ticket/990 2009-11-20 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #960 (Tokenizer::validate() assertion failure with mismatched brackets) 2009-11-20 Daniel Marjamäki * lib/preprocessor.cpp, lib/preprocessor.h, test/testpreprocessor.cpp: Fixed #912 (### Unlogged error at Tokenizer::syntaxError: Invalid number of character (()) 2009-11-20 Reijo Tomperi * gui/resultstree.cpp: Fix #864 (GUI fails to open second position for multi-line errors) Apply patch from robertreif http://sourceforge.net/apps/trac/cppcheck/ticket/864 2009-11-20 Reijo Tomperi * gui/mainwindow.cpp: Fix #981 (GUI saves report with wrong extension) Apply patch from robertreif http://sourceforge.net/apps/trac/cppcheck/ticket/981 2009-11-20 Slava Semushin * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #983 (Tokenizer::simplifyTypedef() incorrectly substitute type inside namespace) http://sourceforge.net/apps/trac/cppcheck/ticket/983 2009-11-19 Reijo Tomperi * cppcheck.cbp: Add execution parameters to codeblocks project file: p.cpp --debug 2009-11-19 Reijo Tomperi * lib/preprocessor.cpp, test/testpreprocessor.cpp: Fix #971 (Preprocessor: Handle partial macro in macro) http://sourceforge.net/apps/trac/cppcheck/ticket/971 2009-11-18 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #968 (False positive when TEMP_FAILURE_RETRY used) 2009-11-18 Reijo Tomperi * test/testpreprocessor.cpp: Added a few TODO test cases for #971 (Invalid number of characters (()) http://sourceforge.net/apps/trac/cppcheck/ticket/971 2009-11-17 Reijo Tomperi * test/testtokenize.cpp: astyle fix 2009-11-17 Daniel Marjamäki * test/testother.cpp: fixed testcase so it's valid syntax 2009-11-18 Slava Semushin * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #970 (Tokenizer: Incorrect comparison order simplification) Revert changes from 11cb7b4710cf78be6d6efc8ad3165e0e98cadd3a commit for lib/tokenize.cpp (fixed it by another way). Teach unsignedint() to expand "unsigned" in casts. http://sourceforge.net/apps/trac/cppcheck/ticket/970 2009-11-16 Daniel Marjamäki * man/manual.docbook: manual: refactorings 2009-11-16 Daniel Marjamäki * gui/resultstree.cpp: robertreif: Fixed #442 (Filter duplicate errors in GUI) 2009-11-16 Daniel Marjamäki * gui/resultstree.cpp: robertreif: Fixed #726 (GUI: Fix quoting of paths with spaces in Windows) 2009-11-15 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed 2009-11-15 Daniel Marjamäki * man/buildman.sh, man/manual.docbook: Manual: Minor refactorings. Added a simple build script 2009-11-15 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #925 (uninitialized deletion not detected) 2009-11-15 Daniel Marjamäki * lib/mathlib.cpp: Fixed #891 (false positive: division by zero) 2009-11-15 Daniel Marjamäki * gui/mainwindow.cpp: gui: fixed compiler error 2009-11-15 Daniel Marjamäki * man/manual.docbook: manual: better description of --enable (#883) 2009-11-15 Reijo Tomperi * lib/checkbufferoverrun.cpp: Minor fix to previous commit 2009-11-15 Reijo Tomperi * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp, test/testother.cpp: Fix #964 (Integer division by zero exception) http://sourceforge.net/apps/trac/cppcheck/ticket/964 2009-11-15 Daniel Marjamäki * man/cppcheck.1.xml: manual: updated the manpage regarding --enable (#883) 2009-11-15 Daniel Marjamäki * lib/cppcheck.cpp: help screen updates for the --enable command (#883) 2009-11-15 Daniel Marjamäki * lib/checkexceptionsafety.cpp, lib/cppcheck.cpp, lib/settings.cpp, lib/settings.h, test/testexceptionsafety.cpp: Fixed #883 (Add new command line argument --enable) 2009-11-15 Slava Semushin * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #842 (out of bounds: when buffer is allocated with malloc) http://sourceforge.net/apps/trac/cppcheck/ticket/842 2009-11-15 Slava Semushin * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #900 (Improve out-of-bounds check to detect error with "new char(x)") http://sourceforge.net/apps/trac/cppcheck/ticket/900 2009-11-15 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #953 (false positive: 'uninitialized variable' with function pointer) 2009-11-15 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #483 (False positive: found leak when foreach for lists used) 2009-11-15 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: memory leaks: simple code cleanup 2009-11-15 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #915 (false positive: memory leak for struct member (allocated in condition) 2009-11-14 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #936 (false positive: uninitialized variable '.. else return; .. ') 2009-11-14 Daniel Marjamäki * man/manual.docbook: manual: some minor refactorings 2009-11-14 Daniel Marjamäki * lib/cppcheck.cpp: removed command line flag --exception-safety from the help page 2009-11-14 Slava Semushin * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #961 (Tokenizer: call simplifyCasts() before removing "unsigned" keyword) http://sourceforge.net/apps/trac/cppcheck/ticket/961 2009-11-14 Daniel Marjamäki * man/manual.docbook: Manual: Minor refactorings 2009-11-14 Daniel Marjamäki * lib/checkmemoryleak.cpp, lib/checkmemoryleak.h, test/testmemleak.cpp: Fixed #944 (new false positives against Wine Git Tree) 2009-11-14 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #913 (false positive: uninitialized variable) 2009-11-13 Daniel Marjamäki * lib/preprocessor.cpp, test/testpreprocessor.cpp: Preprocessor: When #error is encountered the result is an empty string => don't check configuration 2009-11-13 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #919 (possible memory leak not detected) 2009-11-14 Slava Semushin * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #954 (Tokenizer: correctly simplify sizeof of class members) http://sourceforge.net/apps/trac/cppcheck/ticket/954 2009-11-13 Daniel Marjamäki * man/manual.docbook: manual: added the section 'introduction' 2009-11-12 Reijo Tomperi * lib/tokenize.cpp, lib/tokenize.h, test/testtokenize.cpp: Fix #945 (Array index out of bounds not detected, because of "int const") http://sourceforge.net/apps/trac/cppcheck/ticket/945 2009-11-12 Reijo Tomperi * lib/token.cpp, lib/tokenize.cpp, test/testbufferoverrun.cpp: Fix #947 (Errors not detected when size_t is used instead of int) http://sourceforge.net/apps/trac/cppcheck/ticket/947 2009-11-12 Reijo Tomperi * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fix #946 (False positive: Buffer access out-of-bounds) http://sourceforge.net/apps/trac/cppcheck/ticket/946 2009-11-12 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #951 (Preincremented struct member confused with numeric constant) 2009-11-12 Reijo Tomperi * test/testsimplifytokens.cpp, test/testtokenize.cpp: Test case for #903 (segmentation fault of cppcheck) http://sourceforge.net/apps/trac/cppcheck/ticket/903 2009-11-13 Slava Semushin * lib/tokenize.cpp: Fixed #903 (segmentation fault of cppcheck) http://sourceforge.net/apps/trac/cppcheck/ticket/903 2009-11-12 Daniel Marjamäki * lib/tokenize.cpp, test/testtokenize.cpp: Fixed #950 (Bug in cppcheck tokenize.cpp) 2009-11-11 Daniel Marjamäki * man/manual.docbook: Manual: Working draft for a Cppcheck manual 2009-11-12 Slava Semushin * lib/tokenize.cpp: Fixed #935 (Tokenizer: link() problem) http://sourceforge.net/apps/trac/cppcheck/ticket/935 2009-11-10 Reijo Tomperi * lib/cppcheck.cpp, lib/tokenize.cpp, lib/tokenize.h: Use validate after tokenize and simplifyTokenlist calls. Disabled until known problems fixed. 2009-11-10 Daniel Marjamäki * lib/checkclass.cpp, test/testclass.cpp: Uninitialized variables: detect uninitialized pointer array 2009-11-10 Daniel Marjamäki * lib/checkclass.cpp, test/testclass.cpp: Fixed #928 (false positive: member variable not initialized in constructor) 2009-11-10 Daniel Marjamäki * lib/checkstl.cpp, test/teststl.cpp: Fixed #931 (Invalid interator false positive with identical variable names) 2009-11-10 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #929 (Uninitialized variable false positive) 2009-11-10 Daniel Marjamäki * lib/checkstl.cpp, test/teststl.cpp: Fixed #932 (false positive: Dereferenced iterator 'i' has been erased) 2009-11-09 Daniel Marjamäki * tools/extracttests.cpp: extracttests: astyle formatting 2009-11-09 Daniel Marjamäki * test/testother.cpp: unit testing: minor syntax updates 2009-11-09 Daniel Marjamäki * tools/extracttests.cpp: extracttests: minor updates 2009-11-09 Daniel Marjamäki * test/testbufferoverrun.cpp: unit testing: minor syntax fixes 2009-11-09 Reijo Tomperi * lib/preprocessor.cpp: Made some syntax errors slightly easier to detect. 2009-11-08 Daniel Marjamäki * htdocs/main.html, htdocs/top.html: webpage: removed main.html and top.html 2009-11-08 Daniel Marjamäki * htdocs/help.html, htdocs/index.html: webpage: removed the index.html and help.html 2009-11-08 Daniel Marjamäki * htdocs/help.html, htdocs/index.html, htdocs/main.html, htdocs/top.html: webpage: created a simple website for us 2009-11-08 Daniel Marjamäki * lib/checkexceptionsafety.cpp, lib/checkexceptionsafety.h, lib/checkother.cpp, test/testexceptionsafety.cpp: Fixed #832 (Exception Safety: deallocating member pointer and then throwing exception) 2009-11-08 Daniel Marjamäki * tools/extracttests.cpp: extracttests: extract more tests 2009-11-08 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #910 (false positive: uninitialized variable for array) 2009-11-07 Daniel Marjamäki * test/testbufferoverrun.cpp: testbufferoverrun.cpp: fixed unit test error 2009-11-07 Daniel Marjamäki * tools/extracttests.cpp: extracttests: extract to cpp instead and don't generate the Makefile - it's easier to use a simple standard Makefile instead. 2009-11-07 Daniel Marjamäki * test/testbufferoverrun.cpp: testbufferoverrun.cpp: minor updates to make it work better as extracted code 2009-11-07 Daniel Marjamäki * tools/extracttests.cpp: extracttests: Added a simple program for extracting testcode from our unit testing 2009-11-07 Daniel Marjamäki * test/testbufferoverrun.cpp: testbufferoverrun: minor updates to make the code more easily compilable 2009-11-07 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: uninitialized data: minor fix to handle 'new char [' better 2009-11-07 Reijo Tomperi * lib/checkother.cpp: astyle fix 2009-11-07 Daniel Marjamäki * lib/checkother.cpp, lib/checkother.h, test/testother.cpp: uninitialized data: added more checking for allocated data 2009-11-07 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #907 (Tokenizer: known result of strlen) 2009-11-07 Daniel Marjamäki * lib/checkmemoryleak.cpp: Fixed #905 (memory leak not detected when using puts) 2009-11-07 Daniel Marjamäki * cppcheck.sln: Visual C++: removed 'gui' target from the cppcheck solution 2009-11-07 Reijo Tomperi * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fix #903 (false positive: buffer access out of bounds) http://sourceforge.net/apps/trac/cppcheck/ticket/903 2009-11-06 Daniel Marjamäki * test/testbufferoverrun.cpp: cleanup in testbufferoverrun.cpp 2009-11-06 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: uninitialized variables: better checking of strncpy 2009-11-06 Daniel Marjamäki * lib/cppcheck.cpp: removed --exception-safety and added --enable 2009-11-06 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #904 (false positive: uninitialized variable) 2009-11-06 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #902 (false positive: uninitialized variable when variable is initialized in macro) 2009-11-05 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #898 (Tokenizer: remove unneeded const after *) 2009-11-05 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #897 (false positive: uninitialized variable when assigning pointer to array to struct member) 2009-11-05 Reijo Tomperi * lib/tokenize.cpp, lib/tokenize.h, test/testsimplifytokens.cpp: Fixed #896 (False positive with --all when return value of open() is positive in a loop) http://sourceforge.net/apps/trac/cppcheck/ticket/896 2009-11-04 Daniel Marjamäki * lib/checkexceptionsafety.h, test/testexceptionsafety.cpp: updated error message when memory leaks upon exception 2009-11-04 Reijo Tomperi * test/testclass.cpp: Add one more test case for #895 (false positive: Suspicious pointer subtraction) 2009-11-04 Reijo Tomperi * lib/checkclass.cpp, test/testclass.cpp: Fix #895 (false positive: Suspicious pointer subtraction) http://sourceforge.net/apps/trac/cppcheck/ticket/895 2009-11-03 Daniel Marjamäki * lib/checkother.cpp: use Token::link instead of findmatch to find ']' 2009-11-03 Reijo Tomperi * lib/tokenize.cpp, test/teststl.cpp, test/testtokenize.cpp: Fix #894 (Invalid line number in "Invalid number of character") http://sourceforge.net/apps/trac/cppcheck/ticket/894 2009-11-03 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #893 (False Positive: Uninitialized variable b in a[0] = b[0] = '\0';) 2009-11-03 Daniel Marjamäki * lib/checkexceptionsafety.cpp, lib/checkexceptionsafety.h, test/testexceptionsafety.cpp: Exception safety: added check for unsafe reallocation of member pointer 2009-11-03 Daniel Marjamäki * lib/checkexceptionsafety.cpp, lib/checkexceptionsafety.h, test/testexceptionsafety.cpp: Exception Safety: detect unsafe multiple new in a execution path (#831) 2009-11-03 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #890 (false positive: Uninitialized variable when pointer takes the address to array) 2009-11-03 Reijo Tomperi * lib/tokenize.cpp, test/testtokenize.cpp: Fix #881 (Tokenizer: Something seems to be wrong in Tokenizer::simplifyKnownVariables) http://sourceforge.net/apps/trac/cppcheck/ticket/881 2009-11-02 Daniel Marjamäki * lib/checkstl.cpp, test/teststl.cpp: STL: refactoring and fixing 2009-11-02 Daniel Marjamäki * test/teststl.cpp: Refactoring 2009-11-02 Daniel Marjamäki * lib/checkstl.cpp, lib/checkstl.h, test/teststl.cpp: astyle formatting 2009-11-02 Daniel Marjamäki * lib/checkstl.cpp, lib/checkstl.h, test/teststl.cpp: STL: added check for dangerous usage of std::find (#829) 2009-11-02 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #764 (usage of unitialized variable not detected) 2009-11-02 Daniel Marjamäki * lib/preprocessor.cpp, test/testother.cpp, test/testpreprocessor.cpp: Fixed #882 (false positive: uninitialized variable) 2009-11-02 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #889 (false positive: uninitialized variable) 2009-11-01 Daniel Marjamäki * test/testsimplifytokens.cpp: fixed todo testcase 2009-11-01 Reijo Tomperi * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed segmentation fault. Had to change one test case to TODO for now. 2009-11-01 Daniel Marjamäki * lib/tokenize.cpp, test/testclass.cpp, test/testsimplifytokens.cpp: Fixed #880 (Tokenizer: The Tokenizer::simplifyTemplates doesn't handle recursive templates) 2009-11-01 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Templates: Better handling of recursive templates 2009-11-01 Reijo Tomperi * lib/checkother.cpp, test/testother.cpp: Fix #884 (False positive: Possible null pointer reference about a non-pointer) http://sourceforge.net/apps/trac/cppcheck/ticket/884 2009-10-31 Daniel Marjamäki * lib/checkexceptionsafety.cpp, lib/checkexceptionsafety.h, lib/cppcheck.cpp, lib/settings.cpp, lib/settings.h, test/testexceptionsafety.cpp: Fixed #831 (Exception safety: multiple new in a simple execution path) 2009-10-31 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #843 (new check: Passing uninitialized array to strlen/strdup/strcpy/strcat/etc) 2009-10-31 Daniel Marjamäki * lib/checkstl.cpp, test/teststl.cpp: Fixed #877 (False positive: After insert, iterator may be invalid) 2009-10-31 Reijo Tomperi * lib/preprocessor.cpp: Fix #685 (Include file not found is printed with -v when include file is empty) http://sourceforge.net/apps/trac/cppcheck/ticket/685 2009-10-31 Daniel Marjamäki * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #430 (Tokenizer: handle templates with partial specialisation) 2009-10-31 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #876 (false positive: uninitialized variable) 2009-10-30 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #875 (Uninitialized variable: initialization in subfunction) 2009-10-30 Daniel Marjamäki * lib/checkother.cpp: uninitialized variables: return|goto are not used in variable declarations 2009-10-30 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: null pointer: fixed false positive when condition checks if pointer is ok 2009-10-30 Daniel Marjamäki * lib/checkunusedfunctions.cpp, test/testunusedfunctions.cpp: Fixed #867 (unused member function warning) 2009-10-30 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: uninitialized variables: fixed false positive when switch is used 2009-10-30 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Uninitialized pointers: It's allowed to dereference uninitialized non-pointer variables 2009-10-30 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: Fixed #874 (false positive: uninitialized variable) 2009-10-30 Daniel Marjamäki * lib/checkother.cpp, test/testother.cpp: uninitialized variables: fixed false positives for member variables 2009-10-29 Daniel Marjamäki * test/testother.cpp: uninitialized variables: Added TODO testcase for removing false positives 2009-10-29 Daniel Marjamäki * lib/checkother.cpp, lib/checkother.h, test/testother.cpp: uninitialized variables: added check 2009-10-29 Reijo Tomperi * lib/tokenize.cpp, test/testsimplifytokens.cpp: Fix #870 (The CheckClass::getVarList method detects 'const' as a variable name.) http://sourceforge.net/apps/trac/cppcheck/ticket/870 2009-10-29 Reijo Tomperi * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fix #868 (False positive - buffer access out of bounds in for loop) http://sourceforge.net/apps/trac/cppcheck/ticket/868 2009-10-28 Reijo Tomperi * lib/checkbufferoverrun.cpp: Minor fix to previous commit 2009-10-28 Reijo Tomperi * lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Modify CheckBufferOverrun::checkGlobalAndLocalVariable() to use varid only. Also add some TODO test cases. 2009-10-28 Daniel Marjamäki * all.pro, cppcheck.pro: Renamed top-level cppcheck.pro to all.pro 2009-10-28 Daniel Marjamäki * cli/cppcheck.vcproj, test/test.vcproj: Visual Studio: Manually edited the vcproj files. The absolute paths were replaced with relative paths 2009-10-28 Daniel Marjamäki * cppcheck.pro: Restructuring: updated the top cppcheck.pro file 2009-10-28 Daniel Marjamäki * cli/cli.pro, cli/cppcheck.vcproj, cli/resource.h, cppcheck.sln, cppcheck.vcproj, gui/gui.pro, lib/lib.pri, lib/resource.h, test/test.vcproj, testrunner.sln, testrunner.vcproj: Restructuring: Updated the Visual Studio project files. They are now generated by qmake 2009-10-27 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Memory leaks: Detect simple leak 2009-10-27 Kimmo Varis * win_installer/build1.bat, win_installer/build2.bat: Make switching QT version easier in build batch files. 2009-10-27 Daniel Marjamäki * lib/errorlogger.cpp: Fixed #854 (invalid XML generated for folders containing &) 2009-10-27 Daniel Marjamäki * lib/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #860 (Improve double delete detection) 2009-10-27 Daniel Marjamäki * cppcheck.cbproj: Restructuring: Updated the Borland C++ project file 2009-10-27 Daniel Marjamäki * cli/cli.pro, cli/cppcheck.rc, gui/gui.pro, lib/cppcheck.rc, win_installer/build.proj, win_installer/build1.bat, win_installer/build2.bat, win_installer/build3.bat: Restructuring: updated win_installer scripts 2009-10-27 Reijo Tomperi * test/testbufferoverrun.cpp: Test case for #863 (false positive memset array of pointers) http://sourceforge.net/apps/trac/cppcheck/ticket/863 2009-10-27 Reijo Tomperi * lib/checkbufferoverrun.cpp, test/testsimplifytokens.cpp: Fix #863 (false positive memset array of pointers) http://sourceforge.net/apps/trac/cppcheck/ticket/863 Also fix test cases for 64 bit systems. 2009-10-27 Daniel Marjamäki * lib/settings.cpp, lib/settings.h: simple optimisation 2009-10-27 Reijo Tomperi * cppcheck.vcproj, testrunner.vcproj: Apply patches from polygon7 to fix #857 (Compilation error after refactoring the folder structure) http://sourceforge.net/apps/trac/cppcheck/ticket/857 2009-10-27 Reijo Tomperi * lib/cppcheck.cpp, tools/dmake.cpp: astyle fix 2009-10-26 Daniel Marjamäki * Makefile, tools/dmake.cpp: Restructuring: Updated the dependency walker 2009-10-26 Daniel Marjamäki * test/test.pro: Restructuring: Updated test/test.pro 2009-10-26 Daniel Marjamäki * lib/cppcheck.cpp, lib/cppcheck.h: Refactoring: Changed pointer to reference 2009-10-26 Daniel Marjamäki * doxyfile: Restructuring: Doxyfile updated 2009-10-26 Daniel Marjamäki * generate_coverage_report: Restructuring: Generate coverage report 2009-10-25 Reijo Tomperi * cppcheck.cbp: codeblocks project file updated 2009-10-25 Daniel Marjamäki * Makefile: Refactoring: Updated Makefile 2009-10-25 Daniel Marjamäki * cli/cli.pro, cli/cppcheckexecutor.cpp, cli/cppcheckexecutor.h, cli/main.cpp, cli/threadexecutor.cpp, cli/threadexecutor.h, lib/cppcheckexecutor.cpp, lib/cppcheckexecutor.h, lib/lib.pri, lib/threadexecutor.cpp, lib/threadexecutor.h: restructuring the folder structure 2009-10-25 Reijo Tomperi * cppcheck.cbp, gui/mainwindow.cpp, lib/cppcheck.cpp, lib/cppcheck.h: Refactoring: Make Cppcheck::version() static Update codeblocks projectfile 2009-10-25 Daniel Marjamäki * Makefile, cli/cli.pro, cli/cppcheckexecutor.cpp, cli/cppcheckexecutor.h, cli/main.cpp, cli/threadexecutor.cpp, cli/threadexecutor.h, gui/checkthread.h, gui/gui.pro, gui/mainwindow.cpp, gui/resultsview.h, gui/threadhandler.h, gui/threadresult.h, lib/cppcheckexecutor.cpp, lib/cppcheckexecutor.h, lib/lib.pri, lib/src.pri, lib/src.pro, lib/threadexecutor.cpp, lib/threadexecutor.h: fixed qmake building with new folder structure 2009-10-25 Reijo Tomperi * man/cppcheck.1.xml: Fixed typo in man page 2009-10-25 Daniel Marjamäki * Makefile, cli/cppcheckexecutor.cpp, cli/cppcheckexecutor.h, cli/main.cpp, cli/threadexecutor.cpp, cli/threadexecutor.h, lib/check.h, lib/checkautovariables.cpp, lib/checkautovariables.h, lib/checkbufferoverrun.cpp, lib/checkbufferoverrun.h, lib/checkclass.cpp, lib/checkclass.h, lib/checkdangerousfunctions.cpp, lib/checkdangerousfunctions.h, lib/checkexceptionsafety.cpp, lib/checkexceptionsafety.h, lib/checkheaders.cpp, lib/checkheaders.h, lib/checkmemoryleak.cpp, lib/checkmemoryleak.h, lib/checkother.cpp, lib/checkother.h, lib/checkstl.cpp, lib/checkstl.h, lib/checkunusedfunctions.cpp, lib/checkunusedfunctions.h, lib/classinfo.h, lib/cppcheck.cpp, lib/cppcheck.h, lib/cppcheck.rc, lib/errorlogger.cpp, lib/errorlogger.h, lib/filelister.cpp, lib/filelister.h, lib/mathlib.cpp, lib/mathlib.h, lib/preprocessor.cpp, lib/preprocessor.h, lib/resource.h, lib/settings.cpp, lib/settings.h, lib/src.pri, lib/src.pro, lib/token.cpp, lib/token.h, lib/tokenize.cpp, lib/tokenize.h, runastyle, runastyle.bat, src/check.h, src/checkautovariables.cpp, src/checkautovariables.h, src/checkbufferoverrun.cpp, src/checkbufferoverrun.h, src/checkclass.cpp, src/checkclass.h, src/checkdangerousfunctions.cpp, src/checkdangerousfunctions.h, src/checkexceptionsafety.cpp, src/checkexceptionsafety.h, src/checkheaders.cpp, src/checkheaders.h, src/checkmemoryleak.cpp, src/checkmemoryleak.h, src/checkother.cpp, src/checkother.h, src/checkstl.cpp, src/checkstl.h, src/checkunusedfunctions.cpp, src/checkunusedfunctions.h, src/classinfo.h, src/cppcheck.cpp, src/cppcheck.h, src/cppcheck.rc, src/cppcheckexecutor.cpp, src/cppcheckexecutor.h, src/errorlogger.cpp, src/errorlogger.h, src/filelister.cpp, src/filelister.h, src/main.cpp, src/mathlib.cpp, src/mathlib.h, src/preprocessor.cpp, src/preprocessor.h, src/resource.h, src/settings.cpp, src/settings.h, src/src.pri, src/src.pro, src/threadexecutor.cpp, src/threadexecutor.h, src/token.cpp, src/token.h, src/tokenize.cpp, src/tokenize.h, test/testautovariables.cpp, test/testbufferoverrun.cpp, test/testcharvar.cpp, test/testclass.cpp, test/testconstructors.cpp, test/testcppcheck.cpp, test/testdangerousfunctions.cpp, test/testdivision.cpp, test/testexceptionsafety.cpp, test/testfilelister.cpp, test/testincompletestatement.cpp, test/testmathlib.cpp, test/testmemleak.cpp, test/testother.cpp, test/testpreprocessor.cpp, test/testredundantif.cpp, test/testsimplifytokens.cpp, test/teststl.cpp, test/testsuite.h, test/testtoken.cpp, test/testtokenize.cpp, test/testunusedfunctions.cpp, test/testunusedprivfunc.cpp, test/testunusedvar.cpp, tools/dmake.cpp: refactoring the folder structure 2009-10-25 Daniel Marjamäki * Makefile: Makefile: Updated for the release 2009-10-25 Daniel Marjamäki * Changelog: Changelog: updated the Changelog 2009-10-25 Daniel Marjamäki * createrelease, src/cppcheck.cpp, src/main.cpp, win_installer/cppcheck.iss, win_installer/cppcheck.wxs: updated version to 1.38 2009-10-24 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #253 (MemoryLeakInClass: False positive when memory is released in function, which is called from destructor) 2009-10-24 Daniel Marjamäki * src/checkunusedfunctions.cpp: don't report that the function WinMain is unused 2009-10-23 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: Memory leaks: Added and fixed testcase TestMemleakInClass::class13 2009-10-22 Daniel Marjamäki * src/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #851 (Tokenizer: sizeof(*a) returns incorrect result) 2009-10-22 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #428 (Memory leak not detected with class) 2009-10-21 Daniel * src/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #844 (Tokenizer: Simplify 'sizeof *ptr' correctly) 2009-10-21 Daniel * src/checkstl.cpp, src/checkstl.h: Fixed #830 (id 'pushback' used twice) 2009-10-21 Daniel * cppcheck.pro: Removed toplevel qmake pro file that doesn't work 2009-10-21 Daniel * cppcheck.geany: removed geany project file 2009-10-20 Reijo Tomperi * src/tokenize.cpp, test/testsimplifytokens.cpp: Fix #767 (Tokenizer: Known variable variable not simplified) http://sourceforge.net/apps/trac/cppcheck/ticket/767 2009-10-20 Daniel * src/checkother.cpp, test/testother.cpp: Fixed #839 (False positive: possible null pointer dereference after new) 2009-10-20 Reijo Tomperi * src/checkbufferoverrun.cpp: Minor refactoring. 2009-10-20 Reijo Tomperi * src/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Improved countSprintfLength() to detect more errors with %d. Fixed some errors from test cases. Added more test cases. 2009-10-19 Daniel Marjamäki * Makefile, src/checkexceptionsafety.cpp, src/checkexceptionsafety.h, test/testexceptionsafety.cpp: Fixed by #828 (Exception Safety: No throwing in destructors) 2009-10-19 Daniel Marjamäki * src/checkclass.cpp: David Binderman: Remove dead variable 2009-10-19 Daniel Marjamäki * src/checkother.cpp, src/checkother.h, test/testother.cpp: Null pointers: Detect code where the assignment is conditional 2009-10-18 Daniel Marjamäki * src/checkstl.cpp, src/checkstl.h, test/teststl.cpp: STL: checking that containers are matching 2009-10-18 Daniel Marjamäki * src/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #827 (Tokenizer: sizeof is incorrectly simplified) 2009-10-18 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #449 (false postive:: resource leak when using errno) 2009-10-18 Reijo Tomperi * src/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fix #826 (False positive: sprintf with "f%s") http://sourceforge.net/apps/trac/cppcheck/ticket/826 2009-10-18 Reijo Tomperi * src/check.h, src/cppcheck.cpp, src/tokenize.cpp, src/tokenize.h: Fix #825 (Error with id syntaxError not in list printed with --errorlist) http://sourceforge.net/apps/trac/cppcheck/ticket/825 2009-10-17 Reijo Tomperi * src/checkbufferoverrun.cpp: Fix segmentation fault with --errorlist 2009-10-17 Daniel Marjamäki * src/checkother.cpp, test/testunusedvar.cpp: unused struct member: bail out when casting 2009-10-17 Daniel Marjamäki * src/tokenize.cpp, test/testsimplifytokens.cpp: Pointer Aliasing: Handle pointer aliasing through the Tokenizer::simplifyKnownVariables 2009-10-17 Daniel Marjamäki * src/checkother.cpp, src/checkother.h, test/testunusedvar.cpp: Unused struct members: bail out upon casting 2009-10-17 Daniel Marjamäki * gui/mainwindow.cpp, src/cppcheck.cpp, src/cppcheck.h: fixed compiler error when building gui 2009-10-17 Daniel Marjamäki * src/cppcheck.cpp, src/cppcheck.h, src/cppcheckexecutor.cpp: Fixed #824 (Exit code of cppcheck) 2009-10-15 Daniel Marjamäki * src/checkstl.cpp, src/checkstl.h, test/teststl.cpp: stl: after vector::insert, iterators may become invalid 2009-10-15 Daniel Marjamäki * src/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #823 (Buffer overrun with memcpy) 2009-10-15 Daniel Marjamäki * src/checkmemoryleak.cpp, src/checkmemoryleak.h: fixed doxygen warning messages 2009-10-14 Daniel Marjamäki * src/preprocessor.cpp, test/testpreprocessor.cpp: Fixed #821 (Preprocessor: Wrong stringification in macros) 2009-10-14 Daniel Marjamäki * src/cppcheck.cpp: Fixed #820 (Borland C++: Compiler errors because of time_t) 2009-10-14 Reijo Tomperi * src/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Buffer overrun errors behind function call should be possible errors. 2009-10-13 Reijo Tomperi * src/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Move buffer overrun errors behind --all Fix one possible error issue with arrayindexoutofbounds Make sure that possible errors are not shown without --all 2009-10-13 Reijo Tomperi * : commit 4036dd5effb90957b2b9b7ffb861344215757953 Author: Reijo Tomperi Date: Tue Oct 13 22:39:51 2009 +0300 2009-10-13 Daniel Marjamäki * src/checkstl.cpp, test/teststl.cpp: stl: better checking for invalid iterator after push_back 2009-10-13 Reijo Tomperi * src/settings.cpp, src/settings.h: Fix #815 (rev. 47e9d1: compilation error) http://sourceforge.net/apps/trac/cppcheck/ticket/815 2009-10-13 Reijo Tomperi * src/cppcheck.cpp: Undocumented --showtime option should now work on other platforms also. Improved --showtime to give more information. 2009-10-13 Reijo Tomperi * gui/mainwindow.cpp, gui/threadhandler.cpp, gui/threadhandler.h: Fix #455 (Recheck is enabled when no previous results available) http://sourceforge.net/apps/trac/cppcheck/ticket/455 2009-10-12 Daniel Marjamäki * : commit ed3860a0a74ffcd325d0380130de83e703f82659 Author: Daniel Marjamäki Date: Mon Oct 12 21:36:28 2009 +0200 2009-10-12 Reijo Tomperi * readme.txt: Fix #814 (Improvements for readme.txt) http://sourceforge.net/apps/trac/cppcheck/ticket/814 2009-10-11 Reijo Tomperi * src/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fix #812 (False positive: sprintf with "%.4s" with --all) http://sourceforge.net/apps/trac/cppcheck/ticket/812 2009-10-11 Reijo Tomperi * src/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fix #694 (False (possible error) Buffer overrun with %-1s) ashim2009 did most of the work http://sourceforge.net/apps/trac/cppcheck/ticket/694 2009-10-11 Daniel Marjamäki * webreport.sh: script for creating web content 2009-10-11 Reijo Tomperi * src/checkother.cpp, src/checkother.h: Refactoring: Split null pointer check into 4 smaller functions. 2009-10-11 Reijo Tomperi * src/checkother.cpp, test/testdivision.cpp: Fix #810 (false positive: Division with signed and unsigned operators) http://sourceforge.net/apps/trac/cppcheck/ticket/810 2009-10-11 Reijo Tomperi * src/tokenize.cpp: Getting rid of warning C4267: 'return' : conversion from 'size_t' to 'unsigned int' 2009-10-11 Reijo Tomperi * src/preprocessor.cpp: Getting rid of compiler warning: C4310: cast truncates constant value 2009-10-11 Daniel Marjamäki * win_installer/build.proj, win_installer/build1.bat, win_installer/build2.bat: win_installer: Added build scripts 2009-10-11 Daniel Marjamäki * win_installer/gui.wxs, win_installer/productInfo.wxi: win_installer: minor tweaks 2009-10-10 Daniel Marjamäki * htdocs/build.bat: a simple build script for building devinfo.html 2009-10-10 Reijo Tomperi * src/preprocessor.cpp, test/testpreprocessor.cpp: Fix #808 (Segfault in Preprocessor) http://sourceforge.net/apps/trac/cppcheck/ticket/808 2009-10-10 Daniel Marjamäki * : commit d2e2b1d9feb1e826c7118e1c8c3f85ae89895e38 Author: Daniel Marjamäki Date: Sat Oct 10 22:10:33 2009 +0200 2009-10-10 Reijo Tomperi * src/preprocessor.cpp: Fix compiler warning warning C4512: 'PreprocessorMacro' : assignment operator could not be generated 2009-10-10 Reijo Tomperi * src/preprocessor.cpp: Get rid of compiler warning warning C4127: conditional expression is constant 2009-10-10 Reijo Tomperi * src/tokenize.cpp, src/tokenize.h: Get rid of a compiler warning. conversion from 'size_t' to 'int', possible loss of data 2009-10-10 Slava Semushin * src/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #809 (Tokenizer: don't replace sizeof() of unknown type to zero) http://sourceforge.net/apps/trac/cppcheck/ticket/809 2009-10-10 Daniel Marjamäki * test/testtokenize.cpp: Added testcase for #807 (cppcheck crashes scanning ruby 1.9.1) 2009-10-10 Daniel Marjamäki * src/preprocessor.cpp: minor refactoring 2009-10-10 Daniel Marjamäki * src/checkbufferoverrun.cpp: Borland C++: Fixed compiler errors 2009-10-09 Daniel Marjamäki * src/tokenize.cpp, test/testtokenize.cpp: Fixed #806 (cppcheck crashes scanning openssl) 2009-10-09 Daniel Marjamäki * src/tokenize.cpp: jonas054: fixed #807 (cppcheck crashes scanning ruby 1.9.1) 2009-10-08 Daniel Marjamäki * src/checkmemoryleak.cpp: memory leaks: minor cleanups 2009-10-08 Daniel Marjamäki * src/checkmemoryleak.cpp: optimisation: made the memory leaks checking faster 2009-10-08 Daniel Marjamäki * src/cppcheck.cpp: optimisation: removed duplicate call of Tokenizer::setVarId 2009-10-08 Reijo Tomperi * man/cppcheck.1.xml, src/cppcheck.cpp, src/settings.cpp, src/settings.h: Fix #674 (Feature request: error filtering) --suppressions argument added to CLI http://sourceforge.net/apps/trac/cppcheck/ticket/674 2009-10-08 Reijo Tomperi * test/testbufferoverrun.cpp: More test cases for sprintf counter 2009-10-08 Reijo Tomperi * src/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: sprintf counter improvements 2009-10-08 Reijo Tomperi * src/checkother.cpp, test/testother.cpp: Fix #802 (possible null pointer dereference reported for reference) http://sourceforge.net/apps/trac/cppcheck/ticket/802 2009-10-07 Reijo Tomperi * src/checkstl.cpp: Use var id instead of var name in check stl. 2009-10-07 Reijo Tomperi * src/checkstl.cpp: Use varid instead of varname in stl check. 2009-10-07 Reijo Tomperi * src/checkother.cpp, src/checkstl.cpp, test/testother.cpp, test/teststl.cpp: Optimize speed and fix one false positive with stl checks. 2009-10-07 Reijo Tomperi * test/testbufferoverrun.cpp: Added more test cases for sprintf counter 2009-10-07 Daniel Marjamäki * src/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Ashim Kapoor: updated the counter (#694) 2009-10-07 Reijo Tomperi * src/checkbufferoverrun.cpp, src/checkbufferoverrun.h, test/testbufferoverrun.cpp: Refactoring: Moved some code into a new function. Renamed count->countSprintfLength. Added code to collect sprintf parameters. Added a few TODO test cases. 2009-10-07 Reijo Tomperi * src/tokenize.cpp, test/testsimplifytokens.cpp: Fix #801 (Tokenizer: Simplify sizeof for function parameters) http://sourceforge.net/apps/trac/cppcheck/ticket/801 2009-10-07 Reijo Tomperi * src/tokenize.cpp, test/testsimplifytokens.cpp: Fix #487 (Tokenizer: Simplify sizeof for string array and string pointer) http://sourceforge.net/apps/trac/cppcheck/ticket/487 2009-10-07 Reijo Tomperi * src/checkbufferoverrun.cpp, src/checkmemoryleak.cpp, src/tokenize.cpp, src/tokenize.h, test/testsimplifytokens.cpp: Refactored sizeof simplification and fixed one TODO assert. 2009-10-07 Reijo Tomperi * src/checkother.cpp, test/testother.cpp: Detect referenced by value errors for std::map also. 2009-10-06 Reijo Tomperi * src/checkmemoryleak.cpp, test/testmemleak.cpp: Fix #388 (resource leak not detected, allocation through function call) http://sourceforge.net/apps/trac/cppcheck/ticket/388 2009-10-06 Reijo Tomperi * src/tokenize.cpp, test/testsimplifytokens.cpp: Fix #796 (segmentation fault while scanning) http://sourceforge.net/apps/trac/cppcheck/ticket/796 2009-10-06 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: memory leaks: don't write errors for static member variables 2009-10-06 Daniel Marjamäki * src/checkother.cpp, src/checkother.h, test/testother.cpp: Fix #797 (false positive: variable scope when using function call) 2009-10-06 Reijo Tomperi * src/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fix #575 (Array index out of bounds check: get address of one-past-the-end array is legal) http://sourceforge.net/apps/trac/cppcheck/ticket/575 2009-10-06 Reijo Tomperi * src/tokenize.cpp, test/testsimplifytokens.cpp: Fix #580 (double free not found) http://sourceforge.net/apps/trac/cppcheck/ticket/580 2009-10-06 Reijo Tomperi * test/testsimplifytokens.cpp, test/testtokenize.cpp: Moved some test cases from testtokenize into testsimplifytokens and added one TODO case. 2009-10-06 Reijo Tomperi * src/preprocessor.cpp, test/testpreprocessor.cpp: Fix #795 (Preprocessor: Incorrect handling of #if (A) || (B)) http://sourceforge.net/apps/trac/cppcheck/ticket/795 2009-10-06 Reijo Tomperi * src/tokenize.cpp, test/testtokenize.cpp: Fix #765 (divsion by zero not detected in std::cout stream) http://sourceforge.net/apps/trac/cppcheck/ticket/765 2009-10-05 Reijo Tomperi * src/preprocessor.cpp: Removed variable that wasn't used. 2009-10-05 Reijo Tomperi * src/preprocessor.cpp: Replace substr() with compare() to speed up preprocessing. See #762 (version 1.37 of cppcheck runs extremely slowly on windows) http://sourceforge.net/apps/trac/cppcheck/ticket/762 2009-10-05 Reijo Tomperi * src/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fix #794 (Floating point exception on CheckBufferOverrun) http://sourceforge.net/apps/trac/cppcheck/ticket/794 2009-10-05 Reijo Tomperi * src/tokenize.cpp, test/testsimplifytokens.cpp: Fix #365 (Improve simplifyQuestionMark() in tokenize.cpp) http://sourceforge.net/apps/trac/cppcheck/ticket/365 2009-10-05 Reijo Tomperi * src/tokenize.cpp, src/tokenize.h: Refactoring: Remove findClosing(). It is replaced by Token::link(). 2009-10-05 Reijo Tomperi * src/checkother.cpp, test/testother.cpp: Fix #771 (False positive. Null pointer dereference in a switch case) http://sourceforge.net/apps/trac/cppcheck/ticket/771 2009-10-05 Reijo Tomperi * src/tokenize.cpp, test/testsimplifytokens.cpp: Fix simplifyRedundantParanthesis() to work after '}' 2009-10-05 Reijo Tomperi * src/tokenize.cpp, test/testsimplifytokens.cpp: Fix #776 (Tokenizer: remove useless brackets around variable assignment) http://sourceforge.net/apps/trac/cppcheck/ticket/776 2009-10-05 Reijo Tomperi * src/tokenize.cpp, test/testsimplifytokens.cpp: Fix #778 (Tokenizer: impove simplification inside if()) http://sourceforge.net/apps/trac/cppcheck/ticket/778 2009-10-05 Reijo Tomperi * src/checkother.cpp, test/testother.cpp: Fix #793 (Improve passedByValue check) http://sourceforge.net/apps/trac/cppcheck/ticket/793 2009-10-05 Reijo Tomperi * generate_coverage_report: Better cleanup for coverage script. 2009-10-05 Reijo Tomperi * generate_coverage_report: Add script generate_coverage_report for generating test coverage report using gcov and lcov 2009-10-05 Reijo Tomperi * src/tokenize.cpp, test/testsimplifytokens.cpp: Fix #777 (Tokenizer: double casting simplified incorrectly) http://sourceforge.net/apps/trac/cppcheck/ticket/777 2009-10-04 Reijo Tomperi * src/tokenize.cpp, test/testsimplifytokens.cpp: Fix #784 (Tokenizer: Simplify 2[a] -> a[2]) http://sourceforge.net/apps/trac/cppcheck/ticket/784 2009-10-04 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #789 (false positive: resource leak reported when using for loop) 2009-10-04 Daniel Marjamäki * src/checkmemoryleak.cpp: Fixed #786 (memleak: segmentation fault for 'if TRACE_ON(x)') 2009-10-04 Daniel Marjamäki * src/preprocessor.cpp, test/testpreprocessor.cpp: Preprocessor: Minor fixes (#772) 2009-10-04 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #785 (False positive: resource leak of extern FILE*) 2009-10-04 Daniel Marjamäki * src/checkother.h: doc: fixed linebreak in previous commit 6aea2faacd 2009-10-04 Daniel Marjamäki * src/checkother.h: doc: refactoring of the docs for CheckOther 2009-10-04 Daniel Marjamäki * src/checkother.cpp, src/checkother.h: Removed CheckOther::warningIf 2009-10-04 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #727 (False positive: Resource leak when release is done inside function call) 2009-10-04 Slava Semushin * src/checkautovariables.cpp, src/checkautovariables.h: Fixed #783 (Refactoring: autoVariables error message is hard coded in 3 locations) http://sourceforge.net/apps/trac/cppcheck/ticket/783 2009-10-04 Daniel Marjamäki * src/tokenize.cpp: astyle formatting 2009-10-04 Slava Semushin * test/testother.cpp: Fixed #782 (Checks are missing test cases) http://sourceforge.net/apps/trac/cppcheck/ticket/782 2009-10-04 Slava Semushin * src/preprocessor.h: src/preprocessor.h: fixed comment. removeParantheses() doesn't throws exception. Correction for 1a48f869c84018d73fd63bf59263224b019a5997 commit. No code change. 2009-10-04 Daniel Marjamäki * src/checkmemoryleak.cpp, src/tokenize.cpp, test/testsimplifytokens.cpp, test/testtokenize.cpp: use '<' comparisons instead of '>' (#610) 2009-10-04 Daniel Marjamäki * src/preprocessor.cpp, src/preprocessor.h, test/testpreprocessor.cpp: Fixed #772 (Preprocessor: #if(A) is not seen equal to #if A) 2009-10-03 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #733 (New check: locking & unlocking mutex and semaphore variables) 2009-10-03 Slava Semushin * src/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #780 (Tokenizer: replace typedef for pointers to struct) http://sourceforge.net/apps/trac/cppcheck/ticket/780 2009-10-03 Slava Semushin * src/token.cpp: Token::Match(): made message about bug more verbose. 2009-10-03 Slava Semushin * src/checkbufferoverrun.cpp: Fixed #775 (###### If you see this, there is a bug ###### Token::Match() - varid was 0) http://sourceforge.net/apps/trac/cppcheck/ticket/775 2009-10-03 Slava Semushin * src/tokenize.cpp: Tokenizer::simplifyVarDecl(): join 2 conditions. No functional change. 2009-10-03 Slava Semushin * src/tokenize.cpp, test/testtokenize.cpp: Fixed #770 (Tokenizer: Var id not set for static variables in some cases) http://sourceforge.net/apps/trac/cppcheck/ticket/770 2009-10-03 Daniel Marjamäki * src/checkbufferoverrun.cpp, src/tokenize.cpp: Borland C++: Fixed compiler errors 2009-10-02 Reijo Tomperi * src/preprocessor.cpp: Attempt to speed up preprocessing on macro-in-macro situations. See #762 (version 1.37 of cppcheck runs extremely slowly on windows) http://sourceforge.net/apps/trac/cppcheck/ticket/762 2009-10-02 Reijo Tomperi * test/testtokenize.cpp: TODO test cases TestTokenizer::vardec_static added 2009-10-02 Reijo Tomperi * src/tokenize.cpp: Abort comma simplification when ", %num%" is detected. This increases speed a lot in some rare situations. 2009-10-01 Daniel Marjamäki * test/testmemleak.cpp: memory leaks: refactoring unit tests 2009-10-01 Daniel Marjamäki * src/tokenize.cpp, src/tokenize.h, test/testtokenize.cpp: Fixed #679 (False positive: Unused private function produced by exception specification) 2009-10-01 Daniel Marjamäki * gui/application.ui: eliedebrauwer: fix typo (#755) 2009-10-01 Daniel Marjamäki * gui/cppcheck_nl.ts: eliedebrauwer: dutch translation (#756) 2009-10-01 Daniel Marjamäki * gui/gui.pro, gui/translationhandler.cpp: eliedebrauwer: dutch translation (#756) 2009-10-01 Reijo Tomperi * man/cppcheck.1.xml: Minor fix to man page 2009-10-01 Reijo Tomperi * src/checkmemoryleak.cpp, test/testmemleak.cpp: Fix #421 (Memory leak not found when typeid() is used.) http://sourceforge.net/apps/trac/cppcheck/ticket/421 2009-10-01 Reijo Tomperi * src/checkbufferoverrun.cpp: Trivial refactoring 2009-10-01 Reijo Tomperi * src/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fix #741 (False positive: Buffer overrun with -a when index increased in multiple locations) http://sourceforge.net/apps/trac/cppcheck/ticket/741 2009-10-01 Reijo Tomperi * src/checkbufferoverrun.cpp, src/checkbufferoverrun.h, test/testbufferoverrun.cpp: Fix #419 (missleading buffer overrun) http://sourceforge.net/apps/trac/cppcheck/ticket/419 2009-10-01 Reijo Tomperi * src/tokenize.cpp: Removed dead code created by previous commit 2009-10-01 Reijo Tomperi * src/tokenize.cpp, test/testsimplifytokens.cpp: Fix #763 (Tokenizer: Goto incorrectly simplified) http://sourceforge.net/apps/trac/cppcheck/ticket/763 2009-09-30 Daniel Marjamäki * test/testmemleak.cpp: memory leaks: fixed TODO_ASSERT_EQUALS 2009-09-30 Reijo Tomperi * src/tokenize.cpp, test/testmemleak.cpp, test/testother.cpp, test/testsimplifytokens.cpp, test/testtokenize.cpp: Fix #745 (false positive: possible null pointer dereference , while) http://sourceforge.net/apps/trac/cppcheck/ticket/745 2009-09-30 Reijo Tomperi * src/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fix #744 (False positive: (possible error) Array index out of bounds) http://sourceforge.net/apps/trac/cppcheck/ticket/744 2009-09-30 Reijo Tomperi * src/tokenize.cpp, test/testtokenize.cpp: Fix #759 (Tokenizer: Incorrect var id when two variables with same name) http://sourceforge.net/apps/trac/cppcheck/ticket/759 2009-09-30 Reijo Tomperi * src/tokenize.cpp, src/tokenize.h, test/testsimplifytokens.cpp: Fix #761 (Tokenizer: typedef inside class is incorrectly simplified) http://sourceforge.net/apps/trac/cppcheck/ticket/761 2009-09-30 Reijo Tomperi * src/tokenize.cpp, test/testsimplifytokens.cpp: Fix #760 (Tokenizer: Goto not simplified) http://sourceforge.net/apps/trac/cppcheck/ticket/760 2009-09-30 Reijo Tomperi * test/testsimplifytokens.cpp: Added TODO test cases: simplifyTypedef, simplifyTypedef2, simplifyTypedef3 2009-09-30 Reijo Tomperi * src/checkother.cpp, test/testother.cpp: Fix #750 (cppcheck wants variable outside do-loop to be only inside loop) http://sourceforge.net/apps/trac/cppcheck/ticket/750 Fix #758 (False positive on variable scope with boost foreach) http://sourceforge.net/apps/trac/cppcheck/ticket/758 2009-09-29 Reijo Tomperi * src/tokenize.cpp: Changed simplifyConditionOperator() to create also {} around if and else Fixed validate() in tokenizer. 2009-09-29 Daniel Marjamäki * test/testbufferoverrun.cpp: added a TODO_ASSERT_EQUALS for the counter 2009-09-29 Reijo Tomperi * src/checkclass.cpp, test/testclass.cpp, test/testconstructors.cpp: Fix #757 (Change message: (style) The class 'KClass' has no constructor) http://sourceforge.net/apps/trac/cppcheck/ticket/757 2009-09-29 Slava Semushin * src/tokenize.cpp: Tokenizer::tokenize(): removed useless const_cast. No functional change. 2009-09-29 Reijo Tomperi * test/testbufferoverrun.cpp: TODO test case for count() added 2009-09-29 Daniel Marjamäki * src/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Ashim Kapoor: deal with backspace better (#694) 2009-09-29 Reijo Tomperi * test/testtokenize.cpp: Fix comment in test case 2009-09-29 Reijo Tomperi * src/checkother.h, test/testother.cpp: Check nullpointer check is now executed without --style flag Added TODO test case for nullpointer check 2009-09-29 Reijo Tomperi * src/checkother.cpp, test/testother.cpp: Fix #751 (if-condition considered redundant even with else-branch) http://sourceforge.net/apps/trac/cppcheck/ticket/751 Fix also other issue with if(a.b) delete c.b; Fix also other issue with if(a.b.c) delete a.b.c; 2009-09-28 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #746 (False positive, Memory leak when goto is used) 2009-09-28 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: memory leaks: fixed a TODO_ASSERT_EQUALS for a false positive 2009-09-28 Reijo Tomperi * man/cppcheck.1.xml, src/cppcheck.cpp: Fix #739 (Pre-defined output format templates) http://sourceforge.net/apps/trac/cppcheck/ticket/739 Patch from lanurmi. Slightly modified by me. 2009-09-28 Reijo Tomperi * src/tokenize.cpp, src/tokenize.h, test/testtokenize.cpp: Fix #754 (Tokenizer: transform modifier "signed" to "int") http://sourceforge.net/apps/trac/cppcheck/ticket/754 Also fix int unsigned -> unsigned int 2009-09-28 Slava Semushin * src/tokenize.cpp, test/testtokenize.cpp: Fixed #753 (Tokenizer: don't simplify variables inside do {} while loop) http://sourceforge.net/apps/trac/cppcheck/ticket/753 2009-09-27 Daniel Marjamäki * test/testbufferoverrun.cpp: Refactoring the unit testing of format strings 2009-09-27 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #728 (False positive, resource leak, when released in a loop) 2009-09-27 Slava Semushin * src/checkbufferoverrun.cpp: src/checkbufferoverrun.cpp: fixed regression. test suite was broken after my e8c83613e4bcc95b7c3d91d5c71f4e2363a5cdf3 commit. 2009-09-27 Slava Semushin * src/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #740 (False positive, buffer overrun with --all) Regression since 07f41f4563fc138b527af6ce153433a661250020 commit. http://sourceforge.net/apps/trac/cppcheck/ticket/740 2009-09-27 Slava Semushin * src/checkbufferoverrun.cpp: src/checkbufferoverrun.cpp: removed useless semicolon. No functional change. 2009-09-27 Slava Semushin * src/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #738 (False Buffer overrun with -a when i is increased by more than 1 inside loop body) http://sourceforge.net/apps/trac/cppcheck/ticket/738 2009-09-27 Reijo Tomperi * cppcheck.cbp, gui/aboutdialog.cpp, gui/aboutdialog.h, gui/applicationdialog.cpp, gui/applicationdialog.h, gui/applicationlist.cpp, gui/applicationlist.h, gui/checkthread.cpp, gui/checkthread.h, gui/common.h, gui/csvreport.cpp, gui/csvreport.h, gui/fileviewdialog.cpp, gui/fileviewdialog.h, gui/main.cpp, gui/mainwindow.cpp, gui/mainwindow.h, gui/projectfile.cpp, gui/projectfile.h, gui/report.cpp, gui/report.h, gui/resultstree.cpp, gui/resultstree.h, gui/resultsview.cpp, gui/resultsview.h, gui/settingsdialog.cpp, gui/settingsdialog.h, gui/threadhandler.cpp, gui/threadhandler.h, gui/threadresult.cpp, gui/threadresult.h, gui/translationhandler.cpp, gui/translationhandler.h, gui/txtreport.cpp, gui/txtreport.h, gui/xmlreport.cpp, gui/xmlreport.h, src/check.h, src/checkautovariables.cpp, src/checkautovariables.h, src/checkbufferoverrun.cpp, src/checkbufferoverrun.h, src/checkclass.cpp, src/checkclass.h, src/checkdangerousfunctions.cpp, src/checkdangerousfunctions.h, src/checkheaders.cpp, src/checkheaders.h, src/checkmemoryleak.cpp, src/checkmemoryleak.h, src/checkother.cpp, src/checkother.h, src/checkstl.cpp, src/checkstl.h, src/checkunusedfunctions.cpp, src/checkunusedfunctions.h, src/classinfo.h, src/cppcheck.cpp, src/cppcheck.h, src/cppcheckexecutor.cpp, src/cppcheckexecutor.h, src/errorlogger.cpp, src/errorlogger.h, src/filelister.cpp, src/filelister.h, src/main.cpp, src/mathlib.cpp, src/mathlib.h, src/preprocessor.cpp, src/preprocessor.h, src/settings.cpp, src/settings.h, src/threadexecutor.cpp, src/threadexecutor.h, src/token.cpp, src/token.h, src/tokenize.cpp, src/tokenize.h, test/testautovariables.cpp, test/testbufferoverrun.cpp, test/testcharvar.cpp, test/testclass.cpp, test/testconstructors.cpp, test/testcppcheck.cpp, test/testdangerousfunctions.cpp, test/testdivision.cpp, test/testfilelister.cpp, test/testincompletestatement.cpp, test/testmathlib.cpp, test/testmemleak.cpp, test/testother.cpp, test/testpreprocessor.cpp, test/testredundantif.cpp, test/testrunner.cpp, test/testsimplifytokens.cpp, test/teststl.cpp, test/testsuite.cpp, test/testsuite.h, test/testtoken.cpp, test/testtokenize.cpp, test/testunusedfunctions.cpp, test/testunusedprivfunc.cpp, test/testunusedvar.cpp, tools/dmake.cpp: Fix GPL comments in all files. ">." was missing from the end. 2009-09-27 Reijo Tomperi * src/cppcheck.cpp: Remove redundant comparison 2009-09-27 Slava Semushin * src/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #714 (False Buffer overrun with -a when i is increased by more than 1 in a loop) http://sourceforge.net/apps/trac/cppcheck/ticket/714 2009-09-27 Reijo Tomperi * src/mathlib.cpp, src/mathlib.h, src/tokenize.cpp, src/tokenize.h, test/testsimplifytokens.cpp: Fix #720 (String length for strings like this "\x61" is calculated wrong) http://sourceforge.net/apps/trac/cppcheck/ticket/720 2009-09-27 Slava Semushin * src/checkstl.cpp, test/teststl.cpp: Detects invalid iterator inside for() when postfix form of increment used. 2009-09-27 Slava Semushin * src/checkstl.cpp, test/teststl.cpp: Fixed #735 (Detects invalid iterator after push_back() when iterator declared inside for()) http://sourceforge.net/apps/trac/cppcheck/ticket/735 2009-09-27 Slava Semushin * src/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Detect buffer overruns when ?: use as sprintf() argument. 2009-09-27 Slava Semushin * src/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #729 (False positive: Buffer overrun when ? is used to select parameter) http://sourceforge.net/apps/trac/cppcheck/ticket/729 2009-09-26 Slava Semushin * src/token.cpp, test/testbufferoverrun.cpp, test/testtoken.cpp: Fixed #731 (False positive, strcpy copying a buffer with a null character) http://sourceforge.net/apps/trac/cppcheck/ticket/731 2009-09-26 Slava Semushin * src/checkbufferoverrun.cpp: CheckBufferOverrun::count(): commented out debug message. Added in 3da779725db1de541fd5e0c14468b3b09e6234a6 commit. 2009-09-26 Daniel Marjamäki * src/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Ashim Kapoor: handle %i,%f,%d,%x,%X better (#694) 2009-09-26 Slava Semushin * src/tokenize.cpp, test/testtokenize.cpp: Fixed #732 (Tokenizer: Incorrect simplification) Regression since 58a9e05697b4585883bbc00153d1584d9247190f commit. http://sourceforge.net/apps/trac/cppcheck/ticket/732 2009-09-26 Daniel Marjamäki * src/checkstl.cpp, test/teststl.cpp: Fixed #710 (False positive: invalid vector iterator after push_back) 2009-09-26 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #718 (False positive, resource leak when break in a loop before exit) 2009-09-25 Reijo Tomperi * src/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fix #730 (False positive, buffer overrun with strncpy) http://sourceforge.net/apps/trac/cppcheck/ticket/730 2009-09-25 Daniel Marjamäki * test/testmemleak.cpp: Memory leaks: Added a TODO assertion for a false positive 2009-09-25 Daniel Marjamäki * src/checkclass.cpp, test/testunusedprivfunc.cpp: Fixed #678 (False positive: Unused private function produced by inner class) 2009-09-25 Daniel Marjamäki * src/checkbufferoverrun.cpp, src/checkbufferoverrun.h, test/testbufferoverrun.cpp: Ashim Kapoor: Added function that returns minimum size of format strings (#694) 2009-09-24 Reijo Tomperi * : commit 16e55f4f8908acbc47b76ad7f89c73df2dabd8fe Author: Reijo Tomperi Date: Thu Sep 24 23:46:08 2009 +0300 2009-09-24 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: Memory leaks: fixed a TODO_ASSERT_EQUALS 2009-09-24 Daniel Marjamäki * Makefile: Revert "Makefile: made it ready for release" This reverts commit 67d695437430e93a788a378cb73611ff49fb7229. 2009-09-23 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #700 (False positive: Memory leak) 2009-09-23 Daniel Marjamäki * src/checkmemoryleak.h, src/tokenize.h, testrunner.vcproj: Replaced UNIT_TESTING ifdef with _MSC_VER 2009-09-23 Reijo Tomperi * src/tokenize.cpp, test/testtokenize.cpp: Fix #713 (Tokenizer: Simplify 0L) http://sourceforge.net/apps/trac/cppcheck/ticket/713 Use MathLib to handle other variations of 0. 2009-09-23 Reijo Tomperi * src/cppcheckexecutor.h: Changed some CppcheckExecutor functions and variables protected and virtual. 2009-09-23 Daniel Marjamäki * win_installer/gui.wxs: added wix file for gui installation 2009-09-23 Reijo Tomperi * readme.txt: cross compiling info added to readme.txt 2009-09-23 Slava Semushin * src/tokenize.cpp, test/testsimplifytokens.cpp: Tokenizer::simplifySizeof(): use Token::getStrLength(). Fixed wrong result when string contains escaped quotes. Correction for 0e729fedc070962d1023d4cd9ad9bdaa8e0eee30 commit. 2009-09-23 Daniel Marjamäki * win_installer/cppcheck.wxs: Windows Installer: A simple installer without the gui 2009-09-23 Reijo Tomperi * src/tokenize.cpp, test/testtokenize.cpp: Fix #713 (Tokenizer: Simplify 0L) http://sourceforge.net/apps/trac/cppcheck/ticket/713 2009-09-22 Daniel Marjamäki * Changelog: updated the Changelog 2009-09-22 Daniel Marjamäki * Makefile: Makefile: made it ready for release 2009-09-22 Daniel Marjamäki * createrelease, src/cppcheck.cpp, src/main.cpp, win_installer/cppcheck.iss: updated version to 1.37 2009-09-22 Daniel Marjamäki * src/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #716 (segmentation fault: sizeof string) 2009-09-22 Slava Semushin * test/testdivision.cpp: test/testdivision.cpp: fixed syntax errors in TestDivision::division8 Before testrunner complains: ### Unlogged error at Tokenizer::syntaxError: Invalid number of character ({) ### Unlogged error at Tokenizer::syntaxError: Invalid number of character ({) ### Unlogged error at Tokenizer::syntaxError: Invalid number of character ({) Broken since 36c7108a2821c477cf4d5eb9289281de8cd285ce commit where test case was added. 2009-09-22 Slava Semushin * src/tokenize.cpp: Tokenizer::createLinks(): fixed typo in comment. Since commit 1c01dd64f353d6872ec4b04867393aa283423445. 2009-09-22 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #715 (False positive: Resource leak when exit() after if loop) 2009-09-22 Daniel Marjamäki * src/tokenize.cpp, test/testtokenize.cpp: Fixed #702 (If you see this, there is a bug - varid was 0) 2009-09-21 Reijo Tomperi * src/preprocessor.cpp, test/testpreprocessor.cpp: Fix #706 (false positive: invalid number of character ((), can't process file) http://sourceforge.net/apps/trac/cppcheck/ticket/706 2009-09-20 Reijo Tomperi * src/tokenize.cpp, test/testsimplifytokens.cpp: Fix #701 (false positive: Invalid deallocation) http://sourceforge.net/apps/trac/cppcheck/ticket/701 2009-09-20 Reijo Tomperi * src/tokenize.cpp, test/testtokenize.cpp: Fix #703 (Tokenizer: Create links for []) http://sourceforge.net/apps/trac/cppcheck/ticket/703 2009-09-20 Reijo Tomperi * src/checkbufferoverrun.cpp: astyle fix 2009-09-20 Daniel Marjamäki * Changelog: Changelog 2009-09-20 Daniel Marjamäki * createrelease, src/cppcheck.cpp, src/main.cpp, win_installer/cppcheck.iss, win_installer/cppcheck.wxs: Version: 1.36 2009-09-20 Slava Semushin * src/tokenize.cpp, test/testtokenize.cpp: Additional fix for better simplifying array declaration. Pointed out by hyd_danmar@ in IRC. Addressed to #696 2009-09-20 Slava Semushin * src/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #690 (False positive: (possible error) Buffer overrun) http://sourceforge.net/apps/trac/cppcheck/ticket/690 2009-09-20 Slava Semushin * src/tokenize.cpp, test/testtokenize.cpp: Fixed #696 (Tokenizer: Simplify array declaration) http://sourceforge.net/apps/trac/cppcheck/ticket/696 2009-09-20 Reijo Tomperi * src/preprocessor.cpp, test/testpreprocessor.cpp: Fix #667 (Preprocessor does not handle macro inside macro correctly) http://sourceforge.net/apps/trac/cppcheck/ticket/667 2009-09-19 Reijo Tomperi * test/testmemleak.cpp, test/testtokenize.cpp: astyle fix 2009-09-19 Daniel Marjamäki * src/checkother.h, src/tokenize.cpp, test/testother.cpp: Fixed #673 (False positive: null pointer dereference when dynamic cast is used) 2009-09-19 Slava Semushin * src/token.cpp, src/token.h: Token::stringifyList(): removed const modifier from parameter. const useless in this case because argument passed by value. No functional change. 2009-09-19 Slava Semushin * test/testtokenize.cpp: test/testtokenize.cpp: refactoring code. - introduce and use simplifyKnownVariables() function - don't append leading space to result string with tokens No functional change. 2009-09-19 Slava Semushin * src/preprocessor.h: Preprocessor: document that removeComments() may throws exception. No code change. 2009-09-19 Daniel Marjamäki * src/checkmemoryleak.cpp, src/checkmemoryleak.h, test/testmemleak.cpp: Fixed #688 (False positive in error category when --all is used) 2009-09-18 Vesa Pikki * gui/checkthread.cpp: Fixed ticket#687. Thread state is now initialized to "Ready". 2009-09-18 Daniel Marjamäki * src/preprocessor.cpp: Preprocessor: Skip BOM 2009-09-17 Daniel Marjamäki * src/checkother.cpp, test/testother.cpp: Fixed #676 (The scope of variable can actually not be limited) 2009-09-16 Daniel Marjamäki * src/checkclass.cpp, test/testunusedprivfunc.cpp: Fixed #677 (False positive: Unused private function produced by class member initialization) 2009-09-16 Daniel Marjamäki * src/checkclass.cpp, test/testclass.cpp: Fixed by #675 (false positive: when operator is overloaded) 2009-09-15 Reijo Tomperi * src/tokenize.cpp, test/testsimplifytokens.cpp: Fix #684 (Tokenizer: (65536*72/100) incorrectly simplified to zero) http://sourceforge.net/apps/trac/cppcheck/ticket/684 2009-09-15 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #671 (False positive. Leak when loop is before exit) 2009-09-15 Daniel Marjamäki * src/checkother.cpp, test/testdivision.cpp: Fixed #669 (possible style without --all + false positives) 2009-09-14 Reijo Tomperi * test/testpreprocessor.cpp: TODO test case for preprocessor macro handling 2009-09-14 Daniel Marjamäki * src/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #658 (Assertion 'begin != __null' failed) 2009-09-14 Reijo Tomperi * src/tokenize.cpp, test/testtokenize.cpp: Fix #670 (Tokenizer: Simplify '\0' into 0) http://sourceforge.net/apps/trac/cppcheck/ticket/670 2009-09-13 Daniel Marjamäki * src/tokenize.cpp, src/tokenize.h: Tokenizer: Added a simple validation function that we can use during debugging 2009-09-13 Daniel Marjamäki * src/tokenize.cpp: simplifyTemplates: assert that braces and parantheses are handled correctly 2009-09-13 Slava Semushin * test/testsimplifytokens.cpp: TestSimplifyTokens::sizeof_(): don't append leading space. No functional change. 2009-09-13 Slava Semushin * src/token.cpp: Token::getStrLength(): fixed errors from valgrind. Correction for 13b2edd61e70d4d886e0cf5ba587aa8b2f9f2d3e commit. 2009-09-13 Slava Semushin * src/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #645 (Tokenizer::simplifyCasts() breaks link() if casts function) http://sourceforge.net/apps/trac/cppcheck/ticket/645 2009-09-13 Slava Semushin * test/testtoken.cpp: TestTOKEN::getStrLength(): allocate tok variable in stack (instead of in heap) No functional change. 2009-09-13 Slava Semushin * src/token.cpp: Token::getStrLength(): use Token::strValue(). No functional change. 2009-09-13 Slava Semushin * src/token.cpp, src/token.h: Token::strValue(): added const modifier. Correction for 241f585d34cb6f645d112c5e0cc54fe852c21c3b commit. No functional change. 2009-09-13 Slava Semushin * src/tokenize.cpp, src/tokenize.h: Tokenizer::simplifyMathFunctions(): change return type to void. Correction for 241f585d34cb6f645d112c5e0cc54fe852c21c3b commit. No functional change. 2009-09-13 Daniel Marjamäki * src/check.h, src/checkbufferoverrun.cpp, src/checkmemoryleak.h, src/cppcheck.cpp, src/preprocessor.cpp, src/threadexecutor.h, src/tokenize.cpp, src/tokenize.h: Fixed #478 (Warnings in Visual Studio build with -W4) 2009-09-13 Daniel Marjamäki * test/testmemleak.cpp: memory leaks: added test assertion. simplify ';alloc;exit;' to ';exit;' 2009-09-12 Reijo Tomperi * src/token.cpp, src/token.h, src/tokenize.cpp, src/tokenize.h, test/testsimplifytokens.cpp, test/testtoken.cpp: Fix #594 (division by zero not detected when using atol or atof) http://sourceforge.net/apps/trac/cppcheck/ticket/594 Simplify atol("0") into 0 (and other atol() calls also) 2009-09-12 Reijo Tomperi * man/cppcheck.1.xml: Fix #662 (Command line option --append not documented) http://sourceforge.net/apps/trac/cppcheck/ticket/662 2009-09-12 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: memory leaks: minor refactorings 2009-09-12 Daniel Marjamäki * src/checkclass.cpp, src/checkclass.h, test/testclass.cpp: Fixed #375 (new check: Detect when using 'this-x') 2009-09-12 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #518 (False positive for leaks when function from err()-family used) 2009-09-12 Daniel Marjamäki * src/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #644 (Tokenizer::simplifyComma: Wrong simplification in cast) 2009-09-11 Daniel Marjamäki * src/preprocessor.cpp, test/testpreprocessor.cpp: More Fixing of #635 (Preprocessor: remove 'asm(...)') 2009-09-11 Reijo Tomperi * src/mathlib.cpp, test/testmathlib.cpp: Fix ticket #632 (Mathlib isInt() identifies "330L" as not int) http://sourceforge.net/apps/trac/cppcheck/ticket/632 2009-09-11 Daniel Marjamäki * src/preprocessor.cpp, src/preprocessor.h, test/testpreprocessor.cpp: Simple fix for #635 (preprocessor: remove 'asm(...)') 2009-09-10 Reijo Tomperi * src/checkmemoryleak.cpp, src/checkmemoryleak.h: Fixed some "is passed by value" errors from cppcheck source. 2009-09-10 Reijo Tomperi * src/tokenize.cpp, src/tokenize.h: Fix #656 (Improve const-correctness) http://sourceforge.net/apps/trac/cppcheck/ticket/656 Applied slightly modified patch from elfring 2009-09-09 Reijo Tomperi * test/testsimplifytokens.cpp: New test case in TestSimplifyTokens::template_default_parameter 2009-09-08 Daniel Marjamäki * src/checkother.h: Fixed #650 ('possible style' pre-incrementing error shown without --all) 2009-09-08 Daniel Marjamäki * src/cppcheck.cpp, src/settings.cpp, src/settings.h: Settings: Added an 'append' command line flag that allows the user to provide extra information about functions. See ticket #260 2009-09-06 Reijo Tomperi * test/testsimplifytokens.cpp: astyle fix 2009-09-06 Slava Semushin * test/testsimplifytokens.cpp: Added test cases for #487. 2009-09-06 Slava Semushin * src/tokenize.cpp, src/tokenize.h: Refactoring: move code for sizeof() simplification to method. Introduce and use Tokenizer::simplifySizeof() method. No functional change. 2009-09-06 Slava Semushin * src/tokenize.cpp: Tokenizer(simplifyNestedStrcat): correctly set line numbers for new tokens. Pointed out by aggro80@ in IRC. Thanks! 2009-09-06 Kimmo Varis * readme_gui.txt: Upate QT framework's URL to readme. 2009-09-06 Kimmo Varis * gui/readme.txt, readme_gui.txt: Move gui's readme to root directory to make it easier to find. 2009-09-06 Kimmo Varis * readme.txt: Wrap long line in readme.txt. 2009-09-06 Daniel Marjamäki * src/tokenize.cpp, test/testsimplifytokens.cpp: Templates: Scaled up the handling of default values for template parameters (#638) 2009-09-05 Reijo Tomperi * src/tokenize.cpp, test/testsimplifytokens.cpp: Fix another issue related to #647 (Crash during tokenizing (wrong) K&R function declaration) http://sourceforge.net/apps/trac/cppcheck/ticket/647 2009-09-05 Reijo Tomperi * src/tokenize.cpp, test/testsimplifytokens.cpp: Fix #647 (Crash during tokenizing (wrong) K&R function declaration) http://sourceforge.net/apps/trac/cppcheck/ticket/647 Thanks to undingen for providing a patch 2009-09-05 Reijo Tomperi * man/cppcheck.1.xml, src/cppcheck.cpp, src/cppcheckexecutor.cpp, src/errorlogger.cpp, src/errorlogger.h, src/settings.h, test/testcppcheck.cpp: New command line argument added --template Fix ticket #462 (Allow using template to customize output format) http://sourceforge.net/apps/trac/cppcheck/ticket/462 2009-09-06 Slava Semushin * src/preprocessor.cpp: Fixed #585 (Preprocessor: Don't check the same configuration twice) http://sourceforge.net/apps/trac/cppcheck/ticket/585 2009-09-05 Slava Semushin * src/tokenize.cpp, src/tokenize.h, test/testbufferoverrun.cpp, test/testsimplifytokens.cpp: Fixed #629 (Tokenizer: expand nested strcat() calls) http://sourceforge.net/apps/trac/cppcheck/ticket/629 2009-09-05 Daniel Marjamäki * : commit d9d2f53df6eb547432366937175af8f8b29c63a8 Author: Aleksey Palazhchenko Date: Fri Sep 4 22:59:25 2009 +0400 2009-09-04 Daniel Marjamäki * test/testmemleak.cpp: memory leaks: Added a todo test case for the getcode function 2009-09-04 Aleksey Palazhchenko * test/test.pro: Fixes in test.pro 2009-09-03 Reijo Tomperi * : commit 74086740172d1d9dfdaf5501a5f22aa1f48d32a6 Author: Reijo Tomperi Date: Thu Sep 3 23:28:00 2009 +0300 2009-09-03 Daniel Marjamäki * src/tokenize.cpp, test/testsimplifytokens.cpp: templates: remove typename tokens 2009-09-03 Reijo Tomperi * src/filelister.cpp: Fix ticket #642 (txx (template implementation files) not recognized/checked.) http://sourceforge.net/apps/trac/cppcheck/ticket/642 2009-09-03 Daniel Marjamäki * src/tokenize.cpp, test/testsimplifytokens.cpp: templates: Quick fix for the problem with default value for a template argument 2009-09-02 Daniel Marjamäki * test/testsimplifytokens.cpp: Templates: Added todo testcase for handling default values for template arguments. Related with ticket #638 2009-09-02 Reijo Tomperi * src/checkclass.cpp, test/testclass.cpp: Fix ticket #637 (False positive, Using 'memset' on struct that contains a 'std::string') http://sourceforge.net/apps/trac/cppcheck/ticket/637 2009-09-02 Reijo Tomperi * test/testclass.cpp: Added few memset test cases 2009-09-01 Reijo Tomperi * src/checkother.cpp, src/mathlib.cpp, test/testmathlib.cpp, test/testother.cpp: Don't warn about division by zero if zero if floating point number. Fix bug from mathlib isInt() and add test case from which few are false positives 2009-09-01 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: memory leaks: fixed a todo testcase to find more leaks 2009-09-01 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: memory leaks: fixed todo testcases to find more memory leaks 2009-09-02 Slava Semushin * src/checkmemoryleak.cpp: CheckMemoryLeakInFunction: print simplified tokens only with --debug and --verbose. Suggested by aggro80@ and approved by hyd_danmar@ in IRC. 2009-09-02 Slava Semushin * src/tokenize.cpp: Tokenizer::syntaxError(): throw exception when debug enabled. This allows to stop test suite when first syntax error found. 2009-09-02 Slava Semushin * src/mathlib.cpp, src/token.cpp, src/tokenize.cpp: Print error messages to stderr (instead of stdout). 2009-09-02 Slava Semushin * test/testmemleak.cpp: test/testmemleak.cpp(dofindleak): provide settings object with debug enabled. This allows to print tokens when syntax error found in one of tests. 2009-09-01 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: Memory leaks: fixed a todo testcase 2009-09-01 Daniel Marjamäki * test/testmemleak.cpp: memory leaks: minor fix for testcase 2009-09-01 Slava Semushin * src/tokenize.cpp: Tokenizer::syntaxError: show details about unlogged syntax error. 2009-09-01 Slava Semushin * src/checkstl.cpp, test/teststl.cpp: Fixed #631 (False positive matching iterator which is dereferenced) http://sourceforge.net/apps/trac/cppcheck/ticket/631 2009-09-01 Reijo Tomperi * src/checkother.cpp, test/testother.cpp: Fix #630 (Division by zero check only looks at first character of divisor) http://sourceforge.net/apps/trac/cppcheck/ticket/630 Thanks to liam_routt for finding this and providing fix for it. 2009-08-31 Daniel Marjamäki * test/testpreprocessor.cpp: Preprocessor: Added a todo testcase 2009-08-31 Daniel Marjamäki * src/checkclass.cpp, src/tokenize.cpp, test/testclass.cpp: Borland C++: Don't warn about uninitialized variables that are declared in the __published section. These are auto-initialized 2009-08-30 Reijo Tomperi * test/testmemleak.cpp: astyle fix 2009-08-30 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: Refactoring: Refactoring of the unit testing for the CheckMemoryLeakInFunction 2009-08-30 Reijo Tomperi * src/checkother.cpp, test/testother.cpp: Fix ticket #612 (Division by zero not detected when zero has type suffix) http://sourceforge.net/apps/trac/cppcheck/ticket/612 2009-08-30 Daniel Marjamäki * : commit c50f7787f90ecd44395f2fb1fae4f69ca3a37899 Author: Slava Semushin Date: Sun Aug 30 18:44:23 2009 +0700 2009-08-30 Aleksey Palazhchenko * src/src.pro: Fixes in src.pro 1) Binary shouldn't be in bundle (Mac OS X). 2) Binary doesn't use Qt at all. 2009-08-30 Slava Semushin * src/checkbufferoverrun.cpp: CheckBufferOverrun::checkScope(): use Token::getStrLength(). No functional change. 2009-08-30 Slava Semushin * src/token.cpp, src/token.h, test/testtoken.cpp: Token::getStrLength(): introduce new static method. No functional change. 2009-08-30 Slava Semushin * src/preprocessor.cpp: Preprocessor::getcfgs(): use std::list::unique() for removing duplicates. No functional change. 2009-08-30 Daniel Marjamäki * src/tokenize.cpp: Refactoring: Use the Token::link 2009-08-30 Reijo Tomperi * src/preprocessor.cpp, test/testpreprocessor.cpp: Fix ticket #611 (Preprocessor: the configurations "A;B" and "B;A" are the same) http://sourceforge.net/apps/trac/cppcheck/ticket/611 2009-08-29 Reijo Tomperi * src/checkmemoryleak.cpp, src/tokenize.cpp, test/testsimplifytokens.cpp: astyle fix 2009-08-30 Slava Semushin * src/tokenize.cpp: Tokenizer::setVarId(): simplify code a bit. No functional change. 2009-08-30 Slava Semushin * src/tokenize.cpp: Tokenizer::setVarId(): use Token::link() instead of loop. No functional change. 2009-08-30 Slava Semushin * src/tokenize.cpp: Tokenizer::setVarId(): simplify condition. No functional change. 2009-08-30 Slava Semushin * src/tokenize.cpp: Tokenizer: don't call simplifyCalculations() twice. No functional change. 2009-08-30 Slava Semushin * src/tokenize.cpp, src/tokenize.h: Tokenizer::simplifyFunctionParameters(): change return type to void. No functional change. 2009-08-30 Slava Semushin * src/tokenize.cpp, src/tokenize.h: Tokenizer::simplifyConditionOperator(): change return type to void. No functional change. 2009-08-30 Slava Semushin * src/tokenize.cpp, src/tokenize.h: Tokenizer::elseif(): change return type to void. No functional change. 2009-08-30 Slava Semushin * src/tokenize.cpp, src/tokenize.h: Tokenizer::simplifyDoWhileAddBraces(): change return type to void. No functional change. 2009-08-30 Slava Semushin * src/tokenize.cpp, src/tokenize.h: Tokenizer::simplifyIfAddBraces(): change return type to void. No functional change. 2009-08-30 Slava Semushin * src/tokenize.cpp, src/tokenize.h: Tokenizer::simplifyComma(): change return type to void. No functional change. 2009-08-30 Slava Semushin * src/tokenize.cpp, src/tokenize.h: Tokenizer::simplifyIfNotNull(): change return type to void. No functional change. 2009-08-30 Slava Semushin * src/tokenize.cpp, src/tokenize.h: Tokenizer::simplifyIfNot(): change return type to void. No functional change. 2009-08-30 Slava Semushin * src/tokenize.cpp, src/tokenize.h: Tokenizer::simplifyIfAssign(): change return type to void. No functional change. 2009-08-30 Slava Semushin * src/tokenize.cpp, src/tokenize.h: Tokenizer::simplifyVarDecl(): change return type to void. No functional change. 2009-08-30 Slava Semushin * src/tokenize.cpp, src/tokenize.h: Tokenizer::simplifyCasts(): change return type to void. No functional change. 2009-08-30 Slava Semushin * src/tokenize.cpp, src/tokenize.h: Tokenizer::simplifyLogicalOperators(): change return type to void. No functional change. 2009-08-29 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #615 (Memleak was detected in 1.32 but not in 1.33 and later) 2009-08-29 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #414 (memory leak in if-else construct not detected) 2009-08-29 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: memory leaks: improved the simplification of 'if* ;' 2009-08-29 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: memory leaks: fixed todo test case. reduce exit better 2009-08-29 Slava Semushin * src/tokenize.cpp, src/tokenize.h, test/testsimplifytokens.cpp: Tokenizer: enhance simplifyNot() and rename to simplifyLogicalOperators(). Don't replace "and" everything becuse it may be used as variable name. Better fix for #620 Corrections for commit eb05cf904df3b9b1e90de5dcc912817e83d422c8 2009-08-29 Slava Semushin * src/tokenize.cpp: Tokenizer(simplifyNot): replace "if" by "else if" and added braces. No functional change. 2009-08-29 Daniel Marjamäki * src/checkmemoryleak.cpp: memory leaks: fixed bug. return|else are not part of a variable declaration 2009-08-29 Slava Semushin * src/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #620 (Tokenizer: replace "and" by "&&") http://sourceforge.net/apps/trac/cppcheck/ticket/620 2009-08-29 Slava Semushin * src/tokenize.cpp: Tokenizer(simplifyIfAssign): fixed to link() just inserted tokens. Fixed segfault on samba sources. 2009-08-29 Slava Semushin * src/tokenize.cpp: Tokenizer(simplifyComma): join two if bodies to one. No functional change. 2009-08-29 Slava Semushin * src/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #618 (Tokenizer: Wrong handling of enum) http://sourceforge.net/apps/trac/cppcheck/ticket/618 2009-08-29 Slava Semushin * src/checkmemoryleak.cpp: CheckMemoryLeakInFunction(getcode): don't call Token::Match() if varid equals to zero. 2009-08-29 Slava Semushin * src/tokenize.cpp: Tokenizer: call createLinks() only once. Fixed simplifyIfAssign() and simplifyIfNot() to link() just inseted tokens. No functional change. 2009-08-29 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: memory leaks: better handling of open/close 2009-08-29 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: astyle 2009-08-29 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #627 (False positive with --all, Resource leak with open()) 2009-08-29 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: Memory leaks: handling asprintf better 2009-08-29 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: Memory leaks: Fixed two todo testcases (getcode handling of asprintf) 2009-08-29 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: memory leaks: fixed a todo testcase 2009-08-28 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: Memory leaks: Testing that asprintf is handled correctly 2009-08-28 Reijo Tomperi * src/token.cpp, src/tokenize.cpp: Fixed bug in Token::deleteThis and optimized createLinks() calls. 2009-08-28 Reijo Tomperi * src/checkmemoryleak.cpp, src/tokenize.cpp: astyle fix 2009-08-28 Daniel Marjamäki * test/testsimplifytokens.cpp: fixed failed assertions when running the testrunner 2009-08-28 danmar * src/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #625 (cppcheck dumps core on valid code) 2009-08-28 danmar * src/tokenize.cpp, test/testsimplifytokens.cpp, test/testsuite.h: Fixed #622 (Tokenizer: Calculations are wrong) 2009-08-28 danmar * src/filelister.cpp: Borland C++: Fixed problem in FileLister 2009-08-28 danmar * src/checkmemoryleak.cpp, src/mathlib.cpp: borland c++: fixed compiler errors 2009-08-28 Daniel Marjamäki * src/checkother.cpp, test/testother.cpp: Fixed #623 (False positive: possible null pointer dereference when using the ?: operator) 2009-08-27 Slava Semushin * src/tokenize.cpp: Fixed #616 (Tokenizer: simplifyTemplates() should link() all inserted brackets) This also fixed #619. http://sourceforge.net/apps/trac/cppcheck/ticket/616 http://sourceforge.net/apps/trac/cppcheck/ticket/619 2009-08-27 Slava Semushin * src/tokenize.cpp: Revert "Fixed #616 (cppcheck crashes with Eigen/src/Cholesky/CholeskyInstantiations.cpp)" This reverts commit 89f96451742fcab458650581e01895acb7e1de07. This change not fully and properly fixes a problem but just work arround it. The root of problem is because Tokenizer::simplifyTemplates() inserts new tokens with brackets which not link()-ed. 2009-08-26 Reijo Tomperi * src/checkclass.cpp, test/testclass.cpp: Fix the last test case from ticket #613 (array members variables are not checked in constructor) http://sourceforge.net/apps/trac/cppcheck/ticket/613 2009-08-26 Daniel Marjamäki * src/preprocessor.cpp, test/testpreprocessor.cpp: Preprocessor: better handling of pragma asm and pragma endasm 2009-08-27 Slava Semushin * src/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #617 (False positive "buffer overrun" when sprintf() doesn't have optional parameters) http://sourceforge.net/apps/trac/cppcheck/ticket/617 2009-08-26 Daniel Marjamäki * test/testsimplifytokens.cpp: added testcase for the Tokenizer::simplifyGoto 2009-08-26 Daniel Marjamäki * src/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #498 (Tokenizer: simplify 'goto') 2009-08-26 Slava Semushin * src/tokenize.cpp: Fixed #616 (cppcheck crashes with Eigen/src/Cholesky/CholeskyInstantiations.cpp) http://sourceforge.net/apps/trac/cppcheck/ticket/616 2009-08-26 Reijo Tomperi * test/testclass.cpp: Fix sytax error in uninitVarArray(). This also causes the test to fail, so changing it as TODO. See http://sourceforge.net/apps/trac/cppcheck/ticket/613 2009-08-26 Reijo Tomperi * test/testmemleak.cpp: astyle fix 2009-08-25 Daniel Marjamäki * test/testmemleak.cpp: Refactoring the unit tests of TestMemleakInFunction 2009-08-26 Slava Semushin * src/checkmemoryleak.cpp: Fixed #614 (If you see this, there is a bug ###### Token::Match() - varid was 0) http://sourceforge.net/apps/trac/cppcheck/ticket/614 2009-08-26 Slava Semushin * src/checkmemoryleak.cpp, src/checkmemoryleak.h: src/checkmemoryleak.{h,cpp}: minor improvements. Corrections for commit 0d6b6e840dea7a09fa3d52b98f3148a12942e067 No functional change. 2009-08-26 Slava Semushin * src/checkmemoryleak.cpp, src/checkmemoryleak.h: Replace "const unsigned int" to "unsigned int" in methods parameters. No functional change. 2009-08-26 Slava Semushin * src/checkclass.cpp: src/checkclass.cpp: propagate Token::strAt(). No functional change. 2009-08-26 Slava Semushin * src/tokenize.cpp: Tokenizer(simplifyGoto): create links for inserted braces. 2009-08-25 Daniel Marjamäki * src/tokenize.cpp: fixed segmentation fault 2009-08-24 Daniel Marjamäki * src/tokenize.cpp, src/tokenize.h, test/testmemleak.cpp, test/testother.cpp, test/testsimplifytokens.cpp: Fixed #498 (Tokenizer: simplify 'goto') 2009-08-24 Daniel Marjamäki * test/testclass.cpp: TestClass: Added a testcase where a array member variable is initialized through strcpy 2009-08-23 Reijo Tomperi * src/checkclass.cpp, test/testclass.cpp: Fix ticket #613 (array members variables are not checked in constructor) http://sourceforge.net/apps/trac/cppcheck/ticket/613 Patch from micres 2009-08-23 Daniel Marjamäki * src/checkmemoryleak.cpp, src/token.h: astyle formatting 2009-08-23 Daniel Marjamäki * src/checkmemoryleak.cpp, src/checkmemoryleak.h, test/testmemleak.cpp: Refactoring the unit testing. Wrote special tests for CheckMemoryLeakInFunction::findleak 2009-08-23 Daniel Marjamäki * : Merge commit 'd0k/master' 2009-08-23 Slava Semushin * src/tokenize.cpp, test/testtokenize.cpp: Fixed #603 (Tokenizer: Incorrect simplification of < >) http://sourceforge.net/apps/trac/cppcheck/ticket/603 2009-08-23 Slava Semushin * src/checkother.cpp, test/testother.cpp: Fixed #581 (Wrong usage of div-function) http://sourceforge.net/apps/trac/cppcheck/ticket/581 2009-08-23 Slava Semushin * src/tokenize.cpp: Tokenize: minimize createLinks() calls. No functional change. 2009-08-22 Benjamin Kramer * src/token.cpp, src/token.h: Token: inline some functions 2009-08-22 Benjamin Kramer * src/checkmemoryleak.cpp, src/checkmemoryleak.h: Improve performance by using bsearch(3) instead of a std::set The function name list is already in memory so we can avoid copying it into a std::set if we sort the list alphabetically. This way no binary search tree has to be allocated. Before (best of 5 runs): ./testrunner > /dev/null 0,21s user 0,00s system 95% cpu 0,221 total After (best of 5 runs): ./testrunner > /dev/null 0,20s user 0,00s system 95% cpu 0,210 total 2009-08-22 Slava Semushin * test/testother.cpp: TestOther::varScope5: fixed syntax error in test case. Testrunner complains about "Unlogged error at Tokenizer::syntaxError" since 74bbe945f6a55c3eb9d125b1f16566b0f10c1479 commit. 2009-08-22 Slava Semushin * src/token.cpp, src/token.h, src/tokenize.cpp: Token::createMutualLinks(): introduce and use. No functional change. 2009-08-22 Slava Semushin * src/tokenize.cpp: Tokenizer: propagate Token::eraseTokens(). No functional change. 2009-08-22 Slava Semushin * src/tokenize.cpp: Tokenizer::simplifyTokenList(): call link() for just inserted tokens. 2009-08-22 Slava Semushin * src/tokenize.cpp: Refactoring: Use the MathLib::toString() to stringify a number. No functional change. 2009-08-22 Daniel Marjamäki * src/preprocessor.cpp, test/testpreprocessor.cpp: Fixed #507 (Preprocessor: Incorrect expanding of inner macros) 2009-08-22 Slava Semushin * src/tokenize.cpp, src/tokenize.h, test/testtokenize.cpp: Fixed #592 (Tokenizer: improve the tokenization of do .. while) http://sourceforge.net/apps/trac/cppcheck/ticket/592 2009-08-22 Daniel Marjamäki * src/tokenize.cpp, test/testtokenize.cpp: Fixed #608 (Tokenizer: simplifyKnownVariables doesn't handle 'while (--i)' correctly) 2009-08-22 Slava Semushin * src/tokenize.cpp: Tokenizer::simplifyIfAddBraces: use Token::link() instead of loop. No functional change. 2009-08-22 Slava Semushin * src/tokenize.cpp, test/testtokenize.cpp: Fixed #609 (Tokenizer: don't add {} after do-while();) http://sourceforge.net/apps/trac/cppcheck/ticket/609 2009-08-21 Daniel Marjamäki * src/checkother.cpp: Refactoring: Use the MathLib::toString to stringify a number 2009-08-21 Daniel Marjamäki * src/checkother.cpp, src/checkother.h, test/testother.cpp: Fixed #599 (False positive: null pointer dereference) 2009-08-21 Daniel Marjamäki * src/filelister.cpp: astyle formatting 2009-08-20 Reijo Tomperi * src/tokenize.cpp, test/testsimplifytokens.cpp: Fix ticket #600 (Tokenizer: if(!(fclose(fd) == 0)) is simplified incorrectly) http://sourceforge.net/apps/trac/cppcheck/ticket/600 2009-08-20 Reijo Tomperi * src/preprocessor.cpp, test/testpreprocessor.cpp: Fix ticket #598 (Preprocessor: Multiline comments add line change to wrong location) http://sourceforge.net/apps/trac/cppcheck/ticket/598 2009-08-19 Daniel Marjamäki * src/checkmemoryleak.cpp, src/checkmemoryleak.h, test/testmemleak.cpp: Memory leaks: Use varid instead of varname 2009-08-18 Kimmo Varis * : commit 85682ed4298352a69d0cd9658111b8c72d4e1b67 Author: Daniel Marjamäki Date: Tue Aug 18 20:49:08 2009 +0200 2009-08-18 Kimmo Varis * createrelease: List Windows resource file as file to update. 2009-08-18 Kimmo Varis * win_installer/readme.txt: Installer: update readme for latest changes. 2009-08-18 Kimmo Varis * win_installer/cppcheck.iss: Installer: Add Polish GUI translation file. 2009-08-18 Kimmo Varis * win_installer/cppcheck.iss: Installer: Pick cppcheck executable from correct directory. VS IDE builds the executable to Build/Release folder but QMake generated makefiles build to Src/Release. 2009-08-17 Daniel Marjamäki * src/checkbufferoverrun.cpp, src/checkmemoryleak.cpp, src/checkother.cpp: Refactoring: Use the Token::link instead of loop 2009-08-17 Reijo Tomperi * src/mathlib.cpp: Fix ticket #597 (Compile error with Visual C++) http://sourceforge.net/apps/trac/cppcheck/ticket/597 2009-08-17 Kimmo Varis * gui/gui.pro, readme.txt, src/src.pro: Don't force debug builds in qmake project files. When creating makefiles with qmake one needs to give the target in command line. E.g. $ qmake -config debug or $ qmake -config release For Visual studio projects both targets are generated by just running the qmake command without switches. 2009-08-17 Kimmo Varis * gui/gui.pro, src/src.pro: Add new header file to qmake project files. 2009-08-16 Reijo Tomperi * src/token.cpp: Use _str.length() == 1, instead of _str[1] == 0 2009-08-16 Reijo Tomperi * src/token.cpp, src/token.h: Fix ticket #543 (Possible buffer overrun in Token::Match()) http://sourceforge.net/apps/trac/cppcheck/ticket/543 Get rid of string copying in Token::Match(), also improves speed a little. 8.0s -> 7.7s 2009-08-16 Daniel Marjamäki * Makefile: generated the Makefile 2009-08-17 Slava Semushin * src/checkother.cpp, test/testother.cpp: Fixed #272 ("The scope of the variable XXX can be limited" not detected when variable is initilialized during declaration) http://sourceforge.net/apps/trac/cppcheck/ticket/272 2009-08-17 Slava Semushin * src/mathlib.cpp: MathLib(isInt): formatted and get rid of tabs. No functional change. 2009-08-17 Slava Semushin * src/mathlib.cpp: MathLib(isInt): use std::tolower(). No functional change. 2009-08-17 Slava Semushin * src/mathlib.cpp: MathLib(isInt): use isxdigit(). No functional change. 2009-08-16 Daniel Marjamäki * src/checkmemoryleak.cpp, src/mathlib.cpp, test/testmathlib.cpp: ettlmartin: improved the MathLib::IsInt 2009-08-16 Slava Semushin * src/checkmemoryleak.cpp, src/checkmemoryleak.h: CheckMemoryLeak: try to speed up call_func(). Using std::set::find() instead of sequence of Match() calls. 2009-08-16 Daniel Marjamäki * Makefile: updated the Makefile for the release 2009-08-16 Reijo Tomperi * Changelog, createrelease, src/cppcheck.cpp, src/main.cpp, win_installer/cppcheck.iss: Update version number to 1.35 2009-08-16 Slava Semushin * .gitignore: .gitignore: added src/Makefile generated by qmake. 2009-08-16 Slava Semushin * src/checkautovariables.cpp: CheckAutoVariables(autoVariables): make code more readable. - Reduce indentation - Don't check bindent in many conditions - Move inner if-s to outer condition Should be no functional change. 2009-08-16 Slava Semushin * src/checkautovariables.cpp: CheckAutoVariables: const modifier propagation. No functional change. 2009-08-16 Slava Semushin * src/checkautovariables.cpp: CheckAutoVariables: don't save and search for local variables with varId 0. 2009-08-16 Slava Semushin * src/checkautovariables.cpp: CheckAutoVariables: added braces. No functional change. 2009-08-16 Slava Semushin * src/checkautovariables.cpp: CheckAutoVariables(returnPointerToLocalArray): replace std::list to std::set Use std::set and std::set::find() instead of std::list and std::find(). First should be faster (runs in the logarithmic time) than second (runs in linear time). No functional change. 2009-08-16 Slava Semushin * src/checkautovariables.cpp, src/checkautovariables.h: CheckAutoVariables: change type of vp_list member to std::set. Change type of vda_list from std::list to std::set. It allows to us use find() method instead of self-written loop which may be slow. No functional change. 2009-08-16 Slava Semushin * src/checkautovariables.cpp, src/checkautovariables.h: CheckAutoVariables: change type of vd_list member to std::set. Change type of vda_list from std::list to std::set. It allows to us use find() method instead of self-written loop which may be slow. No functional change. 2009-08-16 Slava Semushin * src/checkautovariables.cpp, src/checkautovariables.h: CheckAutoVariables: change type of vda_list member to std::set. Change type of vda_list from std::list to std::set. It allows to us use find() method instead of self-written loop which may be slow. No functional change. 2009-08-16 Slava Semushin * src/checkautovariables.cpp, src/checkautovariables.h: CheckAutoVariables: use varId instead of variable names. This change similar to be89be8c30326954369c6132c6ebfb47d5ea0ab0 but for vd_list member. 2009-08-16 Slava Semushin * src/checkautovariables.cpp, src/checkautovariables.h, test/testautovariables.cpp: Fixed #590 (False positive: Invalid deallocation when variables have same name) http://sourceforge.net/apps/trac/cppcheck/ticket/590 2009-08-16 Daniel Marjamäki * gui/cppcheck_se.ts: Swedish: Updated the translation file 2009-08-15 Reijo Tomperi * gui/csvreport.cpp, src/filelister.cpp: line change and encoding fixes 2009-08-15 Slava Semushin * src/preprocessor.cpp, src/preprocessor.h: Fixed #588 (Preprocessor: Sort the configurations) http://sourceforge.net/apps/trac/cppcheck/ticket/588 2009-08-14 danmar * src/checkmemoryleak.h, src/tokenize.h: Visual C++: Fixed testrunner compilation problems 2009-08-14 danmar * cppcheck.cbproj, src/filelister.cpp: Borland C++ Builder: Fixed compilation problems when compiling cppcheck 2009-08-14 Reijo Tomperi * src/preprocessor.cpp, test/testpreprocessor.cpp: fix ticket #586 (Preprocessor: Lines like "#error don't" can cause "no pair for character" errors) http://sourceforge.net/apps/trac/cppcheck/ticket/586 2009-08-13 Daniel Marjamäki * src/mathlib.cpp: mathlib: minor fix 2009-08-13 danmar * src/checkbufferoverrun.cpp, src/mathlib.cpp, src/token.cpp, test/testmemleak.cpp, testrunner.cbproj: Borland C++ Builder: Fixed compilation and testrunner problems 2009-08-12 Reijo Tomperi * cppcheck.cbp, src/classinfo.h, src/tokenize.cpp, src/tokenize.h, test/testtokenize.cpp: Initial work for class and member function/variable list in tokenizer. 2009-08-12 Daniel Marjamäki * test/testpreprocessor.cpp: preprocessor: added todo testcase for detecting redundant preprocessor conditions 2009-08-12 Daniel Marjamäki * src/checkother.cpp, test/testother.cpp: Fixed #583 (False positive: the nullpointer check doesn't handle goto properly) 2009-08-12 Slava Semushin * test/testautovariables.cpp, test/testother.cpp: Fixed ticket #541 (Wrong testcases produce unlogged error at Tokenizer::syntaxError) http://sourceforge.net/apps/trac/cppcheck/ticket/541 2009-08-12 Slava Semushin * src/tokenize.cpp, test/testtokenize.cpp: Fixed ticket #584 (Tokenizer: don't set varId for class declaration) http://sourceforge.net/apps/trac/cppcheck/ticket/584 2009-08-11 Daniel Marjamäki * src/checkother.cpp, src/checkother.h, test/testother.cpp: Refactoring: updated the nullPointer message so it contains the name of the pointer 2009-08-10 Daniel Marjamäki * src/checkmemoryleak.cpp, src/checkmemoryleak.h, test/testmemleak.cpp: Fixed #566 (False positive when assigning the return value of realloc(NULL,..) to a pointer variable holding a freed memory address) 2009-08-10 Daniel Marjamäki * src/preprocessor.cpp, test/testpreprocessor.cpp: Fixed #582 (Preprocessor: Remove assembler code inside pragmas) 2009-08-10 Reijo Tomperi * src/checkclass.cpp, test/testclass.cpp: Fixed ticket #578 (missing virtual destructor not detected) http://sourceforge.net/apps/trac/cppcheck/ticket/578 2009-08-09 Vesa Pikki * gui/cppcheck_de.ts, gui/cppcheck_en.ts, gui/cppcheck_fi.ts, gui/cppcheck_pl.ts, gui/cppcheck_ru.ts, gui/cppcheck_se.ts, gui/gui.pro, gui/translationhandler.cpp: Added a Polish translation file. Also added some missing Finnish and English translations. 2009-08-09 Daniel Marjamäki * src/checkclass.cpp, test/testclass.cpp: Hoangtuansu: Fixed #537 (false positive::operator= should return something) 2009-08-09 Daniel Marjamäki * win_installer/cppcheck.wxs: Created an experimental wix installation file 2009-08-09 Gianluca Scacco * src/checkautovariables.cpp: Style check 2009-08-09 Gianluca Scacco * test/testautovariables.cpp: Added new test for invalid deallocation 2009-08-09 Gianluca Scacco * src/checkautovariables.cpp, src/checkautovariables.h: Invalid deallocation check done 2009-08-09 Slava Semushin * src/tokenize.cpp, test/testtokenize.cpp: Fixed ticket #574 (Tokenizer: not assign varId when variable first afer keyword and has long type) http://sourceforge.net/apps/trac/cppcheck/ticket/574 2009-08-09 Slava Semushin * src/tokenize.cpp, test/testsimplifytokens.cpp: Fixed ticket #572 (Tokenizer: improve detection of arrays) http://sourceforge.net/apps/trac/cppcheck/ticket/572 2009-08-09 Slava Semushin * src/checkstl.cpp, test/teststl.cpp: Fixed ticket #573 (False positive of set range check when we dereferencing iterator) http://sourceforge.net/apps/trac/cppcheck/ticket/573 2009-08-09 Slava Semushin * src/checkbufferoverrun.cpp: checkbufferoverrun.cpp: get rid of Match() usage with varid 0. 2009-08-08 Slava Semushin * src/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed ticket #570 (Buffer overrun not detected when sprintf() format string greater then buffer size) http://sourceforge.net/apps/trac/cppcheck/ticket/570 2009-08-08 Slava Semushin * src/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed ticket #571 (Buffer overrun for sprintf() not detected after first ')' symbol) http://sourceforge.net/apps/trac/cppcheck/ticket/571 2009-08-08 Slava Semushin * src/tokenize.cpp, test/testtokenize.cpp: Fixed ticket #565 (Tokenizer: simplify variable declaraion like 'int z = x >> 16') http://sourceforge.net/apps/trac/cppcheck/ticket/565 2009-08-08 Reijo Tomperi * src/tokenize.cpp: Improve speed with files containing classes. E.g. measured speed difference was 1m11.042s --> 0m45.005s with one large test file. 2009-08-07 Daniel Marjamäki * src/checkstl.cpp, test/teststl.cpp: Fixed #525 (false positive: vector range checking with <) 2009-08-07 Reijo Tomperi * src/tokenize.cpp, test/testsimplifytokens.cpp: Fixed ticket #564 (set variable id for "struct ABC **p") http://sourceforge.net/apps/trac/cppcheck/ticket/564 2009-08-06 Reijo Tomperi * src/checkbufferoverrun.cpp, src/tokenize.cpp, test/testsimplifytokens.cpp: Fix ticket #563 (set variable id for **p) http://sourceforge.net/apps/trac/cppcheck/ticket/563 2009-08-06 Daniel Marjamäki * src/checkbufferoverrun.cpp: Bail out if variable id is 0. This should be reverted when #563 has been fixed 2009-08-05 Reijo Tomperi * src/tokenize.cpp: Improve speed a lot for files that have long number lists like = { 0,1,2,3,4, etc. } 2009-08-05 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #555 (False positive: [CuTest.c:25]: (error) Memory leak: len) 2009-08-05 Daniel Marjamäki * src/tokenize.cpp, test/testtokenize.cpp: Fixed #558 (Tokenizer: Bad simplification of 'for(unsigned i = 0; i < 100; ++i)') 2009-08-05 Daniel Marjamäki * src/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #528 (Tokenizer: Simplify: 'if(!(a->x=b()))') 2009-08-04 Reijo Tomperi * : commit c6a1f173182b128a8f03168cd48265f8b66e44b2 Author: Reijo Tomperi Date: Tue Aug 4 22:41:32 2009 +0300 2009-08-04 Daniel Marjamäki * src/check.h, src/checkautovariables.h, src/checkbufferoverrun.cpp, src/checkbufferoverrun.h, src/checkclass.h, src/checkdangerousfunctions.h, src/checkmemoryleak.cpp, src/checkmemoryleak.h, src/checkother.h, src/checkstl.h, src/cppcheck.cpp: Listing error messages in XML format 2009-08-04 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #554 (resource leak false positive) 2009-08-04 Daniel Marjamäki * src/checkother.h, src/tokenize.h, test/testmemleak.cpp, test/testredundantif.cpp, test/testsimplifytokens.cpp, test/testtokenize.cpp: Refactoring the unit testing 2009-08-04 Reijo Tomperi * src/checkclass.cpp, test/testclass.cpp: Fix ticket #531 (false positive about missing virtual destructor) http://sourceforge.net/apps/trac/cppcheck/ticket/531 2009-08-03 Kimmo Varis * gui/test.cpp: Oops. Didn't mean to commit the change to gui/test.cpp. But since I did, lets remove the linefeeds and make the function look like it gets called. 2009-08-02 Reijo Tomperi * src/checkmemoryleak.cpp, test/testmemleak.cpp: Fix ticket #552 (False positive with --all when realloc is used with two variables.) http://sourceforge.net/apps/trac/cppcheck/ticket/552 2009-08-02 Reijo Tomperi * src/checkmemoryleak.cpp, test/testmemleak.cpp: TODO test case realloc5 added and "Checkmemoryleak: simplifycode result for" debug info added. 2009-08-02 Reijo Tomperi * gui/test.cpp, src/mathlib.cpp, src/tokenize.cpp: astyle fix 2009-08-02 Slava Semushin * src/checkbufferoverrun.cpp: src/checkbufferoverrun.cpp: fixed regression. 2009-08-02 Slava Semushin * src/checkbufferoverrun.cpp: src/checkbufferoverrun.cpp: don't call Token::Match() for variables with varId 0. 2009-08-02 Slava Semushin * src/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Improved "index out of bounds" check. Corrected 342acaaaf2f56e1de18371a1a726425127939178 commit. 2009-08-02 Slava Semushin * test/testbufferoverrun.cpp: test/testbufferoverrun.cpp: improve test cases. 2009-08-02 Slava Semushin * src/mathlib.cpp, src/mathlib.h, src/tokenize.cpp: MathLib: introduce and use calculate() method. No functional change. 2009-08-02 Kimmo Varis * gui/cppcheck_de.ts, gui/cppcheck_en.ts, gui/cppcheck_fi.ts, gui/cppcheck_ru.ts, gui/cppcheck_se.ts: GUI: update translation files. 2009-08-02 Kimmo Varis * gui/common.h, gui/main.ui, gui/mainwindow.cpp, gui/mainwindow.h, gui/resultstree.cpp, gui/test.cpp: Add 'possible style error' severity for the GUI. Fixes ticket #436 (GUI: All style -severity). The possible style errors can be now selected visible / hidden so all severities have their own menu item. 2009-08-02 Kimmo Varis * gui/mainwindow.cpp: GUI: Use native path separators in main window caption. 2009-08-02 Slava Semushin * src/tokenize.cpp: src/tokenize.cpp: don't call std::string.c_str() for Token::str() argument. In 4286fdbabb64014fd6ef968e163257a977400d3e commit I introduce Token::str() method with std::string argument and now we may get rid of useless std::string.c_str() calls. No functional change. 2009-08-02 Slava Semushin * src/tokenize.cpp, test/testsimplifytokens.cpp: Fixed ticket #549 (Tokenizer: improve calculation simplification) http://sourceforge.net/apps/trac/cppcheck/ticket/549 2009-08-02 Slava Semushin * src/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #547 (index out of bounds not detected when addition used as array index) http://sourceforge.net/apps/trac/cppcheck/ticket/547 2009-08-01 Slava Semushin * src/tokenize.cpp, test/testtokenize.cpp: Fixed #542 (Tokenizer: allow numbers in templates parameters) http://sourceforge.net/apps/trac/cppcheck/ticket/542 2009-08-01 Kimmo Varis * : commit 5ce15eeb232e3f4a73b4285e0e5fb4c187ce443f Author: Kimmo Varis Date: Sat Aug 1 18:28:21 2009 +0300 2009-08-01 Slava Semushin * src/checkstl.cpp: src/checkstl.cpp(iterators): some corrections. Corrections for my changes in 12ca70fe5a61fa9a7b847411ca23329c52544402 and 347802f81983bf94494c50bd71522f5c5d8f1e15 commits. 2009-08-01 Slava Semushin * src/tokenize.cpp, test/testtokenize.cpp: Fixed ticket #539 (Tokenizer: don't replace constants variables with varid 0) http://sourceforge.net/apps/trac/cppcheck/ticket/539 2009-08-01 Daniel Marjamäki * src/preprocessor.cpp, test/testpreprocessor.cpp: preprocessor: fixed problem in Preprocessor::expandMacros when macro argument is for example 'unsigned long' 2009-08-01 Daniel Marjamäki * src/checkother.cpp, test/testother.cpp: null pointers: fixed a false positive 2009-08-01 Kimmo Varis * gui/cppcheck_de.ts, gui/cppcheck_en.ts, gui/cppcheck_fi.ts, gui/cppcheck_ru.ts, gui/cppcheck_se.ts, gui/resultsview.cpp: GUI: Make two report saving errors translatable. 2009-07-31 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #511 (false positive, memory leak when using 'var = ({});') 2009-07-31 Kimmo Varis * gui/resultsview.cpp: GUI: Fix bug that GUI didn't close the report file. 2009-07-31 Kimmo Varis * gui/cppcheck_de.ts, gui/cppcheck_en.ts, gui/cppcheck_fi.ts, gui/cppcheck_ru.ts, gui/cppcheck_se.ts, gui/mainwindow.h, gui/resultstree.cpp: GUI: Fix GUI to recognize and use "possible error" type (was "all" earlier). 2009-08-01 Slava Semushin * src/checkstl.cpp, src/tokenize.cpp, test/testtokenize.cpp: Fixed #521 (Tokenizer: improve static variable detection) Also change cppcheck default behavior to don't show "If you see this, there is a bug" message for each variable without varId. This feature was very helpful for developers but may annoying users. http://sourceforge.net/apps/trac/cppcheck/ticket/521 2009-07-31 Slava Semushin * src/tokenize.cpp: Fixed ticket #534 (Segmentation fault when checking VLC sourcecode) Fixed all valgrind errors. http://sourceforge.net/apps/trac/cppcheck/ticket/534 2009-07-31 Daniel Marjamäki * test/testtokenize.cpp: astyle formatting 2009-07-31 Daniel Marjamäki * src/checkother.cpp, test/testother.cpp: null pointers: detect when there are possible null pointer dereferencing when looping through a linked list both in inner and outer loops at the same time 2009-07-30 Daniel Marjamäki * test/testother.cpp: null pointers: Added a todo testcase 2009-07-31 Slava Semushin * src/checkstl.cpp, test/teststl.cpp: Fixed ticket #503 (Dereferencing after erase() not work if we try to get access to member) http://sourceforge.net/apps/trac/cppcheck/ticket/503 2009-07-31 Slava Semushin * src/tokenize.cpp, test/testtokenize.cpp: Fixed ticket #523 (Tokenizer: set varId for types with long namespaces) FIXME: skip namespaces by the best way. http://sourceforge.net/apps/trac/cppcheck/ticket/533 2009-07-31 Slava Semushin * src/tokenize.cpp, test/testtokenize.cpp: Fixed ticket #532 (Tokenizer: set varId for types which have comma in template parameter) http://sourceforge.net/apps/trac/cppcheck/ticket/532 2009-07-30 Slava Semushin * src/checkstl.cpp: src/checkstl.cpp(iterators): skip already processed tokens. No functional change. 2009-07-30 Slava Semushin * src/checkstl.cpp: src/checkstl.cpp(iterators): simplify condition. 2009-07-30 Slava Semushin * src/checkstl.cpp: src/checkstl.cpp(iterators): fixed coding mistake. 2009-07-30 Reijo Tomperi * src/cppcheck.cpp: include for clock_t (fix compile problem) 2009-07-30 Daniel Marjamäki * src/preprocessor.cpp, src/preprocessor.h, test/testpreprocessor.cpp: Preprocessor: Speedup of the match_cfg_def function 2009-07-30 Reijo Tomperi * test/testsimplifytokens.cpp: Added more tests to test case TestSimplifyTokens::ifassign1 2009-07-30 Reijo Tomperi * src/tokenize.cpp, test/testsimplifytokens.cpp: Fixed ticket #529 (Tokenizer: simplify if((x==0))) http://sourceforge.net/apps/trac/cppcheck/ticket/529 2009-07-29 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: memory leak for struct member: fixed false positive when the struct pointer is stored away 2009-07-29 Daniel Marjamäki * src/checkother.cpp, test/testother.cpp: null pointers: Fixed false positive when 'do' are used 2009-07-29 Slava Semushin * src/checkstl.cpp, test/teststl.cpp: Fixed ticket #524 (Containers range check shouldn't stop at first founded error) http://sourceforge.net/apps/trac/cppcheck/ticket/524 2009-07-29 Slava Semushin * src/checkstl.cpp: src/checkstl.cpp(stlBoundries): simplify condition. No functional change. 2009-07-29 Slava Semushin * src/tokenize.cpp, test/testtokenize.cpp: Fixed ticket #522 (Tokenizer: recognize comma in container with STL type declaration) http://sourceforge.net/apps/trac/cppcheck/ticket/522 2009-07-29 Slava Semushin * src/checkstl.cpp: src/checkstl.cpp(iterators): reduce indentation. No functional change. 2009-07-29 Slava Semushin * src/tokenize.cpp, test/testtokenize.cpp: Fixed ticket #520 (Tokenizer: properly set varId for containers with STL types) http://sourceforge.net/apps/trac/cppcheck/ticket/520 2009-07-28 Slava Semushin * src/tokenize.cpp, test/testsimplifytokens.cpp: Fixed ticket #519 (Tokenizer converts commas in for-loops) http://sourceforge.net/apps/trac/cppcheck/ticket/519 2009-07-28 Slava Semushin * src/tokenize.cpp, test/testsimplifytokens.cpp: Fixed ticket #514 (false positive:: memory leak when using comma near delete[]) http://sourceforge.net/apps/trac/cppcheck/ticket/514 2009-07-28 Slava Semushin * test/testautovariables.cpp: test/testautovariables.cpp: renamed some testcases. Make it readable. No functional change. 2009-07-28 Slava Semushin * src/checkautovariables.cpp, test/testautovariables.cpp: checkautovariables: added newlines to make code more readable. No code change. 2009-07-28 Slava Semushin * src/checkautovariables.cpp, test/testautovariables.cpp: Fixed ticket #517 (False positive for extern variables: return of the address of an auto-variable) http://sourceforge.net/apps/trac/cppcheck/ticket/517 2009-07-27 Slava Semushin * src/checkclass.cpp, src/checkmemoryleak.cpp, src/checkother.cpp: Replace Match() to operator==() from std::string. No functional change. 2009-07-27 Slava Semushin * src/checkautovariables.cpp, src/checkclass.cpp, src/checkmemoryleak.cpp, src/checkother.cpp, src/checkstl.cpp, src/checkunusedfunctions.cpp, src/preprocessor.cpp, src/tokenize.cpp: Replace simpleMatch() to operator==() from std::string. No functional change. 2009-07-27 Slava Semushin * src/checkautovariables.cpp: src/checkautovariables.cpp(autoVariables): simplify condition. No functional change. 2009-07-27 Slava Semushin * src/checkautovariables.cpp: src/checkautovariables.cpp: assign default value to std::string during object creation. No functional change. 2009-07-27 Daniel Marjamäki * src/cppcheck.cpp, src/settings.cpp, src/settings.h: gcc: added an option '--showtime' => show some simple timing information 2009-07-27 Reijo Tomperi * test/testsimplifytokens.cpp: Improve test case TestSimplifyTokens::comma_keyword 2009-07-26 Reijo Tomperi * src/preprocessor.cpp: Update to ticket #265 (Log a warning when an include file is not found) Only warn about "foo.h", don't warn about http://sourceforge.net/apps/trac/cppcheck/ticket/265 2009-07-26 Daniel Marjamäki * src/tokenize.cpp, test/testsimplifytokens.cpp: astyle formatting 2009-07-26 Slava Semushin * src/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed ticket #499 (buffer overflow not detected when using macros) sprintf() buffer overrun detection works wrong due to typo (since time when it was added in commit a604f56f1960d3abe7a7c4bbc221bf62ccb676a2). Also reports buffer overrun when sprintf() writes bytes equal to buffer size -- in this case off-by-one error appears. http://sourceforge.net/apps/trac/cppcheck/ticket/499 2009-07-26 Slava Semushin * src/tokenize.cpp, src/tokenize.h, test/testsimplifytokens.cpp: Fixed ticket #496 (Tokenizer: simplify statements with "," better) https://sourceforge.net/apps/trac/cppcheck/ticket/496 2009-07-26 Daniel Marjamäki * src/checkother.cpp: Fixed #506 (###### If you see this, there is a bug ###### Token::Match()) 2009-07-26 Slava Semushin * gui/cppcheck_ru.ts: gui/cppcheck_ru.ts: start Russian translation. 2009-07-26 Slava Semushin * gui/cppcheck_de.ts, gui/cppcheck_en.ts, gui/cppcheck_fi.ts, gui/cppcheck_ru.ts, gui/cppcheck_se.ts: gui: regenerate ts-files. 2009-07-26 Reijo Tomperi * src/preprocessor.cpp: Removed some debug output which should not be on and cleaned up a little. 2009-07-25 Reijo Tomperi * src/cppcheck.cpp, src/preprocessor.cpp, src/preprocessor.h, test/testpreprocessor.cpp: Fix ticket #265 (Log a warning when an include file is not found) http://sourceforge.net/apps/trac/cppcheck/ticket/265 2009-07-25 Daniel Marjamäki * src/checkother.cpp, test/testother.cpp: Fixed #504 (false positive: null pointer dereference) 2009-07-25 Daniel Marjamäki * src/checkother.cpp: speedup of CheckOther::postIncrement 2009-07-25 Daniel Marjamäki * test/testpreprocessor.cpp: Added more tests to the TestPreprocessor::match_cfg_def (#505) 2009-07-25 Daniel Marjamäki * src/tokenize.cpp: astyle formatting 2009-07-25 Daniel Marjamäki * src/preprocessor.h, test/testpreprocessor.cpp: Preprocessor: Added todo test case for better evaluation of #if conditions 2009-07-25 Daniel Marjamäki * src/preprocessor.cpp, test/testpreprocessor.cpp: Fixed #501 (Preprocessor should read open configurations that are defined within the file) 2009-07-25 Slava Semushin * src/checkother.cpp: src/checkother.cpp: simplify condition a bit. No functional change. 2009-07-25 Slava Semushin * src/checkmemoryleak.cpp, src/checkother.cpp, src/tokenize.cpp, src/tokenize.h, test/testtokenize.cpp: Fixed ticket #500 (Tokenizer: simplify the "(p != NULL)" conditions) Also teach simplifyIfNot() to handle variables like Foo::var. https://sourceforge.net/apps/trac/cppcheck/ticket/500 2009-07-25 Slava Semushin * test/testtokenize.cpp: test/testtokenize.cpp: use tokenizeAndStringify() function. Instead of self-written code. No functional change. 2009-07-24 booga * src/checkother.cpp, src/checkstl.cpp, test/testother.cpp, test/teststl.cpp: astyle FTW (should have read about that sooner) 2009-07-24 booga * src/checkother.cpp, src/checkother.h, src/checkstl.cpp, src/checkstl.h, test/testother.cpp, test/teststl.cpp: Fix #476 STL Container checks. Fix #473 Add post increment check for STL objects and Classes. 2009-07-24 Daniel Marjamäki * src/checkmemoryleak.cpp, src/tokenize.cpp, test/testsimplifytokens.cpp: Tokenizer: simplify return statements - remove redundant parantheses 2009-07-24 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: memory leaks: fixed false positive for struct members - better handling of if/else 2009-07-23 Daniel Marjamäki * test/testmemleak.cpp: memory leaks: added a todo test case for struct members when using if-else 2009-07-23 Daniel Marjamäki * src/checkother.cpp, test/testother.cpp: null pointers: fixed false positives when checking if pointer is null at many locations (#485) 2009-07-23 Daniel Marjamäki * src/checkother.cpp, test/testother.cpp: null pointers: fixed false positives (#49) 2009-07-23 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #493 (Memory leak: False positive when using the exit(0)) 2009-07-23 Daniel Marjamäki * src/checkother.cpp, test/testother.cpp: null pointers: dereferencing a pointer and then checking if it's null (#49) 2009-07-23 Daniel Marjamäki * src/tokenize.cpp, test/testsimplifytokens.cpp: tokenizer: simplify '?:' better when the condition is always true 2009-07-22 Daniel Marjamäki * src/preprocessor.cpp, test/testpreprocessor.cpp: Preprocessor: Better evaluation of conditions such as '#if defined A || defined B' (#469) 2009-07-22 Daniel Marjamäki * src/tokenize.cpp: tokenizer: added todo for simplifying '(true?x:y)' => '(x)' 2009-07-22 Daniel Marjamäki * test/testother.cpp: astyle formatting 2009-07-22 Daniel Marjamäki * src/preprocessor.cpp, test/testpreprocessor.cpp: Fixed #469 (Preprocessor should read open configurations that are defined within the file) 2009-07-22 Daniel Marjamäki * src/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #497 (Templates are not expanded correctly) 2009-07-22 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #494 (False positives of checking leaks struct members) Better handling of function calls 2009-07-21 Daniel Marjamäki * src/checkother.cpp, src/checkother.h, test/testother.cpp: null pointers: better checking when dereferencing pointer and then checking if it is null (#485) 2009-07-21 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testcppcheck.cpp, test/testmemleak.cpp: dereferencing deallocated memory: it is ok to take the address to deallocated memory but it is not ok to dereference the address 2009-07-21 Daniel Marjamäki * src/checkother.cpp, src/checkother.h, test/testother.cpp: invalid pointer usage: broke out CheckOther::invalidPointer from the CheckOther::nullPointer (#485) 2009-07-21 Daniel Marjamäki * : commit d2278b5ce0d23b864cd99a998866b45e1bdf257b Author: Reijo Tomperi Date: Mon Jul 20 23:24:23 2009 +0300 2009-07-20 Reijo Tomperi * src/checkother.cpp, test/testother.cpp: Fix ticket #486 (C-style pointer casting misses const pointers) http://sourceforge.net/apps/trac/cppcheck/ticket/486 2009-07-20 Daniel Marjamäki * src/checkother.cpp, test/testother.cpp: null pointer dereferencing: fixed another false positive (#485) 2009-07-20 Daniel Marjamäki * src/checkother.cpp, test/testother.cpp: null pointer dereferencing: removed a few false positives in the new check that I added (#485) 2009-07-20 Daniel Marjamäki * src/checkother.cpp: fix bug in previous commit that fixed #485 2009-07-20 Daniel Marjamäki * src/checkother.cpp, test/testother.cpp: Fixed #485 (detect when code is checking for null after dereferencing) 2009-07-20 Daniel Marjamäki * src/preprocessor.cpp: preprocessor: Fixed hanging in Preprocessor::expandMacros when trying to replace all '__VA_ARGS__' with '__VA_ARGS__' 2009-07-20 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: memory leak for struct member: made the checking more sensitive. Skip bail-out execution paths were the member is properly deallocated 2009-07-19 Daniel Marjamäki * src/checkmemoryleak.cpp, src/checkmemoryleak.h, test/testmemleak.cpp: memleak: implemented simple checking for leaking struct members 2009-07-19 Slava Semushin * test/testrunner.cpp: test/testrunner.cpp: fixed exit code when count of fails tests equals to 256. When 256 tests fails return code was 0 and it was wrong. Now exit code may be only 0 or 1 and not show how many tests fails. Thanks to aggro80@ for pointing to this! 2009-07-18 Daniel Marjamäki * src/checkother.cpp, test/testmemleak.cpp, test/testtokenize.cpp: astyle formatting 2009-07-18 Slava Semushin * src/checkmemoryleak.cpp, test/testmemleak.cpp: src/checkmemoryleak.cpp: added fchmod() function to white list. 2009-07-18 Slava Semushin * src/checkother.cpp, test/testother.cpp: Finally fixed ticket #284 (style check: redundant condition improvement) http://sourceforge.net/apps/trac/cppcheck/ticket/284 2009-07-18 Slava Semushin * test/testrunner.cpp, test/testsuite.cpp, test/testsuite.h: Fixed ticket #481 (testrunner should exit with non-zero status if one of tests fails) http://sourceforge.net/apps/trac/cppcheck/ticket/481 2009-07-18 Slava Semushin * src/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed ticket #464 (resource leak not detected when getc is used on the file handle) http://sourceforge.net/apps/trac/cppcheck/ticket/464 2009-07-18 Slava Semushin * src/tokenize.cpp, test/testtokenize.cpp: Fixed ticket #479 (varId not assigned to reference to standart container) http://sourceforge.net/apps/trac/cppcheck/ticket/479 2009-07-18 Kimmo Varis * : commit d1eb7e65584421d346c69371594301c227cf05c8 Author: Kimmo Varis Date: Sat Jul 18 13:34:00 2009 +0300 2009-07-18 Kimmo Varis * src/src.pro: Enable more warnings in QMake-generated makefiles. Use same warning levels for GCC than in original makefile. Use W4 level for Visual Studio. 2009-07-18 Slava Semushin * test/teststl.cpp: Fixed ticket #477 (Bug in Token::Match() during process TestStl::pushback3) http://sourceforge.net/apps/trac/cppcheck/ticket/477 2009-07-18 Kimmo Varis * : commit 180a04316d511d743508adc595d2cab6ef564711 Author: Kimmo Varis Date: Sat Jul 18 11:25:22 2009 +0300 2009-07-18 Daniel Marjamäki * src/tokenize.cpp, test/testsimplifytokens.cpp: tokenizer: improved the Tokenizer::simplifyIfNot 2009-07-18 Daniel Marjamäki * src/main.cpp: astyle formatting 2009-07-17 Slava Semushin * src/checkclass.cpp, test/testclass.cpp: Fixed ticket #459 (false positive::Member variable not initialized in constructor) http://sourceforge.net/apps/trac/cppcheck/ticket/459 2009-07-17 Daniel Marjamäki * gui/aboutdialog.h, gui/applicationdialog.h, gui/applicationlist.h, gui/checkthread.h, gui/common.h, gui/csvreport.h, gui/fileviewdialog.h, gui/mainwindow.h, gui/projectfile.h, gui/report.h, gui/resultstree.h, gui/resultsview.h, gui/settingsdialog.h, gui/threadhandler.h, gui/threadresult.h, gui/translationhandler.h, gui/txtreport.h, gui/xmlreport.h, src/check.h, src/checkautovariables.h, src/checkbufferoverrun.h, src/checkclass.h, src/checkdangerousfunctions.h, src/checkheaders.h, src/checkmemoryleak.h, src/checkother.h, src/checkstl.h, src/checkunusedfunctions.h, src/cppcheck.h, src/errorlogger.h, src/filelister.h, src/mathlib.h, src/preprocessor.h, src/settings.h, src/token.h, src/tokenize.h: doc: updated doxygen comments. three groups where created - 'GUI', 'Core' and 'Checks' 2009-07-16 Daniel Marjamäki * cppcheck.geany, src/main.cpp: doc: changed the doxygen comments for the mainpage 2009-07-16 Vesa Pikki * gui/main.cpp, gui/mainwindow.cpp, gui/mainwindow.h, src/preprocessor.cpp, src/tokenize.cpp: Added support for checking files via commandline arguments. 2009-07-14 Kimmo Varis * : commit c6b82cab21cffa6d7ec6ae5d8f15bb6dbd861707 Author: Kimmo Varis Date: Tue Jul 14 18:47:38 2009 +0300 2009-07-14 Kimmo Varis * .gitignore: Add generated GUI header files to gitignore. 2009-07-14 Daniel Marjamäki * src/tokenize.cpp: doxygen: added a todo to simplify 'for' loops better in the tokenizer 2009-07-14 Kimmo Varis * gui/gui.pro: GUI: Place intermediate resource files to temp folder. 2009-07-14 Kimmo Varis * src/src.pro, test/test.pro: Add QMake project files for core and tests. Ticket #472 (QMake project file to build cppcheck core). 2009-07-14 Daniel Marjamäki * src/checkstl.cpp, test/teststl.cpp: fixed todo test case - detect iterator usage after push_front|push_back 2009-07-14 Daniel Marjamäki * src/tokenize.cpp, src/tokenize.h, test/testsimplifytokens.cpp: tokenizer: simplify the '?:' operator 2009-07-14 Daniel Marjamäki * test/testsimplifytokens.cpp: simplify tokens: simplify test cases 2009-07-14 Daniel Marjamäki * src/checkclass.cpp, src/checkmemoryleak.cpp, src/checkmemoryleak.h, src/checkunusedfunctions.cpp, src/preprocessor.cpp, src/token.cpp, src/tokenize.cpp: doxygen: made the todos visible in the doxygen output 2009-07-13 Daniel Marjamäki * src/check.h, src/checkheaders.cpp, src/checkunusedfunctions.cpp, src/cppcheck.cpp, src/tokenize.cpp, src/tokenize.h, test/testpreprocessor.cpp, test/testsimplifytokens.cpp, test/teststl.cpp, test/testtokenize.cpp: minor refactoring: header cleanup. use forward declarations instead of includes 2009-07-13 Kimmo Varis * : commit 7f7e85390f72ee63ec9bdf4642a36b144dcb69f3 Author: Kimmo Varis Date: Mon Jul 13 18:53:43 2009 +0300 2009-07-13 Daniel Marjamäki * src/checkbufferoverrun.cpp, src/checkbufferoverrun.h, src/checkdangerousfunctions.cpp, src/checkdangerousfunctions.h, test/testbufferoverrun.cpp, test/testdangerousfunctions.cpp: refactoring: Renamed checking classes 2009-07-13 Kimmo Varis * : commit 6393498966e7e030445cca0387c85942826964d7 Author: Kimmo Varis Date: Mon Jul 13 16:51:35 2009 +0300 2009-07-13 Daniel Marjamäki * src/checkmemoryleak.h, src/errorlogger.h: astyle formatting 2009-07-13 Kimmo Varis * gui/common.h, gui/main.ui, gui/mainwindow.cpp, gui/mainwindow.h, gui/resultstree.cpp: GUI: Remove security-category. The security-category was removed from core in commits 03f3ee62a0d9a7e38f1dfcbefae872cd08990dbc and 11bc5195b84c18cc59f336cc0588dc07294a1de7. 2009-07-13 Daniel Marjamäki * src/checkmemoryleak.cpp, src/checkmemoryleak.h: refactoring: Refactoring of the leak-checking classes 2009-07-13 Daniel Marjamäki * src/main.cpp, src/token.h: doxygen: updated a few comments 2009-07-13 Kimmo Varis * : commit d88cf4d3e4caa2a7d9234d8be9aefa67df081dc0 Author: Kimmo Varis Date: Mon Jul 13 11:39:46 2009 +0300 2009-07-13 Daniel Marjamäki * src/check.h, src/checkautovariables.cpp, src/checkautovariables.h, src/checkbufferoverrun.cpp, src/checkclass.cpp, src/checkdangerousfunctions.cpp, src/checkmemoryleak.cpp, src/checkmemoryleak.h, src/checkother.cpp, src/checkstl.cpp, src/errorlogger.h, test/testbufferoverrun.cpp, test/testconstructors.cpp, test/testdivision.cpp, test/testmemleak.cpp: refactoring: renamed the severity "all" to "possible error" 2009-07-12 Daniel Marjamäki * gui/gui.pro, gui/mainwindow.cpp, src/errorlogger.h, src/settings.cpp, src/settings.h: cleanup: continued with the removing of the security. Some more work is needed but now everything compiles and runs at least. 2009-07-12 Daniel Marjamäki * src/checkother.h: doc: add link 2009-07-12 Daniel Marjamäki * Makefile, src/checksecurity.cpp, src/checksecurity.h, test/testsecurity.cpp, tools/dmake.cpp, tools/errmsg.cpp: cleanup: removed deprecated files. security checking and errmsg 2009-07-12 Daniel Marjamäki * createrelease, src/cppcheck.cpp, win_installer/cppcheck.iss: updated version to 1.34 2009-07-12 Daniel Marjamäki * src/checkclass.cpp, test/testunusedprivfunc.cpp: unused private functions: don't check classes declared in header files unless it is known that their whole implementation is seen 2009-07-12 Kimmo Varis * gui/about.ui, gui/cppcheck_de.ts, gui/cppcheck_en.ts, gui/cppcheck_fi.ts, gui/cppcheck_ru.ts, gui/cppcheck_se.ts: GUI: Improve About-dialog layout. Add vertical spacer above texts to that icon box becomes narrow and text box wide. 2009-07-12 Kimmo Varis * gui/about.ui: GUI: Wordwrap texts in the About-dialog. Fixes ticket #454 (About-dialog size/text problems). 2009-07-11 Daniel Marjamäki * src/main.cpp: doxygen: wrote a simple text for the mainpage 2009-07-11 Daniel Marjamäki * src/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: better description for the message with id strncatUsage 2009-07-10 Daniel Marjamäki * src/cppcheck.cpp, src/cppcheckexecutor.cpp, src/errorlogger.cpp, src/errorlogger.h, src/settings.cpp, src/settings.h, src/threadexecutor.cpp, test/testcppcheck.cpp, test/testsuite.cpp: Revert "cppcheck: Now it's possible to change the output format, for example to a visual studio compliant format" This reverts commit 91a8dbd7b987d6af5f0c00b850bcdd82fe848459. 2009-07-09 Daniel Marjamäki * cppcheck.geany: geany: updated the project file 2009-07-08 Daniel Marjamäki * src/check.h, src/checkclass.cpp, src/checkclass.h, src/checksecurity.h, src/checkstl.h, src/preprocessor.cpp, src/preprocessor.h: refactoring: minor refactorings and added some doxygen comments 2009-07-08 Daniel Marjamäki * src/cppcheck.cpp, src/cppcheckexecutor.cpp, src/errorlogger.cpp, src/errorlogger.h, src/settings.cpp, src/settings.h, src/threadexecutor.cpp, test/testcppcheck.cpp, test/testsuite.cpp: cppcheck: Now it's possible to change the output format, for example to a visual studio compliant format 2009-07-08 Daniel Marjamäki * src/check.h, src/checkother.cpp, src/checkstl.cpp: doc: added more information when '--verbose' is used for these error messages: * dangerous usage of erase * overlapping data buffer 2009-07-08 Daniel Marjamäki * test/testsimplifytokens.cpp: templates: simplified a todo test case by removing a redundant function from the code 2009-07-07 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: memleak: fixed todo test case 2009-07-07 Daniel Marjamäki * src/checkclass.cpp, test/testunusedprivfunc.cpp: Fixed #431 (Unused private function, wrong line when two functions with same name) 2009-07-07 Daniel Marjamäki * src/checkclass.cpp, test/testunusedprivfunc.cpp: Fixed #382 (False positive: public function flagged as 'Unused private function') 2009-07-06 Daniel Marjamäki * gui/cppcheck_se.ts: Translation: Updated the translation file for swedish 2009-07-06 Daniel Marjamäki * test/testmemleak.cpp: addon to previous commit - changed ASSERT_EQUALS to TODO_ASSERT_EQUALS for the todo test case 2009-07-06 Daniel Marjamäki * test/testmemleak.cpp: Memory leaks: Added a simple todo test case 2009-07-06 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #446 (memory leak false positive when variable is static) 2009-07-06 Daniel Marjamäki * src/tokenize.cpp, test/testtokenize.cpp: tokenizer: Don't simplify declarations of static variables 2009-07-06 Kimmo Varis * gui/resultsview.cpp: GUI: Add icons for error messages of failed report saving. 2009-07-06 Kimmo Varis * gui/csvreport.h, gui/txtreport.h, gui/xmlreport.h: GUI: Make report class destructors virtual. 2009-07-06 Kimmo Varis * gui/cppcheck_de.ts, gui/cppcheck_en.ts, gui/cppcheck_fi.ts, gui/cppcheck_ru.ts, gui/cppcheck_se.ts, gui/csvreport.cpp, gui/csvreport.h, gui/gui.pro, gui/mainwindow.cpp, gui/report.h, gui/resultsview.cpp, gui/resultsview.h: GUI: Add new CSV report type. CSV files are handy (and commonly used) to export/import data to other programs. CSV reports allow easy import of cppcheck error data to other programs for further processing. 2009-07-06 Kimmo Varis * win_installer/cppcheck.iss: Installer: Add option to create desktop icon for GUI. 2009-07-06 Kimmo Varis * win_installer/cppcheck.iss: Installer: Remove QT-based from GUI description and use only GUI. Users don't care and don't need to know that GUI is QT-based. It may even confuse some who don't know what QT is. So use simply GUI. 2009-07-06 Kimmo Varis * win_installer/cppcheck.iss: Installer: Label GUI as Beta. 2009-07-05 Reijo Tomperi * cppcheck.cbp, gui/mainwindow.cpp, src/checkbufferoverrun.cpp, src/checkbufferoverrun.h, src/checkclass.cpp, src/checkclass.h, src/checkheaders.cpp, src/checkheaders.h, src/checkmemoryleak.cpp, src/checkmemoryleak.h, src/checkother.cpp, src/checkother.h, src/cppcheck.cpp, src/filelister.cpp, src/filelister.h, src/tokenize.cpp, src/tokenize.h, test/testcharvar.cpp, test/testcppcheck.cpp, test/testdivision.cpp, test/testincompletestatement.cpp, test/testother.cpp, test/testpreprocessor.cpp, test/testtokenize.cpp, test/testunusedvar.cpp, tools/dmake.cpp: Refactoring: Rename member functions to follow naming guidelines. 2009-07-05 Reijo Tomperi * src/tokenize.h, test/testmemleak.cpp: Test case improvement, unused function removed from tokenizer. 2009-07-05 Reijo Tomperi * src/tokenize.cpp, src/tokenize.h, test/testsimplifytokens.cpp: Fix ticket #457 (False positive: Member variable not assigned a value in copy constructor) http://sourceforge.net/apps/trac/cppcheck/ticket/457 Simplify "a = 0, b = 0;" into "a = 0; b = 0;" 2009-07-04 Kimmo Varis * : commit b6e543fd4f0e98410527500f2b7f60986304189f Author: Kimmo Varis Date: Sat Jul 4 22:33:18 2009 +0300 2009-07-04 Kimmo Varis * gui/resultstree.cpp: Fix ticket #456 (GUI:: save only the results selected in view settings) http://sourceforge.net/apps/trac/cppcheck/ticket/456 2009-07-04 Reijo Tomperi * test/testsimplifytokens.cpp: TODO Test case TestSimplifyTokens::remove_comma added 2009-07-04 Reijo Tomperi * gui/mainwindow.cpp, gui/translationhandler.cpp: astyle fix 2009-07-04 Vesa Pikki * gui/cppcheck_de.ts, gui/cppcheck_en.ts, gui/cppcheck_fi.ts, gui/cppcheck_ru.ts, gui/cppcheck_se.ts, gui/translationhandler.cpp: I reverted back the translation file checking. Allthough I put it after QTranslator had failed to load the translation. This still allows QTranslator to try and open the file with several variations of the file. To user we'll tell that the default file is missing. 2009-07-04 Vesa Pikki * gui/translationhandler.cpp: Removed an unnecessary translation file check. It was missing the file extension and QTranslator returns false if it was unable to find the translation file which is just as good. QTranslator can also check for several variations of the given filename. 2009-07-04 Vesa Pikki * : commit e656c951e59bbde0eba9e23dfb3c7f10a4249af3 Author: Vesa Pikki Date: Sat Jul 4 11:06:29 2009 +0300 2009-07-04 Kimmo Varis * gui/mainwindow.cpp, gui/projectfile.cpp, gui/projectfile.h: GUI: Read include directories from project file. 2009-07-04 Kimmo Varis * src/cppcheck.cpp, src/cppcheck.h, src/settings.h: Move include paths list to Settings class so we can set include paths from GUI. 2009-07-03 Reijo Tomperi * src/tokenize.cpp, test/testsimplifytokens.cpp: Fix ticket #448 (false positive:: resource leak) http://sourceforge.net/apps/trac/cppcheck/ticket/448 Tokenizer improved to simplify "if( (p)==-1 )" 2009-07-03 Reijo Tomperi * src/checkclass.cpp, test/testclass.cpp: Fix ticket #452 (Failure to detect "member var not initialized in constructor" if class inherits) http://sourceforge.net/apps/trac/cppcheck/ticket/452 2009-07-03 Kimmo Varis * gui/cppcheck_de.ts, gui/cppcheck_en.ts, gui/cppcheck_fi.ts, gui/cppcheck_ru.ts, gui/cppcheck_se.ts, gui/resultstree.cpp: GUI: Show instructions instead of error when viewer application is not configured. 2009-07-03 Kimmo Varis * gui/cppcheck_de.ts, gui/cppcheck_en.ts, gui/cppcheck_fi.ts, gui/cppcheck_ru.ts, gui/cppcheck_se.ts, gui/mainwindow.cpp, gui/translationhandler.cpp: GUI: Further improve error message for lang file not found. Not being able to switch language is critical error, not just warning. Also show full file name (with extension) of the file not found. 2009-07-03 Kimmo Varis * gui/cppcheck_de.ts, gui/cppcheck_en.ts, gui/cppcheck_fi.ts, gui/cppcheck_ru.ts, gui/cppcheck_se.ts, gui/translationhandler.cpp: GUI: Check translation file exists before loading it. This allows more accurate error message for the user. 2009-07-03 Kimmo Varis * gui/resultsview.ui: Fix EOL style for gui/resultsview.ui that got converted to Windows style. Apparently QT Creator blindly converts file EOL style without any warning to user. 2009-07-03 Kimmo Varis * gui/resultsview.ui: GUI: Remove doubled margin from main window. The main window sets default margin for central widget. And layout was setting another margin so margin was doubled. 2009-07-03 Kimmo Varis * win_installer/cppcheck.iss, win_installer/readme.txt: Installer: Install translation files. 2009-07-03 Kimmo Varis * gui/mainwindow.cpp: Remove unused variable. 2009-07-02 Vesa Pikki * : commit 7a4115236aa61e3c8d3ca9264d816515e572a3a5 Author: Vesa Pikki Date: Thu Jul 2 23:41:37 2009 +0300 2009-07-02 Reijo Tomperi * src/cppcheck.cpp: Fix ticket #434 (Unused function gets reported dozens of times) http://sourceforge.net/apps/trac/cppcheck/ticket/434 Using --unused-functions with -j will now print out error message: "cppcheck: error: --unused-functions can't be used with -j option." 2009-07-02 Vesa Pikki * gui/translationhandler.cpp, gui/translationhandler.h: Added missing license texts. 2009-07-02 Vesa Pikki * gui/fileviewdialog.cpp, gui/fileviewdialog.h, gui/mainwindow.cpp, gui/mainwindow.h, gui/resultsview.cpp, gui/resultsview.h, gui/threadhandler.h: Disabling progressbar if stop button is pressed. This actually had no visible effect on KDE. 2009-07-02 Vesa Pikki * gui/cppcheck_de.ts, gui/cppcheck_en.ts, gui/cppcheck_fi.ts, gui/cppcheck_ru.ts, gui/cppcheck_se.ts, gui/main.ui, gui/mainwindow.cpp, gui/mainwindow.h: Checks if toolbar is closed when opening view menu. Basically just reverted back Kimmo's code that was lost in merge. 2009-07-02 Vesa Pikki * gui/main.ui: Removed unused statusbar. 2009-07-02 Vesa Pikki * gui/cppcheck_de.ts, gui/cppcheck_en.ts, gui/cppcheck_fi.ts, gui/cppcheck_ru.ts, gui/cppcheck_se.ts, gui/file.ui, gui/fileviewdialog.cpp, gui/fileviewdialog.h, gui/gui.pro, gui/mainwindow.cpp: Fileview dialogs now use Qt Designer ui files. Translation also updated. 2009-07-02 Vesa Pikki * gui/about.ui, gui/aboutdialog.cpp, gui/aboutdialog.h, gui/cppcheck_de.ts, gui/cppcheck_en.ts, gui/cppcheck_fi.ts, gui/cppcheck_ru.ts, gui/cppcheck_se.ts, gui/gui.pro: About dialog now uses Qt Designer ui file. Updated translations again. 2009-07-02 Vesa Pikki * : commit 32725c872ec24903c3625ebb32605bb2eacf0e67 Author: Vesa Pikki Date: Thu Jul 2 19:15:34 2009 +0300 2009-07-02 Vesa Pikki * gui/application.ui, gui/applicationdialog.cpp, gui/applicationdialog.h, gui/mainwindow.cpp, gui/settings.ui, gui/settingsdialog.cpp, gui/settingsdialog.h: Settings dialog and application dialog now use Qt Designer ui files. 2009-07-02 Kimmo Varis * gui/applicationlist.cpp, gui/mainwindow.cpp, gui/resultstree.cpp: Astyle fixes. 2009-07-02 Kimmo Varis * gui/aboutdialog.cpp, gui/cppcheck_de.ts, gui/cppcheck_en.ts, gui/cppcheck_fi.ts, gui/cppcheck_ru.ts, gui/cppcheck_se.ts: GUI: Add homepage URL to About-dialog. 2009-07-02 Vesa Pikki * gui/application.ui, gui/cppcheck_de.ts, gui/cppcheck_en.ts, gui/cppcheck_fi.ts, gui/cppcheck_ru.ts, gui/cppcheck_se.ts, gui/gui.pro, gui/settings.ui: Added ui files for Settings and Application dialogs. The code doesn't use those at the moment though. Updated the translation files aswell. 2009-07-02 Vesa Pikki * gui/cppcheck_de.ts, gui/cppcheck_en.ts, gui/cppcheck_fi.ts, gui/cppcheck_ru.ts, gui/cppcheck_se.ts, gui/mainwindow.cpp, gui/resultstree.cpp: Error types are now translated aswell. 2009-07-02 Vesa Pikki * gui/mainwindow.cpp, gui/resultstree.cpp, gui/resultstree.h, gui/resultsview.cpp, gui/resultsview.h: Toolbar can now be hidden. Treeview's headers will now be translated when language changes. 2009-07-02 Vesa Pikki * readme.txt: Added instructions to compile the GUI. 2009-07-02 Vesa Pikki * gui/applicationlist.cpp, gui/applicationlist.h, gui/common.h, gui/cppcheck_de.ts, gui/cppcheck_en.ts, gui/cppcheck_fi.ts, gui/cppcheck_ru.ts, gui/cppcheck_se.ts, gui/fileviewdialog.cpp, gui/gui.pro, gui/main.cpp, gui/main.ui, gui/mainwindow.cpp, gui/mainwindow.h, gui/resultstree.cpp, gui/resultstree.h, gui/resultsview.cpp, gui/resultsview.h, gui/resultsview.ui, gui/settingsdialog.cpp, gui/settingsdialog.h, gui/threadhandler.cpp, gui/translationhandler.cpp, gui/translationhandler.h: Began adding translations and using Qt Designer .ui files. Also added QSetting value names to common.h Work is halfway on both translations and .ui files. I added a very quick and rough finnish translation. The program now requires the translation files to be created before running that can be done with lrelease gui.pro. To compile the whole GUI one must do the following cd gui qmake lrelease gui.pro make 2009-07-02 Kimmo Varis * gui/applicationlist.cpp, gui/mainwindow.cpp, gui/resultstree.cpp, gui/settingsdialog.cpp, gui/threadhandler.cpp: GUI: Do not make settings names translatable. Having translated settings names is a bad idea. If user changes GUI language one loses settings. Also settings might be exported/imported and translated names might not work between systems/users. 2009-07-02 Kimmo Varis * : commit c79d50a7103ac08f31c392d9c7ebac6affff68b0 Author: Kimmo Varis Date: Thu Jul 2 00:05:09 2009 +0300 2009-07-01 Kimmo Varis * gui/applicationlist.cpp, gui/applicationlist.h, gui/resultstree.cpp, gui/threadhandler.cpp: Astyle fixes. 2009-07-01 Kimmo Varis * gui/mainwindow.cpp, gui/mainwindow.h: GUI: Add View-menu item to show/hide standard toolbar. 2009-06-30 Reijo Tomperi * src/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fix ticket #445 (simple to avoid false positive for buffer overflow) http://sourceforge.net/apps/trac/cppcheck/ticket/445 Simple bailout in case "if" is found inside the for-loop. 2009-06-27 Kimmo Varis * gui/mainwindow.h: Fix couple of typos in comments. 2009-06-27 Kimmo Varis * gui/common.h, gui/mainwindow.cpp, gui/mainwindow.h, gui/resultstree.cpp: GUI: Remove GUI for showing unused functions. Implements ticket #443 (Remove checking of unused functions from GUI) https://sourceforge.net/apps/trac/cppcheck/ticket/443 See also ticket #434 https://sourceforge.net/apps/trac/cppcheck/ticket/434 2009-06-27 Kimmo Varis * gui/mainwindow.cpp: GUI: Disable checking unused functions. Implements ticket #443 (Remove checking of unused functions from GUI) https://sourceforge.net/apps/trac/cppcheck/ticket/443 See also ticket #434 https://sourceforge.net/apps/trac/cppcheck/ticket/434 2009-06-26 Daniel Marjamäki * cppcheck.geany, src/cppcheck.cpp, src/preprocessor.cpp, src/preprocessor.h, test/testpreprocessor.cpp: Fix ticket #267 (Glued define and define name in output text) The handling of ifdef configurations where rewritten. Either a configuration is handled properly or it is not handled at all. 2009-06-24 Reijo Tomperi * cppcheck.cbp, gui/aboutdialog.h, gui/fileviewdialog.h, gui/projectfile.h, gui/report.h, gui/txtreport.h, gui/xmlreport.h: Fixed compile error in Linux Include guard naming fix (names starting with underscore+capital letter are reserved in C++, so we should not use those) Codeblocks project file update 2009-06-24 Kimmo Varis * gui/projectfile.h: GUI: Add include guard for projectfile.h. 2009-06-24 Kimmo Varis * : commit 678714419c562d67e12111fc6b5472b53ba34c45 Author: Kimmo Varis Date: Wed Jun 24 10:54:56 2009 +0300 2009-06-23 Daniel Marjamäki * src/checkmemoryleak.cpp: minor fix of test case 2009-06-23 Daniel Marjamäki * src/checkmemoryleak.cpp: calling unknown function -> use 2009-06-23 Daniel Marjamäki * test/testmemleak.cpp: added test case 2009-06-23 Kimmo Varis * gui/projectfile.cpp: Fix ticket #437 (Compile warnings in GUI (in Linux)) https://sourceforge.net/apps/trac/cppcheck/ticket/437 Add empty cases for XML element types we don't need to handle. 2009-06-23 Reijo Tomperi * cppcheck.cbp: codeblocks project file updated 2009-06-22 Reijo Tomperi * src/tokenize.cpp, test/testtokenize.cpp: Fix ticket #435 (False positive: Invalid number of character when ({}) is used in code) http://sourceforge.net/apps/trac/cppcheck/ticket/435 2009-06-22 Kimmo Varis * gui/mainwindow.cpp, gui/mainwindow.h: GUI: Add checked directory path to main window caption. 2009-06-22 Kimmo Varis * gui/gui.cppcheck, gui/projectfile.txt: Fix EOL style of project file doc and example project file. 2009-06-22 Kimmo Varis * gui/readme.txt, win_installer/cppcheck.iss, win_installer/readme.txt: Add QT XML DLL to Windows installer and update docs. 2009-06-22 Kimmo Varis * : commit 1aafeebe7b2abd606043bcb212ad3fcca483e10b Author: Kimmo Varis Date: Mon Jun 22 11:57:17 2009 +0300 2009-06-21 Daniel Marjamäki * src/checkmemoryleak.cpp: astyle formatting 2009-06-21 Daniel Marjamäki * src/checkautovariables.h: doc: simplified the documentation for autovariables a bit 2009-06-21 Slava Semushin * src/checkmemoryleak.cpp, src/checkmemoryleak.h, test/testmemleak.cpp: Fixed ticket #399 (Add detection for resource leaks after open() usage) http://sourceforge.net/apps/trac/cppcheck/ticket/399 2009-06-21 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: CheckMemoryLeakInFunction: More sensitive checking when the code calls an unknown function 2009-06-21 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: detect memory leak when all is given when calling an unknown function 2009-06-21 Daniel Marjamäki * src/preprocessor.cpp, test/testpreprocessor.cpp: Preprocessor: Replace "#if !defined(A)" with "#ifndef A" 2009-06-21 Kimmo Varis * gui/mainwindow.cpp: GUI: Don't allow to open Settings-dialog while checking. 2009-06-20 Kimmo Varis * gui/mainwindow.cpp: GUI: Rename Check all/Uncheck all View-menu items to Show all/Hide all. It is not obvious for user what those items do and after all it is about showing/hiding all items. 2009-06-20 Kimmo Varis * gui/mainwindow.cpp, gui/resultstree.cpp, gui/resultstree.h, gui/resultsview.cpp, gui/resultsview.h: GUI: Enable clearing/saving results also if there are only hidden results. This commit fixes a bug in my earlier commit that only checked visible results. 2009-06-20 Kimmo Varis * : commit 71aa189efbbb221d755086958c63013be63d9362 Author: Kimmo Varis Date: Sat Jun 20 23:23:54 2009 +0300 2009-06-20 Reijo Tomperi * src/checkclass.cpp, src/tokenize.h, test/testunusedprivfunc.cpp: Fix ticket #426 (Problem with include) http://sourceforge.net/apps/trac/cppcheck/ticket/426 2009-06-20 Kimmo Varis * gui/mainwindow.cpp: GUI: Clear results from view before starting new compare. Strictly speaking this is not necessary but it is the easiest way to set the GUI state to "no results"-state. 2009-06-20 Kimmo Varis * gui/mainwindow.cpp, gui/resultstree.cpp, gui/resultstree.h, gui/resultsview.cpp, gui/resultsview.h: GUI: Disable result cleaning and saving during the checking. 2009-06-20 Kimmo Varis * .gitignore: Add Doxygen output directory to gitignore. 2009-06-20 Kimmo Varis * : commit 210014b930928b323dd5e592c35c674c6e61871c Author: Kimmo Varis Date: Sat Jun 20 20:55:28 2009 +0300 2009-06-20 Daniel Marjamäki * src/checkother.cpp, test/testcharvar.cpp: Fixed #425 (False positive: usage of char variable.. c = c & 0x03) Using char variables in bit operations are ok if: * the result is stored in a char * the variable is and'ed with a number that is less than 0x100 2009-06-20 Kimmo Varis * gui/mainwindow.cpp, gui/mainwindow.h, gui/threadhandler.cpp, gui/threadhandler.h: GUI: Make ThreadHandler class part of object tree. 2009-06-20 Daniel Marjamäki * src/checkmemoryleak.cpp: CheckMemoryLeakInClass: Only show the memory leak message when --all is used 2009-06-20 Daniel Marjamäki * src/checkmemoryleak.cpp, src/tokenize.cpp, test/testmemleak.cpp, test/testsimplifytokens.cpp: Fixed ticket #411 (false positive: resource leak in while loop) 2009-06-20 Daniel Marjamäki * test/testtokenize.cpp: refactoring testcases for Tokenizer::simplifyAddBraces 2009-06-20 Kimmo Varis * gui/resultstree.h, src/cppcheck.h, src/cppcheckexecutor.h, src/errorlogger.h, src/token.h: Doxygen fixes. Wrong parameter names etc. 2009-06-19 Daniel Marjamäki * src/tokenize.cpp, test/testsimplifytokens.cpp: Tokenizer: Fixed problem when simplifying casts 2009-06-19 Reijo Tomperi * src/tokenize.cpp, test/testtokenize.cpp: Fix ticket #416 (False positive: Redundant code) http://sourceforge.net/apps/trac/cppcheck/ticket/416 2009-06-19 Daniel Marjamäki * src/preprocessor.cpp, test/testpreprocessor.cpp: Preprocessor: Better handling of macros that has parantheses but not parameters such as "#define AAA( ) aaa" 2009-06-19 Reijo Tomperi * src/preprocessor.cpp: astyle fix 2009-06-19 Daniel Marjamäki * src/preprocessor.cpp, test/testpreprocessor.cpp: Fixed ticket #417 (Crashes in windows because of invalid char value) negative char values are allowed in strings and comments. but not in other code. 2009-06-19 Kimmo Varis * : commit 923e01af3fd18c9156601afc811206ab0a2146bd Author: Kimmo Varis Date: Fri Jun 19 15:19:32 2009 +0300 2009-06-19 Daniel Marjamäki * src/checkother.h, test/testother.cpp: Fixed #420 (WarningOldStylePointerCast() needs a test case) 2009-06-19 Kimmo Varis * src/preprocessor.cpp, test/testpreprocessor.cpp: Revert "Fix ticket #417 (Crashes in Windows because of invalid char value)" This reverts commit 70db2562f498cd29a310dc88d2b47a232cd89690. See the ticket - the fix was not correct fix. 2009-06-19 Kimmo Varis * : commit d5d96d2535c6bcb0581e63818e0cbcf440e2d703 Merge: 12f3ac5 e8d1905 Author: Daniel Marjamäki Date: Thu Jun 18 23:10:16 2009 +0200 2009-06-19 Kimmo Varis * : commit 12f3ac5a2fd77472ed4848bd39dfb47f9f9097b9 Author: Daniel Marjamäki Date: Thu Jun 18 23:09:11 2009 +0200 2009-06-19 Kimmo Varis * src/preprocessor.cpp, test/testpreprocessor.cpp: Fix ticket #417 (Crashes in Windows because of invalid char value) 8-bit characters and UTF-8 characters are now converted to spaces. They can only appear in the code files in comments or string/char constants. So we cannot just ignore them as that would change length. 2009-06-19 Reijo Tomperi * src/tokenize.cpp, test/testsimplifytokens.cpp: Fix ticket #418 (delete a,b; not tokenized correctly) http://sourceforge.net/apps/trac/cppcheck/ticket/418 2009-06-18 Reijo Tomperi * src/checkother.cpp, test/testother.cpp: Fix ticket #413 (false positive: C-style pointer casting for pure virtual function) http://sourceforge.net/apps/trac/cppcheck/ticket/413 2009-06-18 Reijo Tomperi * gui/fileviewdialog.cpp, gui/fileviewdialog.h: Encoding changed from ISO* to UTF-8 2009-06-18 Reijo Tomperi * test/testtokenize.cpp: astyle fix 2009-06-18 Slava Semushin * src/tokenize.cpp, test/testtokenize.cpp: Fixed ticket #278 (variable id: references are not handled correctly) http://sourceforge.net/apps/trac/cppcheck/ticket/278 2009-06-18 Kimmo Varis * gui/applicationdialog.cpp: GUI: Use native file selection dialog to select viewer application. In Windows use *.exe filter since almost all executable applications have that extension so it makes no sense to show all files. 2009-06-18 Kimmo Varis * gui/mainwindow.cpp: GUI: Use native file selection dialog when selecting report file. 2009-06-17 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed a false positive (memory leak) This false positive was first discovered in the VLC sourcecode. The TestMemoryLeakInFunction::simple11 test case is a simplified test code of that code. 2009-06-17 Kimmo Varis * gui/mainwindow.cpp, gui/mainwindow.h: GUI: Use native dialogs in Windows for check file/directory selection. 2009-06-17 Reijo Tomperi * src/checkclass.cpp, test/testconstructors.cpp: Fix ticket #309 (false positive::is not assigned a value in 'A::operator=') http://sourceforge.net/apps/trac/cppcheck/ticket/309 2009-06-16 Daniel Marjamäki * src/checkmemoryleak.h, test/testmemleak.cpp: Created a new class for detecting leaks (forgetting to free struct members) 2009-06-16 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #131 (Regression: leak reported by 1.27 is not reported by 1.29) The leak will be reported as a definite bug again. Not just a possible bug. cppcheck don't know if the execution path is possible, but it knows that if the execution path is taken the memory leak will be certain. 2009-06-15 Daniel Marjamäki * src/checkmemoryleak.cpp, src/checkmemoryleak.h, test/testmemleak.cpp: Improved the "CheckMemoryLeak::functionReturnType" 2009-06-15 Reijo Tomperi * src/cppcheckexecutor.cpp, src/errorlogger.cpp, src/errorlogger.h: getXMLFooter() and getXMLHeader() functions added and taken into use 2009-06-15 Daniel Marjamäki * src/checkmemoryleak.cpp, src/checkmemoryleak.h, test/testmemleak.cpp: Fixed #264 (Memory Leak: alloc by assigning to a return value) The fix was inspired by the previous patch submitted by hoangtuansu 2009-06-15 Kimmo Varis * gui/mainwindow.cpp, gui/mainwindow.h: GUI: Refactor menu and toolbar creation to own methods. 2009-06-14 Reijo Tomperi * src/preprocessor.cpp, test/testpreprocessor.cpp: Fixed ticket #405 (#ifdef A and #if defined A should be handled as same configuration) http://sourceforge.net/apps/trac/cppcheck/ticket/405 2009-06-14 Reijo Tomperi * gui/mainwindow.cpp: astyle fix 2009-06-15 Slava Semushin * src/checkmemoryleak.cpp, src/tokenize.cpp, test/testmemleak.cpp, test/testtokenize.cpp: Fixed ticket #346 (adding a "const" token prevents detection of memory leak) http://sourceforge.net/apps/trac/cppcheck/ticket/346 2009-06-14 Vesa Pikki * gui/mainwindow.cpp: Made License and Authors dialogs a bit bigger. 2009-06-14 Daniel Marjamäki * src/token.cpp, src/tokenize.cpp, test/testsimplifytokens.cpp, test/testtokenize.cpp: Fixed #387 (Templates: template functions that return a pointer are not simplified correctly) * Fixed so that the tokenizer handle variable declarations better when the variable is assigned the return value of a template function * Fixed so that the simplifyTemplates detect that a template function is used when its return value is taken 2009-06-14 Kimmo Varis * gui/resultstree.cpp, gui/resultstree.h: GUI: Add new context menu items to copy filename/full path to clipboard. 2009-06-14 Kimmo Varis * : commit 801a241e0b6452ab773b9c9c769fa8b0c3fa775b Author: Kimmo Varis Date: Sun Jun 14 12:57:43 2009 +0300 2009-06-14 Daniel Marjamäki * : commit be52e573f3573af2497138719bb00d101ccef663 Author: Daniel Marjamäki Date: Sun Jun 14 11:28:25 2009 +0200 2009-06-14 Slava Semushin * src/token.cpp, src/token.h, src/tokenize.cpp: Token: introduce str(const std::string &) method. Get rid of useless std::string.c_str() calls. No functional change. 2009-06-14 Slava Semushin * src/tokenize.cpp, test/testtoken.cpp: Replace tok->previous()->previous() call to tok->tokAt(-2). Done by command: git grep -l 'previous()->previous()' | xargs sed -i 's|previous()->previous()|tokAt(-2)|' No functional change. 2009-06-14 Slava Semushin * src/checkmemoryleak.cpp: Replace tok->previous()->previous()->previous() call to tok->tokAt(-3). Done by command: git grep -l 'previous()->previous()->previous()' | xargs sed -i 's|previous()->previous()->previous()|tokAt(-3)|' No functional change. 2009-06-14 Slava Semushin * src/checkmemoryleak.cpp, src/tokenize.cpp, test/testtoken.cpp: Replace tok->next()->next() call to tok->tokAt(2). Done by command: git grep -l 'next()->next()' | xargs sed -i 's|next()->next()|tokAt(2)|' No functional change. 2009-06-14 Slava Semushin * src/checkmemoryleak.cpp: Replace tok->next()->next()->next() call to tok->tokAt(3). Done by command: git grep -l 'next()->next()->next(),' | xargs sed -i 's|next()->next()->next()|tokAt(3)|' No functional change. 2009-06-14 Slava Semushin * src/checkmemoryleak.cpp: Replace tok->next()->next()->next()->next() call to tok->tokAt(4). Done by command: git grep -l 'next()->next()->next()->next(),' | xargs sed -i 's|next()->next()->next()->next()|tokAt(4)|' No functional change. 2009-06-14 Slava Semushin * test/testbufferoverrun.cpp, test/testconstructors.cpp, test/testmemleak.cpp: Embed errout.str() into ASSERT_EQUALS() call. Get rid of useless variables. No functional change. 2009-06-14 Daniel Marjamäki * src/checkunusedfunctions.cpp, test/testunusedfunctions.cpp: Fixed ticket #373 (False unused functions) Skip template functions when checking for unused functions 2009-06-14 Slava Semushin * src/preprocessor.cpp, test/testpreprocessor.cpp: Fixed ticket #403 (false positive::Array index out of range) http://sourceforge.net/apps/trac/cppcheck/ticket/403 2009-06-14 Kimmo Varis * src/cppcheck.rc: Fix the copyright text in Windows executable. 2009-06-14 Kimmo Varis * gui/gui.qrc: GUI: Remove the SVG icon from the resources file as it is not used. 2009-06-13 Kimmo Varis * gui/gui.pro: GUI: Move Windows-specific options and files to own scope in project file. 2009-06-13 Kimmo Varis * gui/cppcheck-gui.rc: GUI: Include Windows resources from resource file having version info. 2009-06-13 Kimmo Varis * gui/gui.pro: GUI: Add common.h to the project. 2009-06-13 Reijo Tomperi * src/tokenize.cpp: Fixed ticket #398 (valgrind shows error when running testrunner) http://172.29.29.21/apps/trac/cppcheck/ticket/398 2009-06-12 Reijo Tomperi * gui/mainwindow.cpp, src/errorlogger.cpp: Fix ticket #397 (xml output doesn't encode " and & -characters as it should) http://sourceforge.net/apps/trac/cppcheck/ticket/397 2009-06-12 Vesa Pikki * gui/mainwindow.cpp: Force extension to the file and check save type by filter and not by filename. 2009-06-12 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed ticket #367 (Deallocating a deallocated pointer false positive when va_list used) The overall matching of functions when calls are made were improved. 2009-06-12 Reijo Tomperi * src/cppcheck.cpp: astyle fix 2009-06-12 Daniel Marjamäki * src/checkother.cpp, test/testother.cpp: Fixed ticket #374 (False positive: The scope of variable can be limited) A few refactorings and fixes were made 2009-06-12 Slava Semushin * src/tokenize.cpp, src/tokenize.h, test/testtokenize.cpp: Fixed ticket #392 (false positive and wrong allocation and deallocation not detected) http://sourceforge.net/apps/trac/cppcheck/ticket/392 2009-06-12 Slava Semushin * src/tokenize.cpp: Tokenizer::createLinks(): correct comment. No code change. 2009-06-12 Daniel Marjamäki * src/checkautovariables.h: doc: minor update. The [BR] is not working as I thought 2009-06-12 Daniel Marjamäki * src/check.h, src/checkautovariables.h, src/checkbufferoverrun.h, src/checkclass.h, src/checkdangerousfunctions.h, src/checkheaders.h, src/checkmemoryleak.h, src/checkother.h, src/checksecurity.h, src/checkstl.h, src/cppcheck.cpp: doc: generating wiki documentation 2009-06-12 Slava Semushin * src/tokenize.cpp, src/tokenize.h, test/testtokenize.cpp: Fixed ticket #390 (wrong allocation and deallocation not detected) http://sourceforge.net/apps/trac/cppcheck/ticket/390 2009-06-12 Daniel Marjamäki * src/check.h, src/checkautovariables.h, src/checkbufferoverrun.h, src/checkclass.h, src/checkdangerousfunctions.h, src/checkmemoryleak.h, src/checkother.h, src/checksecurity.h, src/checkstl.h: added a classInfo function for each check class 2009-06-11 Reijo Tomperi * src/token.cpp, src/token.h, src/tokenize.cpp, src/tokenize.h, test/testsimplifytokens.cpp: Fix ticket #386 (False positive (memory leak) with comma) http://apps.sourceforge.net/trac/cppcheck/ticket/386 2009-06-10 Daniel Marjamäki * src/tokenize.cpp, test/testsimplifytokens.cpp: Fixed ticket #377 (False positive with "char a[]") Updated the tokenizer so "char a[]" is tokenized into "char *a" 2009-06-09 Reijo Tomperi * src/errorlogger.cpp, src/errorlogger.h: Partial fix for ticket #380 (Error reporting on unused functions) Returning hard coded line number 1 and assumed that severity should be "style" https://apps.sourceforge.net/trac/cppcheck/ticket/380 2009-06-09 Reijo Tomperi * cppcheck.cbp: codeblocks project file updated 2009-06-10 Slava Semushin * src/checkunusedfunctions.h: src/checkunusedfunctions.h: assign default values in initializer list. No functional change. 2009-06-09 Reijo Tomperi * gui/resultstree.cpp: Fix compile error in GUI 2009-06-10 Slava Semushin * src/cppcheck.cpp: Don't print message about missing source files when --errorlist used. Also exit with zero status in this case. Fix for 5193a36a6a2490f199de41c430482586557d9894 commit. 2009-06-10 Slava Semushin * : commit d9f2dd385b3f2ab16b45a2ef084fe7447fa04659 Author: Slava Semushin Date: Wed Jun 10 01:52:42 2009 +0700 2009-06-09 Daniel Marjamäki * src/checkautovariables.cpp, src/checkautovariables.h, src/checkother.cpp, src/checkother.h, test/testautovariables.cpp, test/testother.cpp: Refactoring: Moved CheckOther::returnPointerToLocalVariable to CheckAutoVariables 2009-06-09 Kimmo Varis * gui/resultstree.cpp: GUI: One messagebox was missing "this" parameter. 2009-06-09 Kimmo Varis * testrunner.vcproj: Update VS testrunner project. 2009-06-09 Vesa Pikki * gui/resultsview.cpp: Astyle formatting. 2009-06-09 Vesa Pikki * gui/mainwindow.cpp, gui/resultsview.cpp, gui/resultsview.h: Force progressbar to be visible when checking starts. 2009-06-09 Vesa Pikki * gui/applicationdialog.cpp, gui/mainwindow.cpp, gui/resultstree.cpp, gui/resultstree.h, gui/resultsview.cpp, gui/resultsview.h, gui/settingsdialog.cpp, gui/settingsdialog.h: Added messagebox to inform user about not found/non visible errors. 2009-06-09 Vesa Pikki * : commit 814cd37c905e9016aaf45f3189d8401dfbf166af Author: Vesa Pikki Date: Tue Jun 9 09:30:28 2009 +0300 2009-06-09 Kimmo Varis * gui/readme.txt: GUI: Add readme file with instructions for running and compiling the GUI. 2009-06-08 Daniel Marjamäki * src/checkmemoryleak.h: Doxygen: Added a few simple doxygen comments for the leaks checking 2009-06-08 Daniel Marjamäki * src/checkmemoryleak.cpp, src/checkmemoryleak.h, test/testmemleak.cpp: Refactoring: Split up the CheckMemoryLeak into CheckMemoryLeakInFunction and CheckMemoryLeakInClass 2009-06-08 Daniel Marjamäki * Makefile, src/checkmemoryleak.cpp, src/checkmemoryleak.h, test/testmemleak.cpp: Refactoring: Renaming the CheckMemoryLeakClass to CheckMemoryLeak. Deleted testmemleakmp 2009-06-08 Daniel Marjamäki * test/testmemleakmp.cpp: deleted the testmemleakmp file 2009-06-08 Kimmo Varis * gui/settingsdialog.cpp: GUI: If application list contains applications select the first by default. 2009-06-08 Kimmo Varis * gui/resultstree.cpp: GUI: Show error message when the viewer application cannot be started. 2009-06-08 Kimmo Varis * gui/applicationdialog.cpp: Fix #378 (GUI doesn't start application if path contains spaces) In Windows we must surround paths including spaces with quotation marks. This patch fixes application path when it is read from Browse-dialog. 2009-06-08 Kimmo Varis * gui/applicationdialog.cpp: GUI: Show application path with native separators. 2009-06-08 Kimmo Varis * cppcheck.vcproj: Update VS project file after files were renamed. 2009-06-08 Kimmo varis * gui/gui.pro: GUI: Update project file after file renaming. 2009-06-07 Daniel Marjamäki * Makefile, src/checkfunctionusage.cpp, src/checkfunctionusage.h, src/checkunusedfunctions.cpp, src/checkunusedfunctions.h, src/cppcheck.cpp, src/cppcheck.h, test/testfunctionusage.cpp, test/testunusedfunctions.cpp: Refactoring: Renamed CheckFunctionUsage to CheckUnusedFunctions 2009-06-07 Daniel Marjamäki * src/checkautovariables.h, src/checkbufferoverrun.h, src/checkclass.h, src/checkdangerousfunctions.h, src/checkmemoryleak.h, src/checkother.h, src/checksecurity.h, src/checkstl.h: Added headers to the "--errorlist" output 2009-06-07 Kimmo Varis * : commit 8375d1f1aeef4273a73bd030357f373b2d360cae Author: Kimmo Varis Date: Sun Jun 7 14:46:34 2009 +0300 2009-06-07 Daniel Marjamäki * Changelog: Added a Changelog file that is generated automaticly by git2cl 2009-06-07 Daniel Marjamäki * createrelease, src/cppcheck.cpp, win_installer/cppcheck.iss: Updated version to 1.33 2009-06-07 Reijo Tomperi * src/checkmemoryleak.cpp, test/testmemleak.cpp: Fix ticket #371 (Resource leak when exit() and if() uses together) http://apps.sourceforge.net/trac/cppcheck/ticket/371 2009-06-06 Daniel Marjamäki * src/checkautovariables.cpp, test/testautovariables.cpp: Fix #370 (Assign auto variable to parameter false positive) 2009-06-06 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: Fix #368 (Leak detected when allocated memory assigned to member of structure which returned from function) The return value of strcpy wasn't handled very well 2009-06-06 Daniel Marjamäki * test/testfunctionusage.cpp: Refactoring: Simple code cleanup 2009-06-06 Kimmo Varis * : commit 3142a73fd99462a3c88d99fe31fdb6757fa65e80 Author: Kimmo Varis Date: Sat Jun 6 13:07:20 2009 +0300 2009-06-06 Kimmo Varis * gui/applicationdialog.cpp, gui/applicationdialog.h, gui/settingsdialog.cpp: GUI: Make Settings-dialog a parent of Add Application-dialog. 2009-06-06 Kimmo Varis * gui/mainwindow.cpp, gui/settingsdialog.cpp, gui/settingsdialog.h: GUI: Make mainwindow parent of Settings-dialog. 2009-06-06 Kimmo Varis * gui/applicationdialog.cpp: GUI: Astyle fix. 2009-06-06 Daniel Marjamäki * src/tokenize.cpp, src/tokenize.h, test/testtokenize.cpp: Fix #153 (Unsigned divide) The "unsigned i" variable declaration wasn't handled well. So I added an "int" token. 2009-06-06 Kimmo Varis * gui/applicationdialog.cpp: GUI: Convert native path to internal presentation. If application path is edited by hand there can be native Windows path separators. Unify path separators to internal presentation before storing the path. 2009-06-06 Kimmo Varis * gui/main.cpp: GUI: Fix handling UTF-8 strings in sources. Our source files are UTF-8 and as such contain some chars outside 7-bit ASCII. To handle UTF-8 correctly we must set text codec for QT to UTF-8. 2009-06-06 Reijo Tomperi * src/tokenize.cpp, src/tokenize.h, test/testother.cpp: Fix ticket #364 (false positive:: division by zero) http://apps.sourceforge.net/trac/cppcheck/ticket/364 2009-06-05 Reijo Tomperi * cppcheck.cbp, gui/aboutdialog.cpp, gui/aboutdialog.h: UTF-8 fixes to GUI files aboutdialog.* added to codeblocks projectfile 2009-06-05 Reijo Tomperi * src/preprocessor.cpp, test/testpreprocessor.cpp: Fix ticket #353 (No pair for character (').) http://apps.sourceforge.net/trac/cppcheck/ticket/353 2009-06-05 Daniel Marjamäki * src/check.h, src/cppcheck.cpp: Created an undocumented command line flag "--errorlist" that prints all messages 2009-06-05 Daniel Marjamäki * src/checkfunctionusage.cpp, test/testfunctionusage.cpp: Fix #359 (Incorrect unused function) 2009-06-05 Kimmo Varis * gui/aboutdialog.cpp: GUI: Fix warning from About-dialog layout. 2009-06-05 Kimmo Varis * : commit aaba5735ed6dd93b5fa74a79be65975106c96e45 Author: Kimmo Varis Date: Fri Jun 5 10:37:50 2009 +0300 2009-06-05 Kimmo Varis * win_installer/readme.txt: Update Windows installer readme for including QT GUI and other installer improvements. 2009-06-05 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed #354 (false positive: memory leak) 2009-06-05 Slava Semushin * src/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed ticket #360 (Teach about new(std::nothrow) form) http://apps.sourceforge.net/trac/cppcheck/ticket/360 2009-06-05 Slava Semushin * src/tokenize.cpp, test/testbufferoverrun.cpp: Fixed ticket #329 (snprintf size is out of bounds when two variables in one scope with similar names) FIXME: Because it's fix for simplifyTokenList() test should be moved to test/testsimplifytokens.cpp file. http://apps.sourceforge.net/trac/cppcheck/ticket/329 2009-06-05 Slava Semushin * test/testbufferoverrun.cpp, test/testcharvar.cpp, test/testclass.cpp, test/testconstructors.cpp, test/testdivision.cpp, test/testfunctionusage.cpp, test/testincompletestatement.cpp, test/testmemleak.cpp, test/testother.cpp, test/teststl.cpp, test/testtokenize.cpp, test/testunusedprivfunc.cpp, test/testunusedvar.cpp: Strip redundant std::string usage from tests. Second round: handle empty strings. Done by command: git grep -l ASSERT_EQUALS | xargs sed -i 's|ASSERT_EQUALS(std::string(\(".*"\)),|ASSERT_EQUALS(\1,|' Should be no functional change. 2009-06-05 Slava Semushin * src/checkclass.cpp, test/testclass.cpp: Fixed ticket #358 (Local typedef flagged as uninitialized member) http://apps.sourceforge.net/trac/cppcheck/ticket/358 2009-06-04 Kimmo Varis * gui/resultstree.cpp: GUI: Enable sorting in results view. 2009-06-04 Kimmo Varis * gui/settingsdialog.cpp: GUI: Improve Settings-dialog layout. 2009-06-04 Kimmo Varis * gui/mainwindow.cpp, gui/mainwindow.h, gui/threadhandler.cpp, gui/threadhandler.h: GUI: Prevent exiting the application while checking. 2009-06-04 Kimmo Varis * gui/aboutdialog.cpp: GUI: Add program icon to the About-dialog. 2009-06-04 Kimmo Varis * gui/aboutdialog.cpp, gui/aboutdialog.h, gui/gui.pro, gui/mainwindow.cpp: GUI: Add About-dialog. Replace messagebox containing about-text with dialog. About-dialog must contain copyright information. 2009-06-04 Kimmo Varis * gui/mainwindow.cpp: Remove some empty lines. 2009-06-04 Kimmo Varis * : commit a74faf334e2737c90f7f90e82b1be8d53a9ef7ee Author: Kimmo Varis Date: Thu Jun 4 12:38:08 2009 +0300 2009-06-03 Reijo Tomperi * src/checkmemoryleak.cpp, test/testmemleak.cpp: Fix ticket #352 (Memory leaks: Missed memory leak when "--all" is not given) http://apps.sourceforge.net/trac/cppcheck/ticket/352 Detect memory leaks without --all when there is "alloc ; assign callfunc ; 2009-06-03 Reijo Tomperi * src/tokenize.cpp, test/testtokenize.cpp: Fix ticket #351 (false positive::resource leak) http://apps.sourceforge.net/trac/cppcheck/ticket/351 2009-06-03 Vesa Pikki * gui/resultstree.h: Added a missing include. 2009-06-03 Vesa Pikki * gui/mainwindow.cpp, gui/mainwindow.h, gui/resultstree.cpp, gui/resultstree.h, gui/resultsview.cpp, gui/resultsview.h, gui/settingsdialog.cpp, gui/settingsdialog.h, gui/threadhandler.cpp, gui/threadresult.cpp, gui/threadresult.h: Added the initial version of saving results to a file. 2009-06-02 Reijo Tomperi * gui/applicationdialog.h, gui/applicationlist.h, gui/common.h, gui/settingsdialog.h, src/mathlib.cpp, src/mathlib.h: Changed EOL character to LF in a few files. 2009-06-02 Reijo Tomperi * gui/checkthread.cpp: astyle fix 2009-06-02 Daniel Marjamäki * src/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #350 (False positive: Array index out of bounds) 2009-06-02 Kimmo Varis * doxyfile: Add GUI code to doxygen output. 2009-06-02 Kimmo Varis * gui/checkthread.cpp, gui/checkthread.h, gui/mainwindow.cpp, gui/threadhandler.cpp: GUI: Implement stopping the compare. Threads must be exited from check cleanly even though it takes small amount of time. Just terminating thread can have unpredictable side-effects (even weird crashes). 2009-06-02 Kimmo Varis * gui/threadresult.h: Fix mixed EOL style. 2009-06-02 Kimmo Varis * gui/mainwindow.cpp, gui/mainwindow.h, gui/resultsview.cpp, gui/resultsview.h: GUI: Add Collapse/Expand all -items to View-menu. 2009-06-02 Kimmo Varis * gui/mainwindow.h: Fix mixed EOL style. 2009-06-02 Kimmo Varis * gui/resultstree.h: Fix mixed EOL style. 2009-06-02 Kimmo Varis * gui/resultsview.h: Fix mixed EOL style. 2009-06-02 Kimmo Varis * gui/resultstree.cpp: GUI: Include result tree icons to resource (and executable). 2009-06-01 Daniel Marjamäki * src/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed #339 (Buffer overrun not detected with pointer arrays) http://apps.sourceforge.net/trac/cppcheck/ticket/339 2009-06-01 Slava Semushin * src/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed ticket #349 (Add detection for resource leaks after tmpfile() usage) https://apps.sourceforge.net/trac/cppcheck/ticket/349 2009-06-01 Slava Semushin * src/tokenize.cpp, test/testsimplifytokens.cpp: Fixed ticket #348 (Simplify sizeof for pointers) https://apps.sourceforge.net/trac/cppcheck/ticket/348 2009-06-01 Slava Semushin * src/tokenize.cpp: Tokenizer::simplifyTokenList: use SizeOfType(). No functional change. 2009-06-01 Slava Semushin * src/tokenize.cpp: Tokenizer::simplifyTokenList: reduce indent. No functional change. 2009-06-01 Slava Semushin * src/tokenize.cpp: Tokenizer::simplifyTokenList: some improvements. Corrections for 2de4c516e9e5e3dd9590379b0e980c9fc484db89 commit: - declare variable near their usage - set right position of next token 2009-06-01 Slava Semushin * test/testautovariables.cpp, test/testbufferoverrun.cpp, test/testcharvar.cpp, test/testclass.cpp, test/testconstructors.cpp, test/testdangerousfunctions.cpp, test/testdivision.cpp, test/testfilelister.cpp, test/testincompletestatement.cpp, test/testmathlib.cpp, test/testmemleak.cpp, test/testother.cpp, test/testredundantif.cpp, test/testsimplifytokens.cpp, test/teststl.cpp, test/testtokenize.cpp, test/testunusedprivfunc.cpp: Strip redundant std::string usage from tests. Done by command: git grep -l ASSERT_EQUALS | xargs sed -i 's|ASSERT_EQUALS(std::string(\(".\+"\)),|ASSERT_EQUALS(\1,|' Should be no functional change. 2009-05-31 Reijo Tomperi * src/tokenize.cpp, test/testsimplifytokens.cpp: Fixed ticket #338 (Simplify sizeof for pointer arrays) by patch submitted by php-coderrr http://apps.sourceforge.net/trac/cppcheck/ticket/338 2009-06-01 Slava Semushin * src/tokenize.cpp: src/tokenize.cpp(unwantedWords): propagate const modifier. No functional change. 2009-05-31 Daniel Marjamäki * src/tokenize.cpp, test/testtokenize.cpp: Variable Id: structs must not have variable id 2009-05-31 Slava Semushin * : commit fb0c217c3e4103219737a1e20e68e95b05ee82f3 Author: Slava Semushin Date: Sun May 31 20:48:40 2009 +0700 2009-05-31 Reijo Tomperi * src/tokenize.cpp, test/testtokenize.cpp: Fix ticket #344 (Tokenizer crash in Windows) http://apps.sourceforge.net/trac/cppcheck/ticket/344 2009-05-31 Daniel Marjamäki * src/tokenize.cpp, src/tokenize.h, test/testsimplifytokens.cpp: Fixed ticket #345 ('!' and 'not' tokens interpreted differently even though they mean the same) 2009-05-31 Daniel Marjamäki * src/errorlogger.cpp, src/errorlogger.h, test/testcppcheck.cpp: Fix ticket #318 ('..' in include will cause conflicting slashes in messages) 2009-05-31 Daniel Marjamäki * src/checkfunctionusage.cpp, test/testfunctionusage.cpp: Fix for #341 (Functions passed as pointer not detected as used) 2009-05-31 Daniel Marjamäki * src/cppcheck.cpp: cppcheck: removed the 'this may take several minutes' when checking unused functions. The check is much faster nowadays 2009-05-30 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: Memory leaks: calling function that deallocates the memory and allocates new memory https://apps.sourceforge.net/trac/cppcheck/ticket/336 2009-05-30 Kimmo Varis * gui/gui.pro: GUI: Add manifest for Windows build. 2009-05-30 Kimmo Varis * gui/gui.pro, src/filelister.cpp: GUI: Fix building with MinGW. Add shlwapi library to qmake project file. Use WCHAR instead of wchar_t. 2009-05-30 Kimmo Varis * src/filelister.cpp: Make GUI work in Windows compiled with VS. Since GUI is QT project it is also Unicode project. And other cppcheck code is ANSI code. So we must convert data between Unicode and ANSI when calling WinAPI functions. WinAPI functions want Unicode strings but e.g. std::string contains ANSI strings. 2009-05-30 Kimmo Varis * .gitignore: Add more generated GUI files to gitignore. 2009-05-30 Daniel Marjamäki * : commit d33139b2c781d1c4eda1b8ab56212aef5fb1cf42 Author: Daniel Marjamäki Date: Sat May 30 14:24:55 2009 +0200 2009-05-30 Kimmo Varis * src/filelister.cpp: Windows: Fix FileLister to send full paths instead of only filenames. 2009-05-30 Kimmo Varis * : commit b2d50ca512ca136732e69bb4e7d9641fd0d168e1 Author: Kimmo Varis Date: Sat May 30 10:32:33 2009 +0300 2009-05-30 Reijo Tomperi * AUTHORS, cppcheck.cbp, gui/applicationdialog.cpp, gui/applicationdialog.h, gui/applicationlist.cpp, gui/applicationlist.h, gui/checkthread.cpp, gui/checkthread.h, gui/common.h, gui/main.cpp, gui/mainwindow.cpp, gui/mainwindow.h, gui/resultstree.cpp, gui/resultstree.h, gui/resultsview.cpp, gui/resultsview.h, gui/settingsdialog.cpp, gui/settingsdialog.h, gui/threadhandler.cpp, gui/threadhandler.h, gui/threadresult.cpp, gui/threadresult.h, src/check.h, src/checkautovariables.cpp, src/checkautovariables.h, src/checkbufferoverrun.cpp, src/checkbufferoverrun.h, src/checkclass.cpp, src/checkclass.h, src/checkdangerousfunctions.cpp, src/checkdangerousfunctions.h, src/checkfunctionusage.cpp, src/checkfunctionusage.h, src/checkheaders.cpp, src/checkheaders.h, src/checkmemoryleak.cpp, src/checkmemoryleak.h, src/checkother.cpp, src/checkother.h, src/checksecurity.cpp, src/checksecurity.h, src/checkstl.cpp, src/checkstl.h, src/cppcheck.cpp, src/cppcheck.h, src/cppcheckexecutor.cpp, src/cppcheckexecutor.h, src/errorlogger.cpp, src/errorlogger.h, src/filelister.cpp, src/filelister.h, src/main.cpp, src/mathlib.cpp, src/mathlib.h, src/preprocessor.cpp, src/preprocessor.h, src/settings.cpp, src/settings.h, src/threadexecutor.cpp, src/threadexecutor.h, src/token.cpp, src/token.h, src/tokenize.cpp, src/tokenize.h, test/testautovariables.cpp, test/testbufferoverrun.cpp, test/testcharvar.cpp, test/testclass.cpp, test/testconstructors.cpp, test/testcppcheck.cpp, test/testdangerousfunctions.cpp, test/testdivision.cpp, test/testfilelister.cpp, test/testfunctionusage.cpp, test/testincompletestatement.cpp, test/testmathlib.cpp, test/testmemleak.cpp, test/testmemleakmp.cpp, test/testother.cpp, test/testpreprocessor.cpp, test/testredundantif.cpp, test/testrunner.cpp, test/testsecurity.cpp, test/testsimplifytokens.cpp, test/teststl.cpp, test/testsuite.cpp, test/testsuite.h, test/testtoken.cpp, test/testtokenize.cpp, test/testunusedprivfunc.cpp, test/testunusedvar.cpp, tools/dmake.cpp, tools/errmsg.cpp: Fix ticket #325 (Replace developer names in source files with AUTHORS file) http://apps.sourceforge.net/trac/cppcheck/ticket/325 2009-05-30 Reijo Tomperi * src/tokenize.cpp, test/testtokenize.cpp: Fix ticket #342 (Simplify "if( (true) == true )") http://apps.sourceforge.net/trac/cppcheck/ticket/342 2009-05-28 Reijo Tomperi * test/testtokenize.cpp: Changed expected result for test case TestTokenizer::removeParantheses3 to simplify it more 2009-05-28 Reijo Tomperi * src/tokenize.cpp, test/testtokenize.cpp: Fix bug related to ticket #330, cppcheck hanged with some files containing "((" http://apps.sourceforge.net/trac/cppcheck/ticket/330 2009-05-28 Daniel Marjamäki * src/tokenize.cpp, test/testtokenize.cpp: Tokenizer: Simplifying redundant parantheses http://apps.sourceforge.net/trac/cppcheck/ticket/330 2009-05-28 Kimmo Varis * gui/threadhandler.h: Fix EOL style (had Unix/DOS) mixed style. 2009-05-28 Kimmo Varis * gui/applicationdialog.cpp: GUI: Fix typo in Add New Application -dialog. 2009-05-28 Kimmo Varis * gui/mainwindow.cpp: GUI: Add separator in View-menu before check/uncheck all. 2009-05-28 Kimmo Varis * .gitignore: Add GUI build folders to gitignore. 2009-05-28 Kimmo Varis * gui/cppcheck-gui.rc, gui/gui.pro: GUI: Add application icon for Windows. 2009-05-28 Kimmo Varis * gui/mainwindow.cpp: GUI: Use PNG icon instead of SVG icon for Check directory -action. 2009-05-28 Kimmo Varis * gui/gui.pro, gui/gui.qrc, gui/main.cpp, gui/mainwindow.cpp, gui/resultstree.cpp: Add icon files to resource file. Having resource files compiled in the executable makes installing the application easier (especially on Windows). 2009-05-28 Kimmo Varis * src/filelister.cpp: Fix building GUI with Visual Studio. 2009-05-27 Reijo Tomperi * src/tokenize.cpp, test/testtokenize.cpp: Fix ticket #319 (Function names are tagged as variables) http://apps.sourceforge.net/trac/cppcheck/ticket/319 2009-05-27 Reijo Tomperi * test/testmemleak.cpp, test/testtokenize.cpp: Added test case TestMemleak::dealloc_and_alloc_in_func 2009-05-27 Daniel Marjamäki * src/tokenize.cpp, test/testtokenize.cpp: Fix ticket 330 (found memory leak when __builtin_expect uses) 2009-05-27 Daniel Marjamäki * src/tokenize.cpp, test/testtokenize.cpp: Fix ticket 308 (cppcheck msg:: invalid number of ((). Cant process file) 2009-05-27 Daniel Marjamäki * : commit 650d58e3de2a9487edc36e97fb55cf0ebefb9f77 Author: Daniel Marjamäki Date: Wed May 27 19:38:26 2009 +0200 2009-05-27 Kimmo Varis * win_installer/cppcheck.iss, win_installer/readme.txt: Installer: Add docoments to Start-menu. Add AUTHORS.txt, COPYING.txt and readme.txt to the Start-menu. Files are opened by default .txt file viewer which is usually Notepad. 2009-05-27 Kimmo Varis * win_installer/cppcheck.iss: Installer: Add .txt extension to text files. Windows does not know how to open files without extension in name so add .txt extension when installing for AUTHORS and COPYING. 2009-05-27 Kimmo Varis * win_installer/cppcheck.iss: Installer: Install AUTHORS-file. AUTHORS is good to install as it tells who are working with cppcheck. 2009-05-27 Kimmo Varis * win_installer/cppcheck.iss: Installer: Add large installer bitmap. Adding large installer image which is shown as "sidebar" of installer's welcome window. The bitmap is combination of Inno Setup standard image and cppcheck icon. 2009-05-27 Kimmo Varis * win_installer/readme.txt: Installer: Fix output folder name in installer readme. 2009-05-27 Kimmo Varis * win_installer/cppcheck.iss: Installer: Add small image shown in top of the installer. 2009-05-26 Reijo Tomperi * src/token.cpp, test/testtokenize.cpp: Fix ticket #334 (segmentation fault on boost 1.39.0) http://apps.sourceforge.net/trac/cppcheck/ticket/334 2009-05-26 Vesa Pikki * gui/mainwindow.cpp, gui/resultstree.cpp: Astyle formatting. 2009-05-26 Vesa Pikki * AUTHORS, gui/mainwindow.cpp, gui/mainwindow.h, gui/resultstree.cpp, gui/resultstree.h: Added 22x22 icons from http://tango.freedesktop.org. Also added icon source to AUTHORS file. Also added toolbar with the default actions. Added icons to result files and errors. 2009-05-25 Daniel Marjamäki * gui/icon.svg, gui/main.cpp, logo.svg: renamed the logo files to icon instead 2009-05-25 Daniel Marjamäki * gui/main.cpp, logo.svg: logo: modified the logo so it looks better when used as mainicon for the gui program 2009-05-25 Vesa Pikki * gui/main.cpp: GUI now uses Cppcheck's logo. 2009-05-25 Daniel Marjamäki * logo.svg: Added a temporary logotype for cppcheck 2009-05-25 Daniel Marjamäki * src/tokenize.cpp, test/testsimplifytokens.cpp, test/testtokenize.cpp: Fixed ticket #333 (tokenizer: incorrect removal of decrement/increment) 2009-05-25 Daniel Marjamäki * src/tokenize.cpp, test/testsimplifytokens.cpp: Fix ticket #317 (pre-increment causes style false positive) 2009-05-25 Daniel Marjamäki * src/tokenize.cpp, test/testsimplifytokens.cpp: Fix ticket #317 (pre-increment causes style false positive) 2009-05-24 Reijo Tomperi * src/preprocessor.cpp, test/testpreprocessor.cpp: Fix ticket #332 (White space between macro name and '(' causes macro simplification to fail) http://apps.sourceforge.net/trac/cppcheck/ticket/332 2009-05-24 Vesa Pikki * : commit d9c36eada2cdc5f6c2e9b8f92bd319789fc588eb Author: Vesa Pikki Date: Sun May 24 12:09:37 2009 +0300 2009-05-24 Vesa Pikki * gui/applicationlist.cpp, gui/applicationlist.h, gui/settingsdialog.cpp, gui/settingsdialog.h: User can now undo changes to application list by clicking cancel. 2009-05-24 Vesa Pikki * gui/applicationdialog.cpp, gui/applicationlist.cpp, gui/mainwindow.cpp, gui/settingsdialog.cpp: Astyle formatting. 2009-05-24 Vesa Pikki * gui/applicationdialog.cpp, gui/applicationdialog.h, gui/applicationlist.cpp, gui/checkthread.cpp, gui/checkthread.h, gui/mainwindow.cpp, gui/mainwindow.h, gui/resultstree.cpp, gui/settingsdialog.cpp: Fixed issues pointed out by Reijo. The number of threads is now atleast 1. Added a very simple about dialog with version number and license. Replaced all CppCheck's with Cppcheck. Renamed "show more errors" to "show possible false positives" in the menu. User created application now has to have a name and a path. 2009-05-24 Slava Semushin * src/checkmemoryleak.cpp: src/checkmemoryleak.cpp(GetAllocationType): simplify condition a bit. Replace two Token::simpleMatch() calls to one Token::Match(). Correction for my previous (2654a4aa54457f71b5dbcdc43ee714a054e65069) commit. No functional change. 2009-05-22 Slava Semushin * src/checkmemoryleak.cpp, src/checkmemoryleak.h, test/testmemleak.cpp: Added support to search resource leaks after opendir()/fdopendir() usage. 2009-05-20 Slava Semushin * src/checkother.cpp, test/testother.cpp: Part of fix for ticket #284 (style check: redundant condition improvement) Fixed case "if (p) delete [] p;" and also added test case for it. http://apps.sourceforge.net/trac/cppcheck/ticket/284 2009-05-20 Slava Semushin * src/checkother.cpp, test/testother.cpp: Part of fix for ticket #284 (style check: redundant condition improvement) Fixed case "if (p != NULL) delete p;" and also added test case for it. http://apps.sourceforge.net/trac/cppcheck/ticket/284 2009-05-24 Slava Semushin * src/checkmemoryleak.cpp: src/checkmemoryleak.cpp(GetDeallocationType): removed brackets. No functional change. 2009-05-23 Vesa Pikki * gui/applicationdialog.cpp, gui/applicationdialog.h, gui/applicationlist.h, gui/common.h, gui/mainwindow.h, gui/resultstree.cpp, gui/resultstree.h, gui/resultsview.h, gui/settingsdialog.h, gui/threadhandler.h, gui/threadresult.h: Added more comments to class members and methods. 2009-05-23 Vesa Pikki * gui/applicationlist.cpp, gui/applicationlist.h, gui/mainwindow.cpp, gui/mainwindow.h, gui/resultstree.cpp, gui/resultstree.h, gui/settingsdialog.cpp, gui/settingsdialog.h: Now starts the default application by double clicking the error. 2009-05-23 Vesa Pikki * : commit 70c32c10e4e3b69562d00ffc2922f46f7c280ee8 Author: Vesa Pikki Date: Sat May 23 14:26:04 2009 +0300 2009-05-23 Slava Semushin * src/checkmemoryleak.cpp, test/testmemleak.cpp: Added 17 functions which work with FILE structure to white list. Inspired by previous commit. 2009-05-23 Vesa Pikki * gui/applicationdialog.cpp, gui/applicationdialog.h, gui/applicationlist.cpp, gui/applicationlist.h, gui/gui.pro, gui/mainwindow.cpp, gui/mainwindow.h, gui/settingsdialog.cpp, gui/settingsdialog.h: Added the ability to add/remove/modify applications to open errors with. Only the list of applications added, errors cant be opened yet. 2009-05-23 Slava Semushin * src/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed ticket #327 (File descriptor leak not detected when feof() used) Thanks to aggro80@ for help. http://apps.sourceforge.net/trac/cppcheck/ticket/327 2009-05-23 Vesa Pikki * gui/resultstree.cpp, gui/resultstree.h: When adding a new error, only hides it and doesn't check all errors. 2009-05-23 Vesa Pikki * gui/common.h, gui/mainwindow.cpp, gui/mainwindow.h, gui/resultstree.cpp, gui/resultstree.h, gui/resultsview.cpp, gui/resultsview.h, gui/test.cpp, gui/threadhandler.cpp, gui/threadresult.cpp, gui/threadresult.h: Results tree now uses only QStandardItemModel for data storage. Items are now hidden from the tree and the tree is not recreated everytime it is refreshed. Also added test.cpp as a sample data for GUI testing. Added Check all and uncheck all buttons to menu to show/hide all errors more easily. 2009-05-23 Vesa Pikki * gui/gui.pro: Updated new cppcheck files to project file. 2009-05-23 Reijo Tomperi * src/preprocessor.cpp, src/preprocessor.h, test/testpreprocessor.cpp: Fix ticket #304 (#include should be searched from paths given with -I parameter.) http://apps.sourceforge.net/trac/cppcheck/ticket/304 Note that the ticket is same as with previous commit, but task description was changed a little. 2009-05-22 Reijo Tomperi * src/preprocessor.cpp, src/preprocessor.h, test/testpreprocessor.cpp: Fix ticket #304 (#include should be parsed like #include "file.h" is being parsed) http://apps.sourceforge.net/trac/cppcheck/ticket/304 2009-05-22 Reijo Tomperi * src/tokenize.cpp, test/testmemleak.cpp: Fix ticket #326 (Reported memory leak when pointer returned by assign to function's parameter) http://apps.sourceforge.net/trac/cppcheck/ticket/326 2009-05-22 Slava Semushin * src/checkfunctionusage.cpp, src/checkmemoryleak.cpp, src/tokenize.cpp: Replaced two Token::simpleMatch() calls to one Token::Match(). Suggested by hyd_danmar in ticket http://apps.sourceforge.net/trac/cppcheck/ticket/323 No functional change. 2009-05-22 Slava Semushin * src/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed ticket #324 (Teach about fcloseall() function) http://apps.sourceforge.net/trac/cppcheck/ticket/324 2009-05-22 Slava Semushin * src/checkdangerousfunctions.h: Fixed ticket #300 (wrong level given) Enable checks of dangerous functions only when --style option used. http://apps.sourceforge.net/trac/cppcheck/ticket/300 2009-05-22 Slava Semushin * src/checkautovariables.cpp, src/checkother.cpp, tools/errmsg.cpp: Propagate static and const modifiers. No functional change. 2009-05-22 Slava Semushin * src/checkautovariables.cpp, src/checkdangerousfunctions.cpp: Removed unused or superfluous headers. No functional change. 2009-05-22 Slava Semushin * src/checkautovariables.cpp, src/checkautovariables.h, src/checkdangerousfunctions.cpp, src/checkdangerousfunctions.h, test/testautovariables.cpp, test/testdangerousfunctions.cpp: Updated wrong comments (looks like after copy&paste). No code change. 2009-05-21 Reijo Tomperi * man/cppcheck.1.xml: Updated man page to reflect AUTHORS file. 2009-05-21 Reijo Tomperi * src/checkmemoryleak.cpp, test/testmemleak.cpp: Fix #299 (Memory leak not detected when parameters contain ::) http://apps.sourceforge.net/trac/cppcheck/ticket/299 2009-05-21 Daniel Marjamäki * AUTHORS: AUTHORS: Added an authors file Ticket: http://apps.sourceforge.net/trac/cppcheck/ticket/325 2009-05-21 Daniel Marjamäki * src/checkautovariables.cpp, src/checkclass.cpp, src/checkfunctionusage.cpp, src/checkheaders.cpp, src/checkmemoryleak.cpp, src/checkother.cpp, src/checkstl.cpp, src/preprocessor.cpp, src/tokenize.cpp: Applied patch 0001-Use-Token-simpleMatch-instead-of-Token-Match-w Author: php-coder Ticket: http://apps.sourceforge.net/trac/cppcheck/ticket/323 2009-05-21 Daniel Marjamäki * src/checkmemoryleak.cpp: Applied patch 0003-GetAllocationType-mark-some-members-as-static-and-a.patch Author: php-coder Ticket: http://apps.sourceforge.net/trac/cppcheck/ticket/321 2009-05-21 Daniel Marjamäki * src/checkmemoryleak.cpp, src/checkmemoryleak.h: Applied patch 0002-CheckMemoryLeak-renamed-enum-members.patch Author: php-coder 2009-05-21 Daniel Marjamäki * src/checkmemoryleak.h: Applied patch 0001-src-checkmemoryleak.h-replaced-assignment-in-contru.patch Author: php-coder 2009-05-20 Reijo Tomperi * src/preprocessor.cpp, test/testpreprocessor.cpp: Fix ticket #316 (\n is tokenized into \\ in a string when macro is used) http://apps.sourceforge.net/trac/cppcheck/ticket/316 2009-05-19 Reijo Tomperi * src/checkmemoryleak.cpp, test/testmemleak.cpp: Apply patch #320 from php-coderrr ([PATCH] Determine memory leaks after strndup() usage) http://apps.sourceforge.net/trac/cppcheck/ticket/320 2009-05-19 Reijo Tomperi * src/preprocessor.cpp, src/preprocessor.h, test/testpreprocessor.cpp: Fix ticket #315 (Segmentation fault when checking Linux kernel) (previous fix was only partial fix) http://apps.sourceforge.net/trac/cppcheck/ticket/315 2009-05-18 Reijo Tomperi * src/preprocessor.cpp, test/testpreprocessor.cpp: Fix ticket #315 (Segmentation fault when checking Linux kernel) http://apps.sourceforge.net/trac/cppcheck/ticket/315 2009-05-18 Reijo Tomperi * src/checkclass.cpp, test/testconstructors.cpp: astyle fix 2009-05-17 Daniel Marjamäki * src/checkclass.cpp, test/testconstructors.cpp: Classes: Static variables don't need to be initialized or assigned in constructors etc http://apps.sourceforge.net/trac/cppcheck/ticket/307 2009-05-17 Daniel Marjamäki * src/checkstl.cpp, test/teststl.cpp: STL: It is ok to compare vector iterators with < https://apps.sourceforge.net/trac/cppcheck/ticket/313 2009-05-17 Daniel Marjamäki * src/preprocessor.cpp, test/testpreprocessor.cpp: Fix for ticket 291 - preprocessor: better handling of defines http://apps.sourceforge.net/trac/cppcheck/ticket/291 2009-05-14 Reijo Tomperi * src/preprocessor.cpp, test/testpreprocessor.cpp: Fix ticket #312 (division by pointer value causes wrong tokenizing) http://apps.sourceforge.net/trac/cppcheck/ticket/312 2009-05-13 Daniel Marjamäki * test/testpreprocessor.cpp: Preprocessor: Added test case for #291. One of the assertions is a TODO and it should be fixed. http://apps.sourceforge.net/trac/cppcheck/ticket/291 2009-05-13 Reijo Tomperi * src/preprocessor.cpp, src/preprocessor.h, test/testpreprocessor.cpp: Fix ticket #306 (Invalid multi-line comment produces cryptic internal error) http://apps.sourceforge.net/trac/cppcheck/ticket/306 2009-05-13 Reijo Tomperi * src/tokenize.cpp, test/testpreprocessor.cpp: Added TODO test case TestPreprocessor::multiline_comment Made tokenizer to printout token list in case of syntax error, if debug is used 2009-05-12 Reijo Tomperi * test/testmemleak.cpp: Added TODO test case TestMemleak::stdstring 2009-05-12 Reijo Tomperi * test/testtoken.cpp, test/testtokenize.cpp: Fix ticket #305 (Negative value passed to ASSERT_EQUALS) http://apps.sourceforge.net/trac/cppcheck/ticket/305 Moved also test case from testtokenizer to testtoken. 2009-05-11 Reijo Tomperi * src/cppcheck.cpp, src/tokenize.cpp, src/tokenize.h, test/teststl.cpp, test/testtokenize.cpp: Fix ticket #288 (Tokenizer::syntaxError should use error logger instead of std::cout) http://apps.sourceforge.net/trac/cppcheck/ticket/288 2009-05-11 Reijo Tomperi * src/preprocessor.cpp, test/testpreprocessor.cpp: Fix ticket #302 (White space between "\" and newline not handled correctly) http://apps.sourceforge.net/trac/cppcheck/ticket/302 2009-05-10 Daniel Marjamäki * createrelease, src/cppcheck.cpp, win_installer/cppcheck.iss: Updated version to 1.32 2009-05-10 Daniel Marjamäki * src/checkother.cpp, test/testother.cpp: null pointer dereferencing: check that its a pointer that is dereferenced to avoid false positives when using classes that behave almost like pointers (#295) 2009-05-10 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: memory leaks: Handling exit (#297) 2009-05-09 Reijo Tomperi * src/tokenize.cpp, test/testsimplifytokens.cpp, test/testtokenize.cpp: Fix #289 (if() is not properly tokenized) http://apps.sourceforge.net/trac/cppcheck/ticket/289 2009-05-09 Reijo Tomperi * src/threadexecutor.cpp: Apply #296 ([PATCH] cppcheck leak memory when -j option uses) http://apps.sourceforge.net/trac/cppcheck/ticket/296 2009-05-09 Reijo Tomperi * src/preprocessor.cpp, src/tokenize.cpp, src/tokenize.h, test/testpreprocessor.cpp: Fix ticket #294 (### Error: Invalid number of character () http://apps.sourceforge.net/trac/cppcheck/ticket/294 2009-05-09 Daniel Marjamäki * src/tokenize.cpp, test/testsimplifytokens.cpp: templates: fixed problem when for example calling static member function in a template class (#293) 2009-05-08 Kimmo Varis * win_installer/cppcheck.iss, win_installer/readme.txt: Add VS runtimes to the Windows installer. cppcheck requires VS 9 runtimefiles to run. Those runtimes are installed by many programs and it is probable lots of people already have them. But still there are users without those files. And for them it is non-trivial task to get cppcheck to run. So better just include runtimes for everybody. 2009-05-08 Daniel Marjamäki * src/tokenize.cpp, test/testsimplifytokens.cpp: template: no usage -> no expansion (#292) 2009-05-07 Reijo Tomperi * cppcheck.cbp: testautovariables added to the codeblocks project file 2009-05-07 Reijo Tomperi * src/cppcheck.cpp, src/tokenize.cpp, src/tokenize.h, test/testautovariables.cpp, test/testdivision.cpp, test/testincompletestatement.cpp, test/teststl.cpp, test/testtokenize.cpp: Initial fix for ticket #283 (segmentation fault when checking xterm sources) http://apps.sourceforge.net/trac/cppcheck/ticket/283 It should print out error message now instead of crashing. Cleanup is needed. 2009-05-07 Daniel Marjamäki * src/tokenize.cpp: templates: don't expand forward declarations for templates 2009-05-06 Reijo Tomperi * src/checkclass.cpp, test/testclass.cpp: Fix ticket #282 (protected destructor - false positive) http://apps.sourceforge.net/trac/cppcheck/ticket/282 2009-05-06 Daniel Marjamäki * src/checkstl.cpp, test/teststl.cpp: stl: removed false positives for STL buffer overruns. Bailing out when it can't be checked if the index is ok or not. (#285) 2009-05-06 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: memleak: removed false positives for pclose (#286) 2009-05-06 Daniel Marjamäki * src/tokenize.cpp, test/testsimplifytokens.cpp: templates: instantiations in a template class (#280) 2009-05-06 Reijo Tomperi * test/testmemleak.cpp: Added TODO test case TestMemleak::assign_pclose 2009-05-05 Reijo Tomperi * test/testsimplifytokens.cpp: Added test case TestSimplifyTokens::template7 2009-05-05 Daniel Marjamäki * src/tokenize.cpp, test/testsimplifytokens.cpp: templates: speedup by breaking out inner loops (#257) 2009-05-05 Daniel Marjamäki * src/preprocessor.cpp, test/testpreprocessor.cpp: Preprocessor: Handling newlines when using # to stringify parameters (#281) 2009-05-03 Daniel Marjamäki * src/tokenize.cpp: speedup: made the token simplifications a little faster 2009-05-03 Daniel Marjamäki * src/tokenize.cpp, src/tokenize.h: templates: extracted the template simplification into a separate function 2009-05-03 Reijo Tomperi * src/tokenize.cpp, test/testtokenize.cpp: Fix #276 (simplification: Variable value) http://apps.sourceforge.net/trac/cppcheck/ticket/276 2009-05-03 Reijo Tomperi * src/checkbufferoverrun.cpp, src/checkclass.cpp, src/checkheaders.cpp, src/checkmemoryleak.cpp, src/token.cpp, src/token.h, src/tokenize.cpp, test/testtokenize.cpp: Fix #279 (Refactoring: replace and remove Token::aaaa , Token::aaaa0 and Token::aaaa1) http://apps.sourceforge.net/trac/cppcheck/ticket/279 2009-05-03 Daniel Marjamäki * src/tokenize.cpp: varid: speedup of the algorithm for setting variable ids 2009-05-03 Daniel Marjamäki * src/tokenize.cpp, test/testtokenize.cpp: varid: updated handling of variable id for class variables (#26) 2009-05-03 Reijo Tomperi * src/tokenize.cpp: Fix possible bug caused by previous commit. 2009-05-03 Reijo Tomperi * src/tokenize.cpp: Fix slowlyness, caused by one of the previous commits. 2009-05-03 Daniel Marjamäki * src/checkstl.cpp, src/checkstl.h, test/teststl.cpp: stl: Fixed ticket #277 - dereferencing an iterator that has been erased 2009-05-02 Daniel Marjamäki * src/tokenize.cpp, test/testtokenize.cpp: tokenizer: give class member variables varId (#26) 2009-05-02 Daniel Marjamäki * test/teststl.cpp: stl: added a ticket for the todo test case TestStl::eraseDereference 2009-05-02 Daniel Marjamäki * test/teststl.cpp: stl: added todo test case, invalid iterator after insert 2009-05-02 Daniel Marjamäki * test/teststl.cpp: stl: added todo test case, erasing invalid iterator 2009-05-02 Daniel Marjamäki * test/teststl.cpp: stl: added test case, dereferencing an iterator that has been erased 2009-05-02 Daniel Marjamäki * test/testmathlib.cpp: testing mathlib: Test that conversion to numbers work 2009-05-02 Daniel Marjamäki * src/checkmemoryleak.cpp, src/checkother.cpp, src/mathlib.h, src/tokenize.cpp: Refactoring: Using MathLib for converting string to number commit beacd5793f9e9987432a20ac39a76ae6c2c8babd Author: Daniel Marjamäki Date: Sat May 2 10:44:18 2009 +0200 memleak: using mathlib commit 4d28172a5d88cc2cbe5ed94a4e4fdbd0dd4bb5e1 Author: Daniel Marjamäki Date: Sat May 2 10:35:06 2009 +0200 tokenizer: using the MathLib for converting string to number commit 4e4b95b3554c9c6d121efeb39741204b1621b1a3 Author: Daniel Marjamäki Date: Sat May 2 10:28:39 2009 +0200 CheckOther: Using mathlib 2009-05-01 Daniel Marjamäki * src/checkbufferoverrun.cpp, test/testtokenize.cpp: refactoring: Replaced 'aaaa' 2009-05-01 Reijo Tomperi * src/tokenize.cpp, test/testtokenize.cpp: Fix ticket #204 (false positive::memory leak with --all when free is guarded by simple if) http://apps.sourceforge.net/trac/cppcheck/ticket/204 2009-05-01 Reijo Tomperi * src/tokenize.cpp, test/testtokenize.cpp: tokenizer: simplify assembler (#270), fix _asm also. http://apps.sourceforge.net/trac/cppcheck/ticket/270 2009-05-01 Reijo Tomperi * src/checkmemoryleak.cpp, test/testmemleak.cpp: Fix ticket #196 (False positive: Resource leak) http://apps.sourceforge.net/trac/cppcheck/ticket/196 2009-05-01 Daniel Marjamäki * src/tokenize.cpp, test/testtokenize.cpp: tokenizer: simplify assembler (#270) 2009-05-01 Reijo Tomperi * src/tokenize.cpp: Astyle fix 2009-05-01 Reijo Tomperi * src/tokenize.cpp, test/testsimplifytokens.cpp: Fix ticket #275 Simplify if( a == 0 ), if( 0 == a ) into if( !a ) http://apps.sourceforge.net/trac/cppcheck/ticket/275 2009-05-01 Daniel Marjamäki * test/testconstructors.cpp: astyle formatting 2009-05-01 Daniel Marjamäki * test/testconstructors.cpp: class checking: enabled test case. The --all setting must be provided 2009-05-01 Reijo Tomperi * test/testmemleak.cpp: astyle fix 2009-05-01 Reijo Tomperi * src/checkmemoryleak.cpp, test/testconstructors.cpp, test/testmemleak.cpp: Fix partially ticket #196 False positive: Resource leak And add few test cases related to it. Move one failing test behind TODO http://apps.sourceforge.net/trac/cppcheck/ticket/196 2009-05-01 Daniel Marjamäki * src/checkclass.cpp: class checking: only check class assignments if the --all has been given 2009-05-01 Daniel Marjamäki * src/checkclass.cpp, src/checkclass.h, test/testconstructors.cpp: class checking: Checking that vectors/lists/strings etc are modified in the assignment function 2009-04-29 Reijo Tomperi * src/tokenize.cpp, test/testtokenize.cpp: Fix ticket #269 (Incorrect variable id, when delete is used.) http://apps.sourceforge.net/trac/cppcheck/ticket/269 2009-04-29 Reijo Tomperi * test/testtokenize.cpp: Added test case TestTokenizer::varid_delete for ticket #269 http://apps.sourceforge.net/trac/cppcheck/ticket/269 2009-04-29 Reijo Tomperi * test/testmemleak.cpp: Added test case TestMemleak::free_member_in_sub_func for ticket #253 http://apps.sourceforge.net/trac/cppcheck/ticket/253 2009-04-29 Daniel Marjamäki * src/checkstl.cpp, test/teststl.cpp: stl: checking that iterator is used against a single container 2009-04-29 Daniel Marjamäki * test/teststl.cpp: stl: added todo test case about using same iterator with different containers 2009-04-28 Daniel Marjamäki * test/teststl.cpp: changed todo comment to TODO_ASSERT_EQUALS 2009-04-28 Daniel Marjamäki * src/checkstl.cpp, src/checkstl.h, test/teststl.cpp: checkstl: Check for invalid pointer to vector element 2009-04-28 Daniel Marjamäki * test/testconstructors.cpp: added todo test case for detecting unmodified containers in the operator= function 2009-04-28 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: memory leaks: handling std::auto_ptr (#266) 2009-04-27 Daniel Marjamäki * : commit b49997e69d7d058ea722d2d7ef8d4a231a514181 Author: Daniel Marjamäki Date: Mon Apr 27 21:29:03 2009 +0200 2009-04-26 Reijo Tomperi * src/preprocessor.cpp, test/testpreprocessor.cpp: Improve fix to ticket #261: Allow macro definition to have uncoupled double quote. http://apps.sourceforge.net/trac/cppcheck/ticket/261 2009-04-26 Daniel Marjamäki * src/preprocessor.cpp, test/testpreprocessor.cpp: Preprocessor: Report correct file and line in message 'No pair for character..' (#261) 2009-04-25 Daniel Marjamäki * src/checkstl.cpp, test/teststl.cpp: push_back: updated the checking of push_back (#263) 2009-04-25 Daniel Marjamäki * src/tokenize.cpp, test/testtokenize.cpp: varid: Set variable id for stl containers and iterators 2009-04-25 Daniel Marjamäki * test/teststl.cpp: push_back: added a few todo test cases for the checking of push_back 2009-04-23 Reijo Tomperi * src/errorlogger.cpp: astyle fix 2009-04-23 Daniel Marjamäki * src/errorlogger.cpp, test/testcppcheck.cpp: xml generator: handle '<' and '>' (#263) 2009-04-20 Reijo Tomperi * src/tokenize.cpp, test/testtokenize.cpp: Fix ticket #258 (segmentation fault) http://apps.sourceforge.net/trac/cppcheck/ticket/258 2009-04-19 Daniel Marjamäki * src/checkother.cpp, test/testother.cpp: return pointer to local array: fixed false positive when return value is converted to for instance a std::string (#255) 2009-04-16 Daniel Marjamäki * src/mathlib.cpp, src/mathlib.h, test/testmathlib.cpp: mathlib: Fixed todo 3/2=1 2009-04-14 Reijo Tomperi * src/tokenize.cpp: Fix ticket #257 (Improve speed of template tokenizing) http://apps.sourceforge.net/trac/cppcheck/ticket/257 2009-04-14 Daniel Marjamäki * src/checkclass.cpp, test/testunusedprivfunc.cpp: private functions: don't report false positives when using initialization lists (#254) 2009-04-13 Daniel Marjamäki * src/checkstl.cpp, src/checkstl.h, test/teststl.cpp: STL boundries: added new check written by Bill Eggert (#247) 2009-04-13 Kimmo Varis * .gitignore: Improve gitignore file for VS. Improve gitignore to ignore Visual Studio build directories and other VS generated files not wanted in version control. 2009-04-13 Reijo Tomperi * cppcheck.cbp, gui/threadhandler.cpp, src/check.h: Fix ticket #252 (Fix --style warnings in cppcheck) http://apps.sourceforge.net/trac/cppcheck/ticket/252 2009-04-12 Daniel Marjamäki * createrelease, src/cppcheck.cpp, win_installer/cppcheck.iss: updated version to 1.31 2009-04-12 Daniel Marjamäki * test/testmathlib.cpp: math lib: 3/2 should result in 1 2009-04-10 Reijo Tomperi * src/checkstl.cpp, test/teststl.cpp: Fix ticket #248 (STL erase check broken?) http://apps.sourceforge.net/trac/cppcheck/ticket/248 2009-04-10 Daniel Marjamäki * cppcheck.sln, cppcheck.vcproj, testrunner.sln, testrunner.vcproj: changed mode of visual studio files 2009-04-10 Daniel Marjamäki * cppcheck.sln, cppcheck.vcproj, testrunner.sln, testrunner.vcproj: updated Visual Studio files 2009-04-09 Reijo Tomperi * cppcheck.cbp: Add mathlib to codeblocks projectfile 2009-04-09 Daniel Marjamäki * src/mathlib.cpp, src/mathlib.h: mathlib: Added licence text 2009-04-06 Daniel Marjamäki * src/tokenize.cpp: simplify calculations: Don't simplify division with 0 2009-04-06 Daniel Marjamäki * Makefile, src/tokenize.cpp: tokenize: use mathlib when simplifying calculations (ticket: 236) 2009-04-06 Daniel Marjamäki * Makefile, cppcheck.geany, src/mathlib.cpp, src/mathlib.h, test/testmathlib.cpp: added testing for mathlib 2009-04-06 Daniel Marjamäki * Makefile, src/mathlib.cpp, src/mathlib.h: Added math library that was created by hoangtuansu 2009-04-05 Reijo Tomperi * src/tokenize.cpp, test/testsimplifytokens.cpp: Fix ticket #212 (Tokenizer: Handle L "text") http://apps.sourceforge.net/trac/cppcheck/ticket/212 2009-04-05 Reijo Tomperi * src/preprocessor.cpp: Fix ticket #244 (Headers from included file are searched from wrong path) http://apps.sourceforge.net/trac/cppcheck/ticket/244 2009-04-04 Leandro Lisboa Penz * .gitignore: .gitignore: do not show status of built files. 2009-04-04 Leandro Lisboa Penz * test/testmemleak.cpp: checkmemoryleak: fixed and reactivated forwhile9 and forwhile10 tests. 2009-04-04 Reijo Tomperi * src/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fix ticket #243 (boundary checking) http://apps.sourceforge.net/trac/cppcheck/ticket/243 2009-04-03 Reijo Tomperi * test/testpreprocessor.cpp: astyle fix 2009-04-03 Reijo Tomperi * src/cppcheck.cpp, src/preprocessor.cpp, src/preprocessor.h, test/testpreprocessor.cpp: Fix ticket #242 (Preprocessor: Bail out on failure instead of terminating the program) http://apps.sourceforge.net/trac/cppcheck/ticket/242 2009-04-03 Reijo Tomperi * src/checksecurity.cpp: Fix some potential null pointer crashes 2009-03-31 Daniel Marjamäki * src/checkclass.cpp, src/checkclass.h, test/testconstructors.cpp: operator=: changed error message when variable is not assigned 2009-03-31 Reijo Tomperi * src/tokenize.cpp, test/testsimplifytokens.cpp: Fix ticket #239 (missing function implementation in namespace causes crash) http://apps.sourceforge.net/trac/cppcheck/ticket/239 2009-03-29 Daniel Marjamäki * src/checkother.cpp, test/testother.cpp: division with zero => division by zero 2009-03-29 Daniel Marjamäki * src/checkother.cpp, src/checkother.h, test/testother.cpp: zero division: it's an error 2009-03-29 Daniel Marjamäki * src/tokenize.cpp, test/testsimplifytokens.cpp: tokenizer: don't replace sizeof when size can't be determined (#233) 2009-03-28 Reijo Tomperi * src/checkautovariables.cpp: astyle fix 2009-03-28 Gianluca Scacco * test/testautovariables.cpp: Added new test to autovariable 2009-03-28 Gianluca Scacco * src/checkautovariables.cpp, test/testautovariables.cpp: Fixed ticket #228: false positive with usage of an auto-variable 2009-03-28 Daniel Marjamäki * src/tokenize.cpp, test/testtokenize.cpp: Tokenizer: Don't treat typedefs as variable declarations (#234) 2009-03-28 Daniel Marjamäki * test/testmemleak.cpp: Memory leaks: refactoring the TODO test cases 2009-03-28 Daniel Marjamäki * src/token.cpp, src/token.h, src/tokenize.cpp: performance enhancement (patch submitted by davidmiller in ticket 231) 2009-03-28 Nicolas Le Cam * test/testmemleak.cpp: Add TestMemleak::realloc4 that currently fail. Change TestMemleak::if10, TestMemleak::forwhile8 and TestMemleak::realloc2 as they are currently leaking memory, mark them as TODO. Comment out TestMemleak::forwhile9 and TestMemleak::forwhile10 as they are wrong (infinite loops). 2009-03-28 Daniel Marjamäki * test/testother.cpp: removed TestOther::zeroDiv3 - it is not valid 2009-03-28 Daniel Marjamäki * src/checkother.cpp, src/checkother.h, test/testother.cpp: added check for zero division. The code was written by Nguyen Duong Tuan 2009-03-27 Daniel Marjamäki * src/checkother.cpp, src/checkother.h, test/testother.cpp: possible null pointer dereference after a while-loop 2009-03-27 Daniel Marjamäki * src/checkother.h: moved checks back to style (where they used to be) 2009-03-27 Daniel Marjamäki * src/tokenize.cpp: tokenizer: fix segmentation fault if end of token list is reached 2009-03-25 Daniel Marjamäki * test/testclass.cpp, test/testmemleak.cpp, test/testsuite.h: testing: new handling of todo test cases. If they use TODO_ASSERT_EQUALS instead we can detect when they are fixed 2009-03-25 Daniel Marjamäki * test/testtokenize.cpp: variable id: enabled test case for function parameters 2009-03-25 Daniel Marjamäki * src/tokenize.cpp, test/testtokenize.cpp: variable id: give std::string variables an id 2009-03-25 Daniel Marjamäki * src/checkautovariables.cpp: astyle formatting 2009-03-25 Daniel Marjamäki * src/checkbufferoverrun.cpp, src/checkbufferoverrun.h, test/testbufferoverrun.cpp: Buffer overrun: Added check to detect when size argument to memset is a char constant (#213) 2009-03-25 Daniel Marjamäki * src/tokenize.cpp, test/testmemleak.cpp, test/testtokenize.cpp: simplify tokens (known variable values in conditions) 2009-03-24 Gianluca Scacco * src/checkautovariables.cpp: Fixed Ticket #202: Return of the address of an auto-variable 2009-03-24 Daniel Marjamäki * src/checkother.cpp, test/testother.cpp: Fixed ticket 216 (False positive: variable scope) 2009-03-24 Daniel Marjamäki * src/checkclass.cpp: register CheckClass 2009-03-24 Daniel Marjamäki * src/checkother.cpp: fixed testcase 2009-03-24 Daniel Marjamäki * test/testother.cpp: added testcase 2009-03-24 Daniel Marjamäki * src/checkother.cpp: Fixed ticket 197 (false positive: condition is always true/false) 2009-03-24 Daniel Marjamäki * src/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: fixed snprintf false positive (#210) 2009-03-24 Daniel Marjamäki * src/tokenize.cpp, src/tokenize.h, test/testsimplifytokens.cpp: Simplify if conditions more.. simplifyIfAssign + simplifyIfNot 2009-03-23 Daniel Marjamäki * src/checkother.cpp, test/testcharvar.cpp: Fixed ticket 205 (False positive: char variable used in bit operation) 2009-03-23 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: Fixed the testcase TestMemleak::realloc3 2009-03-23 Daniel Marjamäki * src/tokenize.cpp, src/tokenize.h, test/testsimplifytokens.cpp: simplify tokens: move assignment out from condition (Ticket #201) 2009-03-22 Daniel Marjamäki * test/testmemleak.cpp: added todo test case for ticket 200 2009-03-22 Vesa Pikki * gui/settingsdialog.cpp, gui/settingsdialog.h: Removed unnecessary options from settings dialog. 2009-03-22 Daniel Marjamäki * : commit a87419f59b099adc374d74a103835b66b7ee2f22 Author: Daniel Marjamäki Date: Sun Mar 22 18:57:53 2009 +0100 2009-03-22 Vesa Pikki * gui/mainwindow.cpp: Added a window title. 2009-03-22 Vesa Pikki * gui/common.h: Added license text. 2009-03-22 Vesa Pikki * : commit 1e66d7f0e44949fc56e57b93cf1c106b736a363e Author: Vesa Pikki Date: Sun Mar 22 19:41:32 2009 +0200 2009-03-22 Vesa Pikki * gui/mainwindow.cpp, gui/resultstree.cpp: Conflicts: gui/mainwindow.cpp gui/resultstree.cpp 2009-03-22 Vesa Pikki * gui/common.h, gui/mainwindow.cpp, gui/mainwindow.h, gui/resultstree.cpp, gui/resultstree.h, gui/resultsview.cpp, gui/resultsview.h: Merged gui branch to master. 2009-03-22 Vesa Pikki * gui/mainwindow.cpp, gui/resultstree.cpp, gui/resultstree.h, gui/resultsview.cpp: Astyle formatting. 2009-03-22 Vesa Pikki * gui/common.h, gui/mainwindow.cpp, gui/mainwindow.h, gui/resultstree.cpp, gui/resultstree.h, gui/resultsview.cpp, gui/resultsview.h: Can now hide and show results based on cpp flags. 2009-03-22 Vesa Pikki * gui/mainwindow.cpp, gui/mainwindow.h: Added view menu and buttons for it. 2009-03-22 Vesa Pikki * gui/mainwindow.cpp, gui/mainwindow.h, gui/resultstree.cpp, gui/threadhandler.cpp, gui/threadhandler.h: Added recheck and clear results buttons. 2009-03-22 Vesa Pikki * gui/mainwindow.cpp, gui/threadhandler.cpp: astyle formatting. 2009-03-22 Vesa Pikki * gui/mainwindow.cpp, gui/mainwindow.h, gui/resultstree.cpp, gui/threadhandler.cpp, gui/threadhandler.h: Added recheck and clear results buttons. 2009-03-22 Vesa Pikki * gui/mainwindow.cpp, gui/resultstree.cpp, gui/settingsdialog.h, gui/threadhandler.cpp, test/testautovariables.cpp: Astyle formatting. 2009-03-22 Vesa Pikki * : commit 5e1994068ad4d81d38cc9cbf4ff7beff58cdac25 Author: Vesa Pikki Date: Sun Mar 22 14:32:07 2009 +0200 2009-03-22 Vesa Pikki * gui/checkdialog.cpp, gui/checkdialog.h: Removed check dialog. Files to be checked are selected by default file open dialog with all checking options enabled. 2009-03-22 Daniel Marjamäki * Makefile: updated the Makefile 2009-03-22 Gianluca Scacco * Makefile, test/testautovariables.cpp: Fixed error compiling testautovariables 2009-03-22 Daniel Marjamäki * src/checkautovariables.cpp: astyle code formatting 2009-03-22 Daniel Marjamäki * : commit e017d5a07928fba2836dbcfa96d7ca42b3a4634c Author: Daniel Marjamäki Date: Sun Mar 22 08:20:15 2009 +0100 2009-03-22 Gianluca Scacco * src/checkautovariables.cpp, src/checkautovariables.h: Refactoring of CheckAutoVariables 2009-03-21 Daniel Marjamäki * src/tokenize.cpp: improved the Tokenizer::setVarId to handle function parameters better 2009-03-21 Daniel Marjamäki * src/check.h, src/checkautovariables.cpp, src/checkbufferoverrun.cpp, src/checkbufferoverrun.h, src/checkmemoryleak.cpp, src/checkmemoryleak.h, src/errorlogger.h: refactoring error messages 2009-03-21 Daniel Marjamäki * Makefile: updated the MakeFile 2009-03-21 Daniel Marjamäki * Makefile, src/checkautovariables.cpp: Fixed 188 (Return of auto variable address), applied patched submitted by gscacco 2009-03-21 Daniel Marjamäki * src/checkdangerousfunctions.cpp, src/checkdangerousfunctions.h, src/checksecurity.cpp, src/checksecurity.h, src/errorlogger.h, test/testsecurity.cpp: refactoring error messages 2009-03-21 Daniel Marjamäki * src/checkclass.cpp, src/checkclass.h, src/checkmemoryleak.cpp, src/checkmemoryleak.h, src/checkother.cpp, src/checkother.h, src/checkstl.cpp, src/checkstl.h, src/errorlogger.h: refactoring error messages 2009-03-21 Daniel Marjamäki * cppcheck.geany: added geany project file 2009-03-21 Daniel Marjamäki * src/checkstl.cpp, src/checkstl.h, test/teststl.cpp: refactoring - handling the stlOutOfBounds error message the new way 2009-03-21 Daniel Marjamäki * src/check.h, src/checkstl.h: refactoring - added a function getErrorMessages that will be used to get a list of error messages 2009-03-21 Daniel Marjamäki * src/checkautovariables.h, test/teststl.cpp: refactoring - fixed the unit tests 2009-03-21 Daniel Marjamäki * Makefile, tools/dmake.cpp, tools/errmsg.cpp: refactoring: The errmsg is no longer supposed to generate the errorLogger code 2009-03-21 Daniel Marjamäki * src/check.h, src/checkautovariables.h, src/checkbufferoverrun.h, src/checkclass.h, src/checkdangerousfunctions.h, src/checkmemoryleak.h, src/checkother.h, src/checkstl.h, src/cppcheck.cpp: refactoring: there are now 2 functions for running checks. 'runChecks' and 'runSimplifiedChecks' 2009-03-20 Daniel Marjamäki * Makefile, cppcheck.cbp, src/check.h, src/checkstl.cpp: refactoring 2009-03-20 Daniel Marjamäki * src/check.h, src/checkstl.cpp, src/checkstl.h: refactoring: generate error message in the class 2009-03-20 Daniel Marjamäki * src/check.h: refactoring: Added a function to the Check base class that allows easier error reporting 2009-03-20 Daniel Marjamäki * src/token.cpp: improved Token::tokAt to handle negative argument too 2009-03-20 Daniel Marjamäki * src/checkbufferoverrun.cpp, src/checkdangerousfunctions.cpp, src/checkdangerousfunctions.h, src/checkmemoryleak.cpp, src/checkmemoryleak.h, src/checkother.cpp, src/checkother.h, src/cppcheck.cpp, test/testcharvar.cpp, test/testdangerousfunctions.cpp, test/testdivision.cpp, test/testincompletestatement.cpp, test/testmemleak.cpp, test/testmemleakmp.cpp, test/testother.cpp, test/testredundantif.cpp, test/testunusedvar.cpp: refactoring the rest of the classes 2009-03-20 Daniel Marjamäki * src/checkbufferoverrun.cpp, src/checkbufferoverrun.h, src/cppcheck.cpp, test/testbufferoverrun.cpp: refactoring checkbufferoverrun 2009-03-20 Daniel Marjamäki * src/checkclass.cpp, src/checkclass.h, src/cppcheck.cpp, test/testclass.cpp, test/testconstructors.cpp, test/testunusedprivfunc.cpp: refactoring CheckClass 2009-03-20 Daniel Marjamäki * src/check.h, src/checkstl.cpp, src/checkstl.h: refactoring 2009-03-19 Daniel Marjamäki * : commit 5565be0c74cbda4de3582dab1d057710de76d7ce Author: Daniel Marjamäki Date: Thu Mar 19 21:20:08 2009 +0100 2009-03-19 Daniel Marjamäki * Makefile, src/checkautovariables.cpp, src/checkautovariables.h, src/errorlogger.h, tools/errmsg.cpp: added and integrated checkautovariables that gscacco created 2009-03-19 Daniel Marjamäki * src/checkautovariables.cpp, src/checkautovariables.h, test/teststl.cpp: astyle formatting 2009-03-19 Daniel Marjamäki * Makefile, src/checkautovariables.cpp, src/checkautovariables.h, src/errorlogger.h, tools/errmsg.cpp: added checkautovariables and integrated it into cppcheck 2009-03-19 Daniel Marjamäki * test/teststl.cpp: astyle formatting 2009-03-19 Daniel Marjamäki * test/teststl.cpp: refactoring: fixed the teststl so it is runnable again 2009-03-19 Daniel Marjamäki * cppcheck.cbp, src/check.h, src/checkstl.cpp, src/checkstl.h, src/cppcheck.cpp: refactoring: loop through all Check instances and execute the runChecks function 2009-03-19 Daniel Marjamäki * src/checkstl.cpp, src/checkstl.h: refactoring: removed the changes to the error handling 2009-03-18 Daniel Marjamäki * : commit a573c62cd532d3bdae381f8cf4696ec2e2eccd0a Author: Daniel Marjamäki Date: Wed Mar 18 22:40:38 2009 +0100 2009-03-18 Nicolas Le Cam * test/testtokenize.cpp: Fix compilation on 64bit systems 2009-03-18 Daniel Marjamäki * src/tokenize.cpp, src/tokenize.h, test/testtokenize.cpp: Fixed ticket 184 (Tokenizer - Simplification: Split up variable declarations) 2009-03-18 Reijo Tomperi * src/tokenize.cpp, test/testtokenize.cpp: Fixed tokenizer: "return - 2 ;" --> "return -2 ;" 2009-03-18 Reijo Tomperi * src/preprocessor.cpp, test/testpreprocessor.cpp: Fix ticket #191 (semicolon after #endif stop tokenizing of function) http://apps.sourceforge.net/trac/cppcheck/ticket/191 2009-03-17 Reijo Tomperi * src/token.cpp: Astyle fix 2009-03-17 Reijo Tomperi * Makefile, test/testmemleakmp.cpp, test/testtoken.cpp: Fixed some memory leaks in test cases 2009-03-17 Daniel Marjamäki * src/checkother.cpp, src/token.cpp, src/tokenize.cpp, test/testtokenize.cpp: tokenize negative numbers into a single token 2009-03-17 Reijo Tomperi * src/tokenize.cpp: Fix ticket #186 (runtime error when checking code that has a namespace) http://apps.sourceforge.net/trac/cppcheck/ticket/186 2009-03-17 Daniel Marjamäki * src/tokenize.cpp: Refactoring the code for the templates handling 2009-03-17 Daniel Marjamäki * test/teststl.cpp: Added test case for detecting false positive in the STL size handling 2009-03-16 Reijo Tomperi * src/cppcheck.cpp, src/tokenize.cpp, src/tokenize.h: --debug flag can be used to printout token list (for development purposes) 2009-03-16 Reijo Tomperi * src/preprocessor.cpp, test/testpreprocessor.cpp: Fix ticket #179 (preprocessor issues) http://apps.sourceforge.net/trac/cppcheck/ticket/179 2009-03-16 Daniel Marjamäki * test/testtokenize.cpp: Ticket #184 (Tokenizer - Simplification: Split up variable declarations), added testcases 2009-03-16 Daniel Marjamäki * src/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed Ticket #82 (detect buffer overrun; dynamic memory) 2009-03-15 Reijo Tomperi * test/testpreprocessor.cpp: test case stringify3 added 2009-03-15 Reijo Tomperi * src/tokenize.cpp, test/testmemleak.cpp, test/testpreprocessor.cpp, test/testtokenize.cpp: Improved tokenizer to handle '#' better. Previously everything after # was combined into a single token, now # is considered more like an alphabet, with few exceptions, e.g. "##" tokens. 2009-03-15 Daniel Marjamäki * src/tokenize.cpp, test/testsimplifytokens.cpp: Fix Ticket 180 (Templates: Expanding member functions that are not implemented inline) 2009-03-15 Daniel Marjamäki * src/tokenize.cpp, test/testsimplifytokens.cpp: templates: replace constructor/destructor names when expanding template classes 2009-03-15 Reijo Tomperi * test/testpreprocessor.cpp: Test case stringify2() added. 2009-03-15 Reijo Tomperi * src/tokenize.cpp, test/testtokenize.cpp: Fix ticket #177 (Tokenizer doesn't add braces around if-scope) http://apps.sourceforge.net/trac/cppcheck/ticket/177 2009-03-15 Reijo Tomperi * src/preprocessor.cpp, test/testpreprocessor.cpp: Fix ticket #181 (#pragma causes wrong line numbers) http://apps.sourceforge.net/trac/cppcheck/ticket/181 2009-03-15 Reijo Tomperi * src/checkmemoryleak.cpp, src/tokenize.cpp, src/tokenize.h: Improve creation of link() for Token class. Tokenizer::simplifyTokenList() should now return code where Token::link() actually works. 2009-03-14 Daniel Marjamäki * src/tokenize.cpp, test/testsimplifytokens.cpp: templates: better handling of templates with multiple type arguments 2009-03-14 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: Memory leak: handle allocation in deallocation list 2009-03-14 Daniel Marjamäki * src/checkmemoryleak.cpp, src/checkmemoryleak.h, test/testmemleak.cpp: Memory leaks: Refactoring to use Tokenizer::FindClassFunction. Enabled test case, the memory leak is now detected 2009-03-13 Daniel Marjamäki * : commit 3b29125d659c1cb4d1547cba3597b06a4b9454c9 Author: Daniel Marjamäki Date: Fri Mar 13 22:38:42 2009 +0100 2009-03-13 Daniel Marjamäki * src/checkclass.cpp, src/checkclass.h, src/tokenize.cpp, src/tokenize.h: refactoring: moved 'FindClassFunction' from CheckClass to Tokenizer 2009-03-13 Reijo Tomperi * src/token.cpp, src/token.h, src/tokenize.cpp: Fixed ticket #169 (Add Token::link()) http://apps.sourceforge.net/trac/cppcheck/ticket/169 2009-03-13 Daniel Marjamäki * test/testmemleak.cpp: TestMemleak: added two testcases for checking for leaks in classes 2009-03-13 Reijo Tomperi * src/token.cpp, src/token.h, src/tokenize.cpp, src/tokenize.h, test/testsimplifytokens.cpp: Fix ticket #151 (Handling of namespaces) http://apps.sourceforge.net/trac/cppcheck/ticket/151 2009-03-12 Daniel Marjamäki * src/tokenize.cpp, test/testsimplifytokens.cpp: expanding template classes 2009-03-12 Daniel Marjamäki * src/checkclass.cpp, test/testconstructors.cpp: uninitialized const pointer member variables 2009-03-11 Daniel Marjamäki * src/tokenize.cpp, test/testsimplifytokens.cpp: astyle style fixes 2009-03-11 Daniel Marjamäki * src/tokenize.cpp, test/testsimplifytokens.cpp: templates: simplify template functions with 1 type argument 2009-03-11 Reijo Tomperi * test/testpreprocessor.cpp: astyle fix 2009-03-10 Daniel Marjamäki * src/tokenize.cpp, test/testsimplifytokens.cpp: made the Tokenizer::simplifyCasts more generic 2009-03-10 Daniel Marjamäki * src/checkmemoryleak.cpp: Fixed ticket 134 (memory leak not detected) caused by wrong checking if code is inside class function or not 2009-03-09 Daniel Marjamäki * src/preprocessor.cpp, test/testpreprocessor.cpp: Fixed ticket 147 (Invalid line number for error message) 2009-03-09 Daniel Marjamäki * src/checksecurity.h: removed unused private function CheckSecurity::eraseCheckLoop 2009-03-09 Daniel Marjamäki * src/tokenize.cpp, test/testsimplifytokens.cpp: simplify casts 2009-03-09 Kimmo Varis * : commit 9698c6d96b86f608ff0473776584edb416a59d57 Author: Kimmo Varis Date: Mon Mar 9 20:03:22 2009 +0200 2009-03-09 Vesa Pikki * : commit b3923b72ad48cc09ff4ec8355b0d406af02a580a Author: Kimmo Varis Date: Mon Mar 9 19:58:38 2009 +0200 2009-03-09 Vesa Pikki * : commit 3d6e3d38bbc67a4742a1a775142867e0c254b07d Author: Vesa Pikki Date: Mon Mar 9 19:35:43 2009 +0200 2009-03-09 Kimmo Varis * win_installer/cppcheck.iss: Build installer to Build directory in project root. Currently installer is build to subdirectory of the iss file which is not obvious place to find it. Also it is not good practice to build executables to source directories. 2009-03-09 Kimmo Varis * win_installer/cppcheck.iss: Set description for the installer file. This description is shown in the explorer. 2009-03-09 Kimmo Varis * win_installer/cppcheck.iss: Set user wiki URL as application/support URL. The installer was setting Sf.net project page as an URL which might be confusing for the users. Better use the wiki page. 2009-03-09 Kimmo Varis * win_installer/cppcheck.iss: Set version number for the installer file. The installer file was missing a version number (was shown as 0.0.0.0) in the Windows Explorer. Set the installer file version number identical to product version number. 2009-03-08 Reijo Tomperi * test/testpreprocessor.cpp: Added test case for #147 (Invalid line number for error message) http://apps.sourceforge.net/trac/cppcheck/ticket/147 macro_linenumbers() in test/testpreprocessor.cpp 2009-03-08 Reijo Tomperi * src/errorlogger.cpp: Fix ticket #148 (unable to compile with g++-3.3) http://apps.sourceforge.net/trac/cppcheck/ticket/148 2009-03-08 Reijo Tomperi * man/cppcheck.1.xml: Man page copyright year changed to 2009 2009-03-08 Daniel Marjamäki * win_installer/cppcheck.iss: updated version to 1.30 in installation script 2009-03-08 Daniel Marjamäki * src/cppcheck.cpp: updated version to 1.30 2009-03-08 Reijo Tomperi * src/preprocessor.cpp, test/testpreprocessor.cpp: Astyle fix 2009-03-08 Reijo Tomperi * src/preprocessor.cpp, test/testpreprocessor.cpp: Fix ticket #145 (Line numbers are invalid if file is included inside #ifdef) http://apps.sourceforge.net/trac/cppcheck/ticket/145 2009-03-07 unknown * gui/checkdialog.cpp, src/filelister.cpp: Windows Qt compilation fixes. FileLister::RecursiveAddFiles failed to compile in Windows when GUI was compiled. Since that method wasn't used in Qt build I ifdeffed it out. Also removed vcl related code from checkdialog since that was removed from release. 2009-03-07 Reijo Tomperi * man/cppcheck.1.xml: Improve man page 2009-03-07 Daniel Marjamäki * createrelease: createrelease updated to use git instead of svn 2009-03-07 Daniel Marjamäki * man/cppcheck.1.xml, src/cppcheck.cpp: Fix ticket #140 (New command line option --auto-dealloc), added documentation 2009-03-07 Reijo Tomperi * Makefile, tools/dmake.cpp: Fix ticket #141 (changed the makefile), changing compiler is now easier in the makefile. http://apps.sourceforge.net/trac/cppcheck/ticket/141 2009-03-06 Reijo Tomperi * man/cppcheck.1.xml, src/cppcheck.cpp: Fix ticket #137 (--version would be nice) and also do some cleanup for help texts http://apps.sourceforge.net/trac/cppcheck/ticket/137 2009-03-06 Reijo Tomperi * src/threadexecutor.cpp: Fix ticket #139 (Compilation error on building cppcheck version 1.29 with gcc-4.3.2 on Ubuntu 8.10) http://apps.sourceforge.net/trac/cppcheck/ticket/139 2009-03-06 Daniel Marjamäki * src/cppcheck.cpp, src/settings.cpp, src/settings.h, test/testmemleak.cpp: astyle formatting 2009-03-06 Daniel Marjamäki * src/cppcheck.cpp: auto-deallocated classes: added command line option for specifying .lst file (http://apps.sourceforge.net/trac/cppcheck/ticket/120) 2009-03-06 Daniel Marjamäki * src/checkmemoryleak.cpp, src/settings.cpp, src/settings.h, test/testmemleak.cpp: added internal support for handling list of classes that are automaticly deallocated 2009-03-06 Reijo Tomperi * man/cppcheck.1.xml, src/checkstl.cpp, src/cppcheck.cpp, src/cppcheckexecutor.cpp, src/cppcheckexecutor.h, src/main.cpp, src/settings.cpp, src/settings.h: Fix ticket #135 (Add option to control main() exit value) 2009-03-05 Reijo Tomperi * src/checkstl.cpp, test/teststl.cpp: Fix segmentation fault that happens with invalid code. 2009-03-05 Reijo Tomperi * src/tokenize.cpp, test/testsimplifytokens.cpp: Fix ticket #133 (Segmentation fault when static_cast is in for loop) 2009-03-05 Daniel Marjamäki * src/checkbufferoverrun.cpp: checkbufferoverrun: fixed bug - skip some checks when variable id is unknown (Ticket: 138) 2009-03-04 Daniel Marjamäki * src/cppcheck.cpp: reverted accidental changes committed in [1330] 2009-03-04 Daniel Marjamäki * src/cppcheck.cpp, src/tokenize.cpp: fixed tokenizer problem when reading char constants 2009-03-04 Daniel Marjamäki * src/tokenize.cpp, src/tokenize.h: simplify calculations better 2009-03-04 Daniel Marjamäki * src/tokenize.cpp, test/testtokenize.cpp: known variables: better handling of ++ and -- 2009-03-03 Reijo Tomperi * src/checkmemoryleak.cpp, test/testmemleak.cpp: Fix #132 (False positive returning memcpy()) 2009-03-03 Reijo Tomperi * src/token.cpp, test/testsimplifytokens.cpp, test/testtokenize.cpp: Fix ticket Add/Change #125 (the printout of the token list is wrong) 2009-03-03 Reijo Tomperi * src/token.cpp, src/token.h: Refactoring: Combined printOut() and stringifyList() in Token class 2009-03-03 Kimmo Varis * createrelease: Use svn export to export sources without SVN folders. 2009-03-03 Kimmo Varis * createrelease: Use variable for relase folder and version in release script. 2009-03-02 Daniel Marjamäki * src/checkclass.cpp, test/testunusedprivfunc.cpp: unused private function: better handling of initialization lists in constructors 2009-03-02 Vesa Pikki * gui/resultsview.cpp, gui/threadhandler.cpp, gui/threadresult.cpp: Removed some unnecessary debug prints. 2009-03-02 Vesa Pikki * gui/checkdialog.cpp, gui/checkdialog.h, gui/checkthread.cpp, gui/checkthread.h, gui/resultstree.cpp, gui/resultsview.cpp, gui/resultsview.h, gui/threadhandler.cpp, gui/threadhandler.h, gui/threadresult.cpp, gui/threadresult.h, src/filelister.h: Now adds directory contents to list of files to check. Only adds proper (.cpp,.c,.cpp,...) files to the list of files to check. Modified checkthread to clear results after each file. 2009-03-02 Daniel Marjamäki * createrelease: createrelease: The script for creating the 1.29 source packages 2009-03-02 Daniel Marjamäki * src/checkclass.cpp, test/testunusedprivfunc.cpp: unused private function: fixed false positive (ticket: 129) 2009-03-01 Vesa Pikki * gui/checkdialog.cpp, gui/checkdialog.h, gui/checkthread.cpp, gui/checkthread.h, gui/gui.pro, gui/mainwindow.cpp, gui/mainwindow.h, gui/resultstree.cpp, gui/resultstree.h, gui/resultsview.cpp, gui/resultsview.h, gui/threadhandler.cpp, gui/threadhandler.h, gui/threadresult.cpp, gui/threadresult.h: Began implementing ThreadExecutor with Qt threads. Still a work in progress. Added tr to all strings. 2009-03-01 Reijo Tomperi * man/cppcheck.1.xml: Copyright fix for the man page 2009-03-01 Reijo Tomperi * man/cppcheck.1.xml: Copyright for the man page 2009-03-01 Daniel Marjamäki * src/checkmemoryleak.cpp, src/checkmemoryleak.h, test/testmemleak.cpp: memory leak: fixed issue with reporting wrong location 2009-03-01 Reijo Tomperi * src/threadexecutor.cpp: Fixed some compiling warnings by adding more error checking. 2009-03-01 Daniel Marjamäki * src/tokenize.cpp: removed deprecated flag 'firstMatch' 2009-03-01 Reijo Tomperi * src/errorlogger.h, tools/errmsg.cpp: Copyright fixes 2009-03-01 Reijo Tomperi * src/errorlogger.h, src/threadexecutor.cpp: Fixing compile problem with new gcc 2009-03-01 Reijo Tomperi * src/checkbufferoverrun.cpp, src/checkbufferoverrun.h, src/checkclass.cpp, src/checkclass.h, src/checkdangerousfunctions.cpp, src/checkdangerousfunctions.h, src/checkfunctionusage.cpp, src/checkfunctionusage.h, src/checkheaders.cpp, src/checkheaders.h, src/checkmemoryleak.cpp, src/checkmemoryleak.h, src/checkother.cpp, src/checkother.h, src/checksecurity.cpp, src/checksecurity.h, src/checkstl.cpp, src/checkstl.h, src/cppcheck.cpp, src/cppcheck.h, src/cppcheckexecutor.cpp, src/cppcheckexecutor.h, src/errorlogger.cpp, src/errorlogger.h, src/filelister.cpp, src/filelister.h, src/main.cpp, src/preprocessor.cpp, src/preprocessor.h, src/settings.cpp, src/settings.h, src/threadexecutor.cpp, src/threadexecutor.h, src/token.cpp, src/token.h, src/tokenize.cpp, src/tokenize.h, test/testbufferoverrun.cpp, test/testcharvar.cpp, test/testclass.cpp, test/testconstructors.cpp, test/testcppcheck.cpp, test/testdangerousfunctions.cpp, test/testdivision.cpp, test/testfilelister.cpp, test/testfunctionusage.cpp, test/testincompletestatement.cpp, test/testmemleak.cpp, test/testmemleakmp.cpp, test/testother.cpp, test/testpreprocessor.cpp, test/testredundantif.cpp, test/testrunner.cpp, test/testsecurity.cpp, test/testsimplifytokens.cpp, test/teststl.cpp, test/testsuite.cpp, test/testsuite.h, test/testtoken.cpp, test/testtokenize.cpp, test/testunusedprivfunc.cpp, test/testunusedvar.cpp, tools/dmake.cpp, tools/errmsg.cpp: Copyrights updated 2009-03-01 Reijo Tomperi * cppcheck.cbp: Added GUI to codeblocks project file 2009-03-01 Reijo Tomperi * src/errorlogger.h, tools/errmsg.cpp: Fixed another --style problem with our code 2009-03-01 Reijo Tomperi * src/threadexecutor.cpp, src/threadexecutor.h: Fixed bug, -j option produced duplicate error messages. 2009-03-01 Reijo Tomperi * src/errorlogger.cpp, src/errorlogger.h, tools/errmsg.cpp: Use reference instead of string copy (fixes some --style warnings from our code) 2009-03-01 Daniel Marjamäki * src/cppcheck.cpp: removed the '--vcl' flag from the console app 2009-03-01 Reijo Tomperi * man/cppcheck.1.xml: Removed --vcl fromt he man page 2009-03-01 Reijo Tomperi * man/cppcheck.1.xml: Updated man page for --vcl 2009-03-01 Daniel Marjamäki * src/tokenize.cpp, test/testother.cpp, test/testtokenize.cpp: variable id: fixed so that the variable ids are assigned correctly (ticket:126) 2009-03-01 Vesa Pikki * gui/checkdialog.cpp, gui/checkdialog.h, gui/checkthread.cpp, gui/checkthread.h, gui/gui.pro, gui/main.cpp, gui/mainwindow.cpp, gui/mainwindow.h, gui/resultstree.cpp, gui/resultstree.h, gui/resultsview.cpp, gui/resultsview.h, gui/settingsdialog.cpp, gui/settingsdialog.h, runastyle, runastyle.bat: Began implementing a simple Qt based GUI. Also modified astyle scripts to format gui code aswell. 2009-02-28 Daniel Marjamäki * src/tokenize.cpp, test/testsimplifytokens.cpp: variable declarations: don't simplify when declaring and assigning array in the same statement 2009-02-28 Daniel Marjamäki * src/tokenize.cpp, test/testtokenize.cpp: variable id: handling 'return' and 'else' better 2009-02-28 Daniel Marjamäki * test/testsimplifytokens.cpp, test/testtokenize.cpp: moved sizeof tests to the TestSimplifyTokens class 2009-02-28 Daniel Marjamäki * test/testtokenize.cpp: refactoring unit tests 2009-02-28 Daniel Marjamäki * src/tokenize.cpp, test/testtokenize.cpp: sizeof: fixed a problem with 'sizeof(varname)' but there are more to fix with it 2009-02-27 Reijo Tomperi * src/cppcheck.cpp, src/cppcheck.h: Added Cppcheck::clearFiles() function. 2009-02-27 Daniel Marjamäki * src/tokenize.cpp, test/testtokenize.cpp: simplify known variable: don't simplify this ';i++;' 2009-02-27 Daniel Marjamäki * src/checkfunctionusage.cpp: unused functions: fixed false positives 2009-02-27 Daniel Marjamäki * test/testbufferoverrun.cpp: Reverted changes made in [1289] 2009-02-27 Daniel Marjamäki * src/tokenize.cpp, test/testsimplifytokens.cpp: simplify tokens: fixed bug when removing redundant parantheses around variable 2009-02-26 Daniel Marjamäki * test/testbufferoverrun.cpp: array index out of bounds: Added todo test case TestBufferOverrun::array_index_13 for ticket #118 2009-02-26 Kimmo Varis * win_installer/cppcheck.iss: Use 'folder' instead of 'directory' in Windows installer. 2009-02-25 Daniel Marjamäki * src/tokenize.cpp, test/testsimplifytokens.cpp: simplify tokens: remove redundant parantheses around variable.. 'p = (q);' 2009-02-25 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: memory leak: Fixed a false positive when all is given 2009-02-25 Daniel Marjamäki * src/checkclass.cpp, test/testunusedprivfunc.cpp: unused private function: Handle 'embedded' function implementations better 2009-02-24 Daniel Marjamäki * src/checkclass.cpp: checkclass: refactoring 2009-02-24 Daniel Marjamäki * src/checkclass.cpp, test/testunusedprivfunc.cpp: reverted [1282] because some changes were committed by mistake 2009-02-24 Daniel Marjamäki * src/checkclass.cpp, test/testunusedprivfunc.cpp: checkclass: refactoring 2009-02-24 Daniel Marjamäki * src/tokenize.cpp: sizeof fix. classes and structs are always given the size 100. This removes false positives about mismatching size 2009-02-24 Daniel Marjamäki * src/tokenize.cpp, test/testtokenize.cpp: simplify tokens: simplify known variable value handles ++ and -- better 2009-02-24 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: memory leak: fixed false positive when using 'return strcpy' 2009-02-23 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: memory leaks: improved handling of --vcl 2009-02-22 Reijo Tomperi * man/cppcheck.1.xml, src/cppcheck.cpp, src/cppcheckexecutor.cpp, src/settings.cpp, src/settings.h, src/threadexecutor.cpp: Change -w to -j to make it similar with make and scons. 2009-02-22 Kimmo Varis * src/cppcheck.rc: Windows RC file is ANSI file, storing as UTF-8 messes it up. 2009-02-22 Reijo Tomperi * src/errorlogger.h, tools/errmsg.cpp: Members of ErrorLogger::ErrorMessage made public for better access to them. 2009-02-22 Reijo Tomperi * src/cppcheck.cpp, src/cppcheck.h: CppCheck::addFile() accepts paths also now. 2009-02-21 Daniel Marjamäki * cppcheck.cbp: codeblocks: Updated the project file with the new security check 2009-02-21 Daniel Marjamäki * src/checkclass.cpp, src/tokenize.cpp, test/testclass.cpp: constructors: don't warn about missing constructor if class only has static variable members 2009-02-21 Daniel Marjamäki * src/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: buffer overrun: catch cases when using cin to read to a char array 2009-02-21 Daniel Marjamäki * Makefile, src/checksecurity.cpp, src/checksecurity.h, test/testsecurity.cpp: security: renamed classes 2009-02-21 Daniel Marjamäki * Makefile, src/checksecurity.cpp, src/checksecurity.h, src/checkvalidate.cpp, src/checkvalidate.h, test/testsecurity.cpp, test/testvalidate.cpp: security: Renamed files 2009-02-21 Daniel Marjamäki * src/checkclass.cpp, test/testclass.cpp: TestClass: Added test for uninitialized "mutable int i" 2009-02-21 Daniel Marjamäki * cppcheck.vcproj: Visual C++: Updated the project file to include the thread execution 2009-02-20 Daniel Marjamäki * src/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: buffer overrun: dangerous usage of strncpy+strncat 2009-02-20 Daniel Marjamäki * src/checkbufferoverrun.cpp, src/errorlogger.h, test/testbufferoverrun.cpp, tools/errmsg.cpp: buffer overrun: Added checking of strncat 2009-02-20 Daniel Marjamäki * test/testbufferoverrun.cpp: added todo testcases for strncat checking 2009-02-20 Daniel Marjamäki * src/threadexecutor.cpp: g++: fixed compiler errors 2009-02-20 Reijo Tomperi * man/cppcheck.1.xml, src/cppcheck.cpp, src/cppcheckexecutor.cpp, src/settings.cpp, src/settings.h, src/threadexecutor.cpp, src/threadexecutor.h, tools/errmsg.cpp: Fix ticket #113 (Add support for multi core CPUs and -w parameter to specifify amount of worker threads) 2009-02-20 Daniel Marjamäki * src/tokenize.cpp, test/testtokenize.cpp: simplify known variables: variable used as array index 2009-02-20 Daniel Marjamäki * src/checkmemoryleak.cpp, src/cppcheck.cpp, src/errorlogger.h, src/settings.cpp, src/settings.h, test/testmemleak.cpp: memory leak: Added command line flag '--vcl' that is used to suppress error messages for VCL code 2009-02-19 Reijo Tomperi * Makefile, cppcheck.cbp, src/cppcheck.cpp, src/cppcheck.h, src/cppcheckexecutor.cpp, src/cppcheckexecutor.h, src/errorlogger.cpp, src/errorlogger.h, src/threadexecutor.cpp, src/threadexecutor.h, test/testsuite.h, tools/errmsg.cpp: Multicore cpu support for Linux (currently disabled and compiling produces warnings) "no errors" output removed. 2009-02-19 Daniel Marjamäki * src/checkvalidate.cpp, src/checkvalidate.h, src/errorlogger.h, src/settings.cpp, src/settings.h, test/testvalidate.cpp, tools/errmsg.cpp: security: added simple gui checking 2009-02-19 Daniel Marjamäki * Makefile, src/checkvalidate.cpp, src/checkvalidate.h, src/errorlogger.h, test/testvalidate.cpp, testrunner.vcproj, tools/errmsg.cpp: input validation: added checking 2009-02-18 Daniel Marjamäki * test/testsimplifytokens.cpp: fixed failed tests 2009-02-18 Daniel Marjamäki * test/testsimplifytokens.cpp: reverted [1254] it was made by mistake 2009-02-18 Daniel Marjamäki * test/testsimplifytokens.cpp: stl push_back: Added check (invalid iterator) 2009-02-18 Daniel Marjamäki * src/checkstl.cpp, src/checkstl.h, src/cppcheck.cpp, src/errorlogger.h, test/teststl.cpp, tools/errmsg.cpp: stl push_back: Added check (invalid iterator) 2009-02-17 Daniel Marjamäki * src/tokenize.cpp: activated the Tokenizer::elseif functionality 2009-02-17 Daniel Marjamäki * src/tokenize.cpp, src/tokenize.h, test/testsimplifytokens.cpp: Added Tokenizer::elseif for breaking up 'else if' into 'else { if ..' 2009-02-16 Daniel Marjamäki * test/testtokenize.cpp: varid: Added a todo test case for giving function parameters varid 2009-02-16 Daniel Marjamäki * src/tokenize.cpp, test/testtokenize.cpp: tokenizer: fixed issues related to variable ids * use setVarId in simplifyTokenList * make sure function parameters and variables declared in for example for loops get variable ids 2009-02-15 Reijo Tomperi * src/tokenize.cpp: astyle fix 2009-02-15 Daniel Marjamäki * src/tokenize.cpp, test/testtokenize.cpp: tokenizer: improved the simplification of '*(var+num)' => 'var[num]' 2009-02-15 Daniel Marjamäki * src/tokenize.cpp, test/testsimplifytokens.cpp: tokenizer: Remove redundant parantheses around number. Ticket: #105 2009-02-15 Daniel Marjamäki * src/tokenize.cpp, test/testtokenize.cpp: Tokenizer: Fixed bug in tokenizer that removed '\' from preprocessor lines Ticket: #106 2009-02-15 Daniel Marjamäki * src/filelister.cpp: FileLister: handle '\\' path separator the same way '/' is handled 2009-02-15 Daniel Marjamäki * src/filelister.cpp: filelister: use '\\' instead of '/' in windows paths 2009-02-14 Reijo Tomperi * src/preprocessor.cpp: Code comments updated 2009-02-14 Reijo Tomperi * src/errorlogger.h, tools/errmsg.cpp: Code comments updated 2009-02-14 Reijo Tomperi * test/testtokenize.cpp: Added test case TestTokenizer::sizeof5 2009-02-14 Reijo Tomperi * src/token.cpp, src/tokenize.cpp, test/testtokenize.cpp: Constant variable converting converted struct members (foo.a => foo.45) also, fixed that. 2009-02-14 Reijo Tomperi * src/tokenize.cpp, test/testsimplifytokens.cpp: Fix ticket #107 (Convert + + into + and + - into -) and add test case for it 2009-02-14 Reijo Tomperi * test/testsimplifytokens.cpp: Fixed typos in test case and enabled it. 2009-02-14 Reijo Tomperi * src/tokenize.cpp: astyle fix 2009-02-14 Daniel Marjamäki * src/tokenize.cpp, test/testtokenize.cpp: tokenizer: tokenize '++', '--' and '>>' correctly 2009-02-14 Reijo Tomperi * src/cppcheck.cpp, src/errorlogger.h, test/testclass.cpp, test/testconstructors.cpp, tools/errmsg.cpp: Fix ticket #104 (Change (error) Uninitialized member variable -> (style) Member variable not initialized in the constructor) 2009-02-14 Daniel Marjamäki * src/cppcheck.cpp: debug output: commented out the code for writing token listing 2009-02-14 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: memory leak: handle 'delete (p)' and 'delete [] (p)'. Fixes ticket 102 2009-02-14 Daniel Marjamäki * src/cppcheck.cpp, src/tokenize.cpp: simplify known value: insert known variable value into calculations 2009-02-13 Daniel Marjamäki * test/testtokenize.cpp: simplify tokens: added todo test case, the varid is lost when simplifying variable declarations 2009-02-13 Daniel Marjamäki * test/testtokenize.cpp: simplify token list: Added a TODO test case. variable id is lost 2009-02-13 Leandro Penz * src/preprocessor.cpp, test/testpreprocessor.cpp: Preprocessor: support for ##-comma-eating in variadic macros; passing now fmt2 test. 2009-02-13 Leandro Penz * src/tokenize.cpp, test/testtokenize.cpp: Tokenizer: fixed ## tokenization. 2009-02-13 Leandro Penz * src/preprocessor.cpp, test/testpreprocessor.cpp: Preprocessor: initial variadic macro support; passing now on fmt1 case. 2009-02-13 Daniel Marjamäki * src/token.cpp, src/token.h, test/testtokenize.cpp: Token::stringifyList: Added function that stringifies a token list 2009-02-12 Reijo Tomperi * test/testsimplifytokens.cpp: Improved test case "double_plus" 2009-02-12 Reijo Tomperi * src/token.cpp, test/testsimplifytokens.cpp: Added test case double_plus and improved Token::printOut 2009-02-12 Reijo Tomperi * src/tokenize.cpp, test/testtokenize.cpp: Fix ticket #100 (Simplify constants simplifies leaks out from variable scope and simplifies whole file) 2009-02-12 Daniel Marjamäki * src/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: buffer overruns: added simple support for initialized array 2009-02-12 Leandro Penz * src/checkother.cpp, test/testincompletestatement.cpp: Incomplete statements: removed false positive when setting array of structures or multi-dimensional arrays. 2009-02-11 Reijo Tomperi * test/testtokenize.cpp: Test case TestTokenizer::simplify_constants added (commented out) 2009-02-11 Daniel Marjamäki * src/checkstl.cpp, test/teststl.cpp: stl dangerous usage of erase: Added test cases about using return and goto 2009-02-11 Daniel Marjamäki * src/checkbufferoverrun.cpp, src/checkbufferoverrun.h, test/testbufferoverrun.cpp: buffer overrun: improved checking of global variables 2009-02-11 Leandro Penz * src/checkother.cpp, test/testincompletestatement.cpp: Incomplete statement: fixed and enabled intarray test case. 2009-02-11 Leandro Penz * test/testincompletestatement.cpp: Incomplete statement: test case for statement that begins with numeric constant. 2009-02-11 Daniel Marjamäki * Makefile, src/checkbufferoverrun.cpp, src/checkbufferoverrun.h: checkbufferoverrun: cleaned up the header includes 2009-02-11 Daniel Marjamäki * Makefile: updated the Makefile 2009-02-11 Daniel Marjamäki * src/checkstl.cpp, src/checkstl.h, src/cppcheck.cpp, src/errorlogger.h, test/teststl.cpp, tools/errmsg.cpp: dangerous usage of erase: added check 2009-02-10 Kimmo Varis * cppcheck.vcproj, testrunner.vcproj: Update Visual Studio project files. 2009-02-10 Reijo Tomperi * src/checkheaders.cpp, src/cppcheck.cpp, src/cppcheck.h, src/cppcheckexecutor.cpp, src/cppcheckexecutor.h, src/errorlogger.cpp, src/errorlogger.h, test/testsuite.cpp, test/testsuite.h, tools/errmsg.cpp: Refactoring: reportErr takes now only one parameter, ErrorLogger::ErrorMessage, which contains all required information and also some help functions for formatting it for output. 2009-02-10 Daniel Marjamäki * src/checkstl.cpp, test/teststl.cpp: stl: added testcase for bad iterator usage 2009-02-10 Reijo Tomperi * src/checkbufferoverrun.cpp, src/checkbufferoverrun.h, src/checkstl.cpp, src/checkstl.h, src/cppcheck.cpp, test/testbufferoverrun.cpp, test/teststl.cpp: Moved stloutofbounds check to CheckStl class. 2009-02-10 Daniel Marjamäki * cppcheck.cbp: codeblocks: updated the project file 2009-02-10 Daniel Marjamäki * src/checkstl.cpp: astyle coding style update 2009-02-10 Daniel Marjamäki * Makefile, src/checkstl.cpp, src/checkstl.h, src/cppcheck.cpp, src/errorlogger.h, test/teststl.cpp, tools/errmsg.cpp: STL: added check for iterator usage 2009-02-10 Reijo Tomperi * src/checkbufferoverrun.cpp, src/errorlogger.h, tools/errmsg.cpp: stlOutOfBounds error message created 2009-02-09 Reijo Tomperi * src/checkbufferoverrun.cpp, src/checkbufferoverrun.h, test/testbufferoverrun.cpp: Fix ticket #94 (STL container overrun). Check is currently behind --all 2009-02-09 Reijo Tomperi * man/cppcheck.1.xml, src/checkdangerousfunctions.cpp, src/checkheaders.cpp, src/cppcheck.cpp, src/cppcheck.h, src/cppcheckexecutor.cpp, src/cppcheckexecutor.h, src/errorlogger.cpp, src/errorlogger.h, src/tokenize.cpp, src/tokenize.h, test/testdangerousfunctions.cpp, test/testsuite.cpp, test/testsuite.h, tools/errmsg.cpp: Fix ticket #93 (Write xml results into error stream instead of results.xml file.) and also refactor the code to use ErrorLogger::reportErr() for all errors, for both xml and plain text. And move xml formatting from Cppcheck to CppcheckExecutor. 2009-02-09 Daniel Marjamäki * src/checkmemoryleak.cpp, src/checkmemoryleak.h, test/testmemleak.cpp: memory leak: keep track of --all better 2009-02-09 Daniel Marjamäki * test/testincompletestatement.cpp: incomplete statement: added a testcase for a false positive 2009-02-09 Kimmo Varis * cppcheck.vcproj: Update Visual Studio project file. 2009-02-09 Daniel Marjamäki * src/checkclass.cpp, test/testclass.cpp: uninitialized variables: added testcases and made a fix 2009-02-08 Reijo Tomperi * cppcheck.cbp: Update to codeblocks project file 2009-02-08 Reijo Tomperi * Makefile, cppcheck.cbp, src/checkbufferoverrun.cpp, src/checkclass.cpp, src/checkdangerousfunctions.cpp, src/checkfunctionusage.cpp, src/checkmemoryleak.cpp, src/checkother.cpp, src/cppcheck.cpp, src/errorlogger.cpp, src/errorlogger.h, src/errormessage.cpp, src/errormessage.h, tools/dmake.cpp, tools/errmsg.cpp: Fix ticket #80 (refactoring: classes ErrorMessage and ErrorLogger), note that errormessage and errorlogger were merged, errormessage.* is no more. 2009-02-08 Daniel Marjamäki * test/testmemleak.cpp: Memory leak: Test code was supposed to call unknown function 2009-02-08 Daniel Marjamäki * src/errormessage.h, test/testmemleak.cpp, tools/errmsg.cpp: mismatching allocation size: moved to error suite 2009-02-08 Daniel Marjamäki * test/testmemleak.cpp: Memory leaks: Make sure leak is found even when using unknown functions 2009-02-08 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: Memory leak: find memory leak in TestMemleak::unknownFunction2 2009-02-08 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: Memory leak: Handling function that can't be traced into 2009-02-08 Reijo Tomperi * src/tokenize.cpp, test/testtokenize.cpp: Fixed issue about 4+5 being made a single token, problem appeared in recent commits. 2009-02-08 Reijo Tomperi * src/tokenize.cpp, test/testtokenize.cpp: Fix ticket #89 (False positive, (style) Redundant code - begins with numeric constant (e-value)) 2009-02-08 Reijo Tomperi * src/tokenize.cpp, test/testincompletestatement.cpp, test/testtokenize.cpp: Improve fix made for Ticket #85 to handle strings that are in 3 parts also. 2009-02-08 Reijo Tomperi * src/tokenize.cpp, test/testincompletestatement.cpp, test/testtokenize.cpp: Fixed ticket #88 (False positive, (style) Redundant code - begins with numeric constant) 2009-02-08 Reijo Tomperi * src/tokenize.cpp, test/testincompletestatement.cpp, test/testsimplifytokens.cpp: Fix ticket #85 (False positive (style) Redundant code, begins with string) 2009-02-08 Daniel Marjamäki * test/testmemleak.cpp: Memory leaks: Added todo testcase - handle function calls that can't be followed 2009-02-07 Reijo Tomperi * src/token.cpp, src/token.h: Fixed compiler warning ( #81 ) and optimized the speed a little. Removed _cstr from Token class, use _str.c_str() instead. 2009-02-07 Reijo Tomperi * src/cppcheck.cpp, src/tokenize.cpp, test/testpreprocessor.cpp: Fixed more of ticket #81 (getting rid of compiler warnings) 2009-02-07 Reijo Tomperi * src/checkmemoryleak.h, src/checkother.h, src/preprocessor.h, src/tokenize.h, test/testbufferoverrun.cpp, test/testcharvar.cpp, test/testclass.cpp, test/testconstructors.cpp, test/testdangerousfunctions.cpp, test/testdivision.cpp, test/testfunctionusage.cpp, test/testincompletestatement.cpp, test/testmemleak.cpp, test/testmemleakmp.cpp, test/testpreprocessor.cpp, test/testredundantif.cpp, test/testtokenize.cpp, test/testunusedprivfunc.cpp, test/testunusedvar.cpp: Fix ticket #84 (unit testing: use "protected" instead of preprocessor) 2009-02-07 Reijo Tomperi * src/checkmemoryleak.cpp, src/tokenize.cpp, test/testtokenize.cpp: Fix ticket #83 (cppcheck hangs) and add a test case for it 2009-02-07 Daniel Marjamäki * src/checkmemoryleak.cpp: Borland C++: Fix to make it compile 2009-02-07 Reijo Tomperi * src/cppcheck.cpp: Fixed partially ticket #81 (getting rid of compiler warnings) 2009-02-07 Daniel Marjamäki * src/checkmemoryleak.cpp, src/checkmemoryleak.h, src/errormessage.h, src/tokenize.cpp, test/testmemleak.cpp, tools/errmsg.cpp: memory allocation: check for mismatching size 2009-02-07 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: TestMemleak: fixed problems with wrong linenumbers. This fixes ticket 79 2009-02-07 Daniel Marjamäki * cppcheck.cbproj: Borland C++: Added CheckDangerousFunctions.* to the project 2009-02-07 Daniel Marjamäki * src/filelister.cpp: FileLister: Added code that I received from Jeffrey Walton to handle directories and files better 2009-02-06 Daniel Marjamäki * test/testmemleak.cpp: TestMemleak: Fixed tests 2009-02-06 Daniel Marjamäki * src/cppcheck.cpp, src/errormessage.h, tools/errmsg.cpp: mismathing allocation and deallocation: moved to error checks 2009-02-06 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testcppcheck.cpp, test/testmemleak.cpp: errmsg: use the error message dealloc-use 2009-02-06 Daniel Marjamäki * src/checkmemoryleak.cpp, src/checkmemoryleak.h, test/testmemleak.cpp: memleak: removed false positives for mismatching allocation and deallocation 2009-02-05 Reijo Tomperi * src/errormessage.h, test/testbufferoverrun.cpp, test/testclass.cpp, test/testconstructors.cpp, test/testcppcheck.cpp, test/testdivision.cpp, test/testmemleak.cpp, test/testother.cpp, tools/errmsg.cpp: Fixed: Ticket #78 Change (always) into (error) in error messages 2009-02-05 Reijo Tomperi * test/testcppcheck.cpp: Added test case linenumbers2 2009-02-05 Daniel Marjamäki * src/checkmemoryleak.cpp, src/cppcheck.cpp, test/testmemleak.cpp: memleak: corrected the wrong line number (#77) 2009-02-05 Reijo Tomperi * Makefile, cppcheck.cbp, test/testcppcheck.cpp: testcppcheck.cpp file added, test case "linenumbers" added, codeblocks project file updated 2009-02-05 Daniel Marjamäki * src/checkother.cpp, test/testincompletestatement.cpp: incomplete statement: minor update 2009-02-04 Daniel Marjamäki * test/testclass.cpp: activated TestClass:function 2009-02-04 Daniel Marjamäki * src/tokenize.cpp, test/testtokenize.cpp: remove casts: Added test case to ensure that function declarations are not reduced 2009-02-04 Daniel Marjamäki * test/testclass.cpp, test/testtokenize.cpp: testclass: added todo testcase for #74 2009-02-04 Daniel Marjamäki * src/checkother.cpp, src/checkother.h, src/errormessage.h, test/testother.cpp, tools/errmsg.cpp: returning pointer to local array 2009-02-04 Daniel Marjamäki * src/checkother.cpp, test/testcharvar.cpp: charvar: fixed todo testcase 2009-02-04 Daniel Marjamäki * test/testbufferoverrun.cpp: testbufferoverrun: activated test 2009-02-04 Daniel Marjamäki * src/checkmemoryleak.cpp, src/checkmemoryleak.h, test/testmemleak.cpp: memory leak: fixed ticket #9 2009-02-03 Reijo Tomperi * src/tokenize.cpp, test/testtokenize.cpp: Fixed varid is 0 bug which happened with sizeof(var[0]) and added testcase for it 2009-02-02 Reijo Tomperi * testrunner.vcproj: Updated testrunner.vcproj files 2009-02-02 Daniel Marjamäki * testrunner.vcproj: visual c++: added checkdangerousfunctions 2009-02-02 Daniel Marjamäki * createrelease: added createrelease script 2009-02-02 Daniel Marjamäki * src/tokenize.cpp, test/testtokenize.cpp: tokenizer: setvarid handle variable declaration at start of token list 2009-02-02 Daniel Marjamäki * src/tokenize.cpp, test/testtokenize.cpp: Tokenizer: sizeof handling of 'sizeof(var[0])' 2009-02-02 Daniel Marjamäki * src/tokenize.cpp, test/testtokenize.cpp: Tokenizer: setVarId improved to handle declaration at the first token 2009-02-02 Daniel Marjamäki * src/tokenize.cpp, test/testbufferoverrun.cpp, test/testtokenize.cpp: tokenizer: improved sizeof handling 2009-02-02 Daniel Marjamäki * test/testtokenize.cpp: TestTokenize: Added testcase sizeof2 (TODO) 2009-02-02 Daniel Marjamäki * test/testtokenize.cpp: testtokenize: sizeof handling 2009-02-02 Daniel Marjamäki * test/testmemleak.cpp: testmemleak: fixed a test case 2009-02-02 Daniel Marjamäki * src/checkmemoryleak.cpp: memory leaks: Minor fix to output correct severity 2009-02-02 Daniel Marjamäki * test/testmemleak.cpp: TestMemleak: Added test cases 2009-02-01 Daniel Marjamäki * src/cppcheck.cpp, src/cppcheck.h, src/cppcheckexecutor.cpp, src/cppcheckexecutor.h, src/errorlogger.h, src/errormessage.cpp, src/errormessage.h, src/settings.cpp, src/settings.h, test/testsuite.cpp, test/testsuite.h, tools/errmsg.cpp: xml: generating better xml output 2009-02-01 Daniel Marjamäki * tools/errmsg.cpp: astyle formatting 2009-02-01 Daniel Marjamäki * src/checkbufferoverrun.cpp, src/checkbufferoverrun.h, src/checkclass.cpp, src/checkfunctionusage.cpp, src/checkmemoryleak.cpp, src/checkother.cpp, src/errormessage.cpp, src/errormessage.h, tools/errmsg.cpp: errmsg: refactoring the error messages 2009-02-01 Daniel Marjamäki * src/cppcheck.cpp, src/cppcheck.rc, win_installer/cppcheck.iss: changed version to 1.28 2009-01-31 Reijo Tomperi * src/checkdangerousfunctions.cpp, src/checkdangerousfunctions.h, src/checkmemoryleak.cpp, src/checkmemoryleak.h: Removed some dead code and improved one function to use reference instead of a copy. 2009-01-31 Reijo Tomperi * man/cppcheck.1.xml: Fixed man page, previous version had while < and > should be used. 2009-01-31 Reijo Tomperi * src/checkbufferoverrun.cpp, src/checkbufferoverrun.h, src/checkdangerousfunctions.cpp, src/checkdangerousfunctions.h, src/checkother.h, src/preprocessor.h: Fixing files using dos-style line change to use unix-style line change. 2009-01-31 Reijo Tomperi * cppcheck.cbp: Updated codeblocks projectfile 2009-01-31 Daniel Marjamäki * tools/errmsg.cpp: removed unused function definition for stringifySeverity 2009-01-31 Kimmo Varis * cppcheck.vcproj: Add new files (Src/checkdangerousfunctions.cpp and .h) to Visual Studio project. 2009-01-31 Reijo Tomperi * src/checkdangerousfunctions.cpp, test/testdangerousfunctions.cpp: Running astyle for the previous commits 2009-01-31 Leandro Penz * Makefile, src/checkbufferoverrun.cpp, src/checkbufferoverrun.h, src/checkdangerousfunctions.cpp, src/checkdangerousfunctions.h, src/cppcheck.cpp, test/testdangerousfunctions.cpp: dangerousfunctions: added check for mktemp (ticket #69), and refatored gets and scanf check from bufferoverrun into dangerousfunctions. 2009-01-31 Daniel Marjamäki * src/checkmemoryleak.cpp, src/cppcheck.cpp, src/errormessage.h, test/testmemleak.cpp, tools/errmsg.cpp: mismatching allocation / deallocation: moved to --all 2009-01-31 Daniel Marjamäki * src/checkmemoryleak.cpp, src/checkmemoryleak.h, src/errormessage.h, test/testmemleak.cpp, tools/errmsg.cpp: errmsg: output severity in messages. a fix to track severity in the memory leaks check 2009-01-31 Daniel Marjamäki * test/testmemleak.cpp: mismatching allocation and deallocation: added test case that currently generates false positives 2009-01-31 Daniel Marjamäki * src/errormessage.h, test/testbufferoverrun.cpp, test/testcharvar.cpp, test/testclass.cpp, test/testconstructors.cpp, test/testdivision.cpp, test/testincompletestatement.cpp, test/testmemleak.cpp, test/testother.cpp, test/testredundantif.cpp, test/testunusedprivfunc.cpp, test/testunusedvar.cpp, tools/errmsg.cpp: errmsg: write severity in the message 2009-01-30 Daniel Marjamäki * test/testbufferoverrun.cpp: added test case TestBufferOverrun::sizeof2 2009-01-30 Daniel Marjamäki * test/testcharvar.cpp: added todo testcase 2009-01-28 Reijo Tomperi * man/cppcheck.1.xml: Updated man page for --unused-functions and --xml-results 2009-01-28 Daniel Marjamäki * test/testpreprocessor.cpp: preprocessor: Added testcase fmt2 that is commented out because it doesn't work yet 2009-01-28 Kimmo Varis * cppcheck.vcproj: Visual Studio: Remove incremental linking from release target due to other option disabling it and causing warning: Linking... LINK : warning LNK4075: ignoring '/INCREMENTAL' due to '/OPT:ICF' specification 2009-01-28 Daniel Marjamäki * src/tokenize.cpp, test/testbufferoverrun.cpp: tokenizer: fixed TestTokenizer::sizeof1 2009-01-28 Daniel Marjamäki * src/cppcheck.cpp, src/settings.cpp, src/settings.h: unused functions: Created command line parameter --unused-functions 2009-01-28 Daniel Marjamäki * src/cppcheck.cpp, src/settings.cpp, src/settings.h: xml results: added a command line switch for generating simple results.xml file 2009-01-28 Daniel Marjamäki * test/testbufferoverrun.cpp: bad sizeof handling 2009-01-28 Leandro Penz * src/checkmemoryleak.cpp: MatchFunctionsThatReturnArg: calling Match only once. 2009-01-27 Reijo Tomperi * src/tokenize.cpp, test/testsimplifytokens.cpp: Partial support for sizeof x, by converting it into sizeof(x). Does not handle complex structures. Closing ticket #65 2009-01-27 Reijo Tomperi * src/token.cpp, src/token.h, test/testtokenize.cpp: Fixed bug in multiCompare, which fixes ticket #66 ([False positive] "Buffer overrun" with "--all") 2009-01-27 Daniel Marjamäki * test/testclass.cpp: uninitialized member: don't check private constructors 2009-01-27 Daniel Marjamäki * src/tokenize.cpp: function parameters: fixed segmentation fault (derefence null) 2009-01-27 Daniel Marjamäki * src/checkother.cpp: sprintf overlapping data 2009-01-26 Reijo Tomperi * src/token.cpp, src/token.h, src/tokenize.cpp, src/tokenize.h, test/testtokenize.cpp: Fix ticket #25 (simplify "void f(x) int x; {" into "void f(int x) {") 2009-01-26 Daniel Marjamäki * src/checkother.cpp, src/errormessage.h, tools/errmsg.cpp: sprintf overlapping data: added extra text that is shown if --verbose is given 2009-01-26 Daniel Marjamäki * src/cppcheck.cpp, src/errormessage.h, tools/errmsg.cpp: errmsg: Moved 'function parameter parname is passed by value' to the style checks 2009-01-26 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: memleak: class function usage (fixing #63) 2009-01-26 Daniel Marjamäki * src/tokenize.cpp, src/tokenize.h, test/testtokenize.cpp: tokenizer: simplify redundant paranthesis 2009-01-25 Leandro Penz * src/checkmemoryleak.cpp, src/checkmemoryleak.h, test/testmemleak.cpp: memleak: strcat_result_assignment fixed by checking some functions for "x = func(x[),]". 2009-01-25 Daniel Marjamäki * test/testmemleak.cpp: testmemleak: removed the test case that was added in [1105]. It has been moved to the TestTokenizer instead 2009-01-25 Daniel Marjamäki * test/testtokenize.cpp: testtokenize: Added test case for simplifying '((x))' to '(x)' 2009-01-25 Daniel Marjamäki * test/testpreprocessor.cpp: testpreprocessor: removed unused test case 2009-01-25 Reijo Tomperi * test/testmemleak.cpp: Added test case complex_free 2009-01-25 Reijo Tomperi * test/testmemleak.cpp: Test case added: strcat_result_assignment 2009-01-25 Daniel Marjamäki * src/preprocessor.cpp, test/testpreprocessor.cpp: preprocessor: stringify macros 2009-01-25 Reijo Tomperi * src/cppcheck.h: Updated comments in code 2009-01-25 Reijo Tomperi * src/cppcheck.cpp: Fix ticket #58 (If given path is empty it is assumed that it wasn't given) 2009-01-24 Reijo Tomperi * src/tokenize.cpp: Fix ticket #57 (wrong path in error message) 2009-01-24 Daniel Marjamäki * src/preprocessor.cpp, test/testpreprocessor.cpp: preprocessor: insert space. '#if(' => '#if (' 2009-01-24 Leandro Penz * src/checkmemoryleak.cpp, test/testmemleak.cpp: memleak: *x=malloc(); func(&x) is no longer reported as a leak (eliminated &use2). 2009-01-24 Leandro Penz * test/testbufferoverrun.cpp: snprintf: more tests. 2009-01-24 Reijo Tomperi * src/tokenize.cpp, test/testpreprocessor.cpp: Added test case preprocessor_and_operation for ticket #55 (also fixed style from previous commit) 2009-01-24 Kimmo Varis * src/cppcheck.cpp: Fix two overly long lines in command line help. 2009-01-24 Daniel Marjamäki * test/testtokenize.cpp: testtokenize: updated 'TestTokenize::simplify_function_parameters' 2009-01-24 Kimmo Varis * cppcheck.vcproj: Visual Studio: add resource.h into VS project. 2009-01-24 Kimmo Varis * win_installer/cppcheck.iss, win_installer/modpath.iss: Ticket #34: Windows installer: Add cppcheck folder to system path. 2009-01-24 Daniel Marjamäki * src/tokenize.cpp: tokenizer: Added guard in case the preprocessor is mismatching 2009-01-24 Daniel Marjamäki * src/cppcheck.cpp: cppcheck: printing preprocessed file to 'temp.txt' 2009-01-24 Reijo Tomperi * src/cppcheck.cpp: Fixed ticket #54 (Make cppcheck print status e.g. 4/20 files checked) 2009-01-24 Reijo Tomperi * test/testtokenize.cpp: Added test case simplify_function_parameters 2009-01-23 Daniel Marjamäki * src/checkbufferoverrun.cpp, src/checkbufferoverrun.h, src/checkother.cpp, src/checkother.h, src/preprocessor.cpp, src/preprocessor.h, src/tokenize.cpp, src/tokenize.h: removed windows encodings 2009-01-23 Daniel Marjamäki * src/checkbufferoverrun.cpp, src/checkbufferoverrun.h, src/checkother.cpp, src/checkother.h, src/preprocessor.cpp, src/preprocessor.h, src/tokenize.cpp, src/tokenize.h: borland and visual c++ fixes 2009-01-23 Daniel Marjamäki * src/checkbufferoverrun.cpp: reverted [1084] it can be fixed better 2009-01-23 Daniel Marjamäki * src/checkbufferoverrun.cpp: borland: the strtol is found in 2009-01-23 Daniel Marjamäki * src/checkclass.cpp, src/checkmemoryleak.cpp, src/filelister.cpp: include: Had to include in a few places to be able to compile cppcheck 2009-01-23 Reijo Tomperi * src/preprocessor.cpp: Add additional checking to avoid ethernal loops when someone is using incorrect different case for the same file. It should be unlikely that anyone would actually use different files in the same project and separate them only by casing of some letters. 2009-01-23 Reijo Tomperi * src/checkbufferoverrun.cpp, src/checkclass.cpp, src/checkclass.h, src/checkheaders.cpp, src/checkmemoryleak.cpp, src/checkother.cpp, src/filelister.cpp, src/filelister.h, src/preprocessor.cpp, src/token.cpp, src/tokenize.cpp: Fixing ticket #35 (Get rid of #ifdefs in our code where possible) 2009-01-23 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: memory leak: don't give false positive when deallocating member variable this->i (#53) 2009-01-23 Daniel Marjamäki * test/testsuite.cpp: removed compiler warning 2009-01-23 Daniel Marjamäki * src/cppcheck.cpp: better fix to get rid of compiler warning is to comment the function parameter 2009-01-23 Reijo Tomperi * src/cppcheck.cpp, src/preprocessor.cpp: Fixed Ticket #52, Cppcheck hangs when checking VLC's source code 2009-01-23 Daniel Marjamäki * src/preprocessor.cpp, test/testpreprocessor.cpp: preprocessor: fixed bug with mixed macros ABC and ABCD 2009-01-23 Daniel Marjamäki * src/preprocessor.cpp: removed bam coding 2009-01-23 Daniel Marjamäki * src/preprocessor.cpp: preprocessor: The stdlib.h is needed for the exit function 2009-01-22 Daniel Marjamäki * src/cppcheck.cpp: cppcheck: The '&&' should be '||' when checking if a check should be called 2009-01-22 Daniel Marjamäki * Makefile, tools/dmake.cpp: Build: Enabled the Wextra flag when building cppcheck 2009-01-22 Reijo Tomperi * man/cppcheck.1.xml, src/cppcheck.cpp: Fix Ticket #46, invalid commandline. (Also added -h and --help parameters) 2009-01-22 Daniel Marjamäki * src/preprocessor.cpp, test/testpreprocessor.cpp: preprocessor: handle redefinition of macro 2009-01-22 Reijo Tomperi * man/cppcheck.1.xml, src/cppcheck.cpp, src/cppcheck.h, src/preprocessor.cpp, src/preprocessor.h: Fix Ticket #30, Need a way to specify include file folders (-I parameter was added) 2009-01-22 Daniel Marjamäki * src/preprocessor.cpp, test/testpreprocessor.cpp: preprocessor: handle include guards by not checking for configurations in header files 2009-01-21 Nicolas Le Cam * src/preprocessor.cpp: Code cleanup. 2009-01-21 Reijo Tomperi * src/errormessage.h, src/preprocessor.cpp: Fixed style 2009-01-21 Nicolas Le Cam * src/preprocessor.cpp, test/testpreprocessor.cpp: Fix Preprocessor::read to handle char constant of more than one char, fixing issue #45; Fix the test that handle the case. 2009-01-21 Nicolas Le Cam * src/checkother.cpp, src/checkother.h, src/cppcheck.cpp, src/errormessage.h, test/testunusedvar.cpp, tools/errmsg.cpp: Remove checks that are already covered well by most compilers (Unreachable Code; Assignment in Condition; Unused Variable). 2009-01-21 Reijo Tomperi * src/cppcheck.cpp, src/preprocessor.cpp, src/preprocessor.h, test/testpreprocessor.cpp: Fix Ticket #43, preprocessor: include file doesn't work so good in subfolders (note, because of other issues, checking will be very slow now that this is fixed) 2009-01-21 Reijo Tomperi * man/cppcheck.1.xml, src/checkbufferoverrun.cpp, src/checkbufferoverrun.h, src/checkclass.cpp, src/checkclass.h, src/checkfunctionusage.cpp, src/checkfunctionusage.h, src/checkheaders.cpp, src/checkheaders.h, src/checkmemoryleak.cpp, src/checkmemoryleak.h, src/checkother.cpp, src/checkother.h, src/cppcheck.cpp, src/cppcheck.h, src/cppcheckexecutor.cpp, src/cppcheckexecutor.h, src/errorlogger.h, src/errormessage.cpp, src/errormessage.h, src/filelister.cpp, src/filelister.h, src/main.cpp, src/preprocessor.cpp, src/preprocessor.h, src/settings.cpp, src/settings.h, src/token.cpp, src/token.h, src/tokenize.cpp, src/tokenize.h, test/testbufferoverrun.cpp, test/testcharvar.cpp, test/testclass.cpp, test/testconstructors.cpp, test/testdivision.cpp, test/testfilelister.cpp, test/testfunctionusage.cpp, test/testincompletestatement.cpp, test/testmemleak.cpp, test/testmemleakmp.cpp, test/testother.cpp, test/testpreprocessor.cpp, test/testredundantif.cpp, test/testrunner.cpp, test/testsimplifytokens.cpp, test/testsuite.cpp, test/testsuite.h, test/testtoken.cpp, test/testtokenize.cpp, test/testunusedprivfunc.cpp, test/testunusedvar.cpp, tools/dmake.cpp, tools/errmsg.cpp: Fixed Ticket #40, Check copyright texts in files, now that we have new developers. 2009-01-21 Reijo Tomperi * test/testpreprocessor.cpp: Added test case multi_character_character 2009-01-21 Daniel Marjamäki * src/checkclass.cpp, src/cppcheck.cpp: uninitialized variables: run always 2009-01-21 Nicolas Le Cam * src/checkother.cpp: Fix CheckOther::functionVariableUsage, passing a variable to a function also means reading it. 2009-01-21 Daniel Marjamäki * src/preprocessor.cpp, test/testpreprocessor.cpp: preprocessor: handled problem with parsing strings when expanding macros 2009-01-21 Daniel Marjamäki * src/tokenize.cpp: code style 2009-01-21 Daniel Marjamäki * test/testpreprocessor.cpp: preprocessor: Added todo test. It crashes when it's used 2009-01-20 Nicolas Le Cam * src/tokenize.cpp: Fix Tokenizer::setVarId for pointers and two types variable declaration 2009-01-20 Nicolas Le Cam * src/checkother.cpp: CheckOther::functionVariableUsage: minor optimization. 2009-01-20 Nicolas Le Cam * src/token.cpp: Token::Match: Allow pattern like '*|' 2009-01-20 Reijo Tomperi * src/tokenize.cpp, test/testtokenize.cpp: Fixes test case "file2", fixes bug with include file handling 2009-01-20 Nicolas Le Cam * src/checkmemoryleak.cpp, src/tokenize.cpp: Tokenizer: Remove 'unlikely' keyword in simplifyTokenList; Don't check for it in CheckMemoryLeak. 2009-01-20 Daniel Marjamäki * using_gcov.txt: doc: how to use gcov 2009-01-20 Daniel Marjamäki * src/preprocessor.cpp, test/testpreprocessor.cpp: preprocessor: Handle ## 2009-01-20 Daniel Marjamäki * src/tokenize.cpp, test/testtokenize.cpp: tokenizer: tokenize ## better 2009-01-20 Daniel Marjamäki * test/testtokenize.cpp: tokenizer: added testcase with include files. It should be fixed. 2009-01-20 Daniel Marjamäki * src/token.cpp, src/token.h, src/tokenize.cpp, src/tokenize.h: code cleanup 2009-01-19 Reijo Tomperi * src/errormessage.h, test/testpreprocessor.cpp: Added test case preprocessor_doublesharp, executed ./runastyle for errormessage.h 2009-01-19 Nicolas Le Cam * src/checkother.cpp, src/cppcheck.cpp, src/errormessage.h: Update errormessage.h and code using it. 2009-01-19 Nicolas Le Cam * tools/errmsg.cpp: errmsg: Don't create unused parameters 2009-01-19 Reijo Tomperi * cppcheck.cbp: codeblocks project file changed to use make target testrunner, instead of test 2009-01-19 Reijo Tomperi * src/preprocessor.cpp, test/testpreprocessor.cpp: Added a test case and fixed bug. If #include was inside a string, cppcheck hanged in preprocessor. 2009-01-19 Reijo Tomperi * src/cppcheck.cpp: Changed output of the program to print out the file name before preprocessor. 2009-01-19 Reijo Tomperi * src/tokenize.cpp, test/testtokenize.cpp: Fixed bug in line numbers and enabled test case that spots it. 2009-01-19 Daniel Marjamäki * test/testtokenize.cpp: testtokenize: Added test "file1". It currently fails. 2009-01-19 Daniel Marjamäki * src/tokenize.cpp: tokenizer: activated the handling of #file and #endfile 2009-01-19 Daniel Marjamäki * src/preprocessor.cpp: preprocessor: Activated the include handling 2009-01-19 Daniel Marjamäki * test/testtokenize.cpp: testtokenize: Removed unneeded test case "define1" 2009-01-19 Daniel Marjamäki * test/testpreprocessor.cpp: testpreprocessor: Removed test that doesn't work now that the preprocessor handles includes 2009-01-19 Kimmo Varis * src/cppcheck.rc: Visual Studio: Fix building resource file with Visual Studio Express. 2009-01-18 Nicolas Le Cam * : Add bugtraq:url and bugtraq:logregex properties 2009-01-18 Reijo Tomperi * src/preprocessor.cpp: Fixing crash, not sure about side effects. Ticket #37 2009-01-18 Reijo Tomperi * src/checkother.cpp, src/preprocessor.cpp: Added temporary bailout code, cppcheck crashes when string checking leaks out. This needs a better fix, this is just to see the problem more easily. 2009-01-18 Nicolas Le Cam * src/checkother.cpp, test/testother.cpp: unreachableCode: Moved warning of a break statement following a return in --style; Added a test case; Minor optimization. 2009-01-18 Leandro Penz * src/checkother.cpp, test/testunusedvar.cpp: functionVariableUsage: no longer SIGSEGVs on unfinished struct. Fixes Ticket #31. 2009-01-18 Reijo Tomperi * src/preprocessor.cpp, src/tokenize.cpp, src/tokenize.h: More work for includes, still commented out. Uncomment from tokenize.cpp and preprocessor.cpp to take into use. 2009-01-18 Reijo Tomperi * src/preprocessor.cpp, src/preprocessor.h: More work for includes, still commented out. Tokenizer needs #file handling 2009-01-18 Daniel Marjamäki * src/preprocessor.cpp: code style fix 2009-01-18 Daniel Marjamäki * src/checkother.cpp, test/testother.cpp: strPlusChar: Fixed false positives 2009-01-18 Reijo Tomperi * src/preprocessor.cpp, src/preprocessor.h: Some work for the include support (commented out for now) 2009-01-18 Daniel Marjamäki * test/testpreprocessor.cpp: preprocessor: make sure macros are not expanded when they are found in strings 2009-01-18 Daniel Marjamäki * src/preprocessor.cpp, test/testpreprocessor.cpp: preprocessor: Make sure that "#define ABC (a+b+c)" is expanded correctly 2009-01-18 Daniel Marjamäki * src/preprocessor.cpp: preprocessor: Reactivated the expandMacros. This time it's done after the #if #else #endif has been processed 2009-01-18 Daniel Marjamäki * src/preprocessor.cpp, test/testpreprocessor.cpp: preprocessor: fixed so the TestPreprocessor::preprocessor_undef succeeds 2009-01-18 Kimmo Varis * win_installer/readme.txt: Improve the Windows installer readme text. 2009-01-18 Daniel Marjamäki * src/preprocessor.cpp: style updated 2009-01-18 Daniel Marjamäki * src/preprocessor.cpp: preprocessor: Refactoring. Broke out some functionality of expandMacros into a class Macro 2009-01-18 Reijo Tomperi * test/testtokenize.cpp: Fix compile warning signed-unsigned 2009-01-18 Reijo Tomperi * test/testtokenize.cpp: Refactoring: Style applied 2009-01-18 Daniel Marjamäki * src/preprocessor.cpp, src/preprocessor.h, test/testpreprocessor.cpp: Preprocessor: Reverted [1008] - The old expandMacros was readded 2009-01-18 Kimmo Varis * src/cppcheck.rc, src/resource.h: Fix VS build broken due to tripled version resource info. 2009-01-18 Daniel Marjamäki * test/testtokenize.cpp: Tokenizer: Added unit test to check that define is tokenized correctly 2009-01-18 Daniel Marjamäki * src/tokenize.cpp, test/testtokenize.cpp: tokenizer: The tokenizer shouldn't handle comments nor preprocessor directives. The preprocessor will take care of that 2009-01-18 Daniel Marjamäki * src/preprocessor.cpp, src/preprocessor.h, test/testpreprocessor.cpp: Preprocessor: Removed "Preprocessor::expandMacros" and commented all its tests 2009-01-18 Daniel Marjamäki * src/preprocessor.cpp: preprocessor: Don't use the "expandMacros" from cppcheck 2009-01-17 Reijo Tomperi * src/checkclass.cpp, test/testclass.cpp: Fix Ticket #32 False positive with --style: Uninitialized member variable (when stream is used) 2009-01-17 Kimmo Varis * src/filelister.cpp: Does not understand . as current folder (Trac #4) 2009-01-17 Reijo Tomperi * test/testclass.cpp: Test case for Ticket #32 2009-01-17 Daniel Marjamäki * src/checkother.cpp, test/testunusedvar.cpp: unused var: fixed false positives when using shift operator 2009-01-17 Reijo Tomperi * tasks.txt: Removed tasks.txt, most of it is moved to Track, some general issues were not 2009-01-17 Daniel Marjamäki * src/checkbufferoverrun.cpp, src/errormessage.h, src/resource.h, test/testbufferoverrun.cpp, tools/errmsg.cpp: bounds checking: Added error message "snprintf size is out of bounds" 2009-01-17 Reijo Tomperi * cppcheck.vcproj, src/cppcheck.rc, src/resource.h: Patch [ 2508549 ] Add Windows version resource 2009-01-17 Reijo Tomperi * win_installer/cppcheck.iss, win_installer/readme.txt: patch [ 2508523 ] Windows installer (with readme.txt based on patch comments) 2009-01-17 Daniel Marjamäki * src/checkmemoryleak.cpp, src/errormessage.h, test/testmemleak.cpp, tools/errmsg.cpp: errmsg: added varname to the message "deallocating a deallocated pointer" 2009-01-17 Daniel Marjamäki * src/checkother.cpp, test/testunusedvar.cpp: unused variable: reading the value of variable in a for loop.. "for(;a;)" see ticket #18 2009-01-17 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: memory leak: detect memory leak (#6) 2009-01-16 Reijo Tomperi * src/cppcheck.cpp: Added .c++ to help texts also. 2009-01-16 Daniel Marjamäki * src/preprocessor.cpp: preprocessor: bail out code in expandMacros 2009-01-16 Reijo Tomperi * src/filelister.cpp: Add support for .c++ files ( Debian Bug#512060: cppcheck: refuses to check .c++ files ) 2009-01-16 Daniel Marjamäki * src/preprocessor.cpp: preprocessor: Fixed a null pointer dereference 2009-01-16 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: Memory leak: Fixed false positives about deallocating pointer that has already been deallocated 2009-01-16 Daniel Marjamäki * src/checkfunctionusage.cpp: function usage: don't report "main" and "if" as unused 2009-01-16 Daniel Marjamäki * src/checkmemoryleak.cpp: memory leak: don't show debug info 2009-01-16 Kimmo Varis * testrunner.vcproj: Visual Studio: fix testrunner project file by adding subfolders to paths. Disable 'warnings as errors' as there are lots of warnings. 2009-01-15 Daniel Marjamäki * src/checkmemoryleak.cpp, src/errormessage.h, test/testmemleak.cpp, tools/errmsg.cpp: memory leaks: Added checking of deallocate to see that the pointer isn't deallocated already 2009-01-15 Daniel Marjamäki * src/checkother.cpp: code style 2009-01-15 Daniel Marjamäki * src/checkother.cpp, test/testother.cpp: str plus char: added simple variable handling 2009-01-15 Daniel Marjamäki * src/checkother.cpp: code style fixing 2009-01-15 Daniel Marjamäki * src/checkother.cpp, src/checkother.h, src/cppcheck.cpp, src/errormessage.h, test/testother.cpp, tools/errmsg.cpp: str plus char: Added check and error message for str + ch 2009-01-14 Daniel Marjamäki * src/preprocessor.cpp: preprocessor: Bail out the expandMacros if it finds "#undef". The previous handling can cause cppcheck to hang 2009-01-14 Daniel Marjamäki * src/checkother.cpp, src/cppcheck.cpp, src/errormessage.h, test/testclass.cpp, tools/errmsg.cpp: errmsg: Added 'condition is always true/false' 2009-01-14 Daniel Marjamäki * src/checkclass.cpp, test/testclass.cpp: Uninitialized member variables: Checking enum variables 2009-01-14 Daniel Marjamäki * src/preprocessor.cpp: preprocessor: a segmentation fault fix. Check if tokens is null. 2009-01-14 Daniel Marjamäki * src/checkmemoryleak.cpp: dos2unix fixing 2009-01-14 Daniel Marjamäki * test/testmemleak.cpp: memory leak: Added test case 2009-01-14 Daniel Marjamäki * src/checkmemoryleak.cpp: memory leak: fixed false positive about using variable after it is released 2009-01-14 Daniel Marjamäki * src/cppcheck.cpp: cppcheck: added function call to the variable scope check. 2009-01-14 Daniel Marjamäki * cppcheck.vcproj: Visual C++: Added "src/errormessage.*" to the project file 2009-01-14 Daniel Marjamäki * src/checkbufferoverrun.cpp, src/checkbufferoverrun.h, test/testbufferoverrun.cpp: buffer overruns: added sprintf checking 2009-01-14 Daniel Marjamäki * src/checkbufferoverrun.h: doxygen: Added comments in checkbufferoverrun.h 2009-01-14 Daniel Marjamäki * src/checkmemoryleak.cpp, src/checkmemoryleak.h, test/testmemleak.cpp: Memory leak: Readded some checking to classes 2009-01-14 Leandro Penz * src/checkother.cpp: unreachableCode: avoid SIGSEGV when there is no "}" after return. 2009-01-14 Leandro Penz * src/checkother.cpp, test/testunusedvar.cpp: functionVariableUsage: support for nested struct/union declaration. 2009-01-13 Daniel Marjamäki * src/checkmemoryleak.cpp, test/testmemleak.cpp: Memory leak: Fixed a false positive 2009-01-13 Daniel Marjamäki * src/checkfunctionusage.cpp, src/checkother.cpp, src/cppcheck.cpp, src/errormessage.h, tools/errmsg.cpp: errmsg: Added 'assignment in if-condition' 2009-01-13 Daniel Marjamäki * src/checkother.cpp, src/cppcheck.cpp, src/errormessage.h, tools/errmsg.cpp: errmsg: refactoring 2009-01-12 Daniel Marjamäki * test/testpreprocessor.cpp: testpreprocessor: commented the "undef" test that doesn't work 2009-01-12 Daniel Marjamäki * src/checkother.cpp, src/cppcheck.cpp, src/errormessage.h, tools/errmsg.cpp: errmsg: added message about bad usage of char variable 2009-01-12 Reijo Tomperi * test/testpreprocessor.cpp: Added test case which currently fails, #undef is not handled 2009-01-12 Daniel Marjamäki * src/checkother.cpp, src/cppcheck.cpp, src/errormessage.h, tools/errmsg.cpp: errmsg: Added message for 'incomplete statement' 2009-01-12 Daniel Marjamäki * src/checkother.cpp, src/cppcheck.cpp, src/errormessage.h, tools/errmsg.cpp: errmsg: Added messages for 'variable is not used / not read / not assigned' 2009-01-12 Daniel Marjamäki * src/checkother.cpp, src/cppcheck.cpp, src/errormessage.h, tools/errmsg.cpp: errmsg: Added message 'function parameter is passed by value' 2009-01-12 Daniel Marjamäki * src/checkother.cpp, src/cppcheck.cpp, src/errormessage.h, tools/errmsg.cpp: errmsg: added message 'unreachable code below return' 2009-01-12 Daniel Marjamäki * src/checkother.cpp, src/cppcheck.cpp, src/errormessage.h, tools/errmsg.cpp: errmsg: Added 'unused struct member' 2009-01-12 Daniel Marjamäki * test/testdivision.cpp: testdivision: The 'unsigned division' is a style check 2009-01-12 Daniel Marjamäki * src/errormessage.h, tools/errmsg.cpp: errmsg: Made the 'unsigned division' a style error 2009-01-12 Daniel Marjamäki * src/checkother.cpp, src/checkother.h, src/cppcheck.cpp, src/errormessage.h, test/testcharvar.cpp, test/testdivision.cpp, test/testincompletestatement.cpp, test/testother.cpp, test/testredundantif.cpp, test/testunusedvar.cpp, tools/errmsg.cpp: errmsg: Added 'unsigned division' 2009-01-12 Daniel Marjamäki * src/checkclass.cpp: refactoring: cleanup old code 2009-01-12 Daniel Marjamäki * src/checkother.cpp, src/cppcheck.cpp, src/errormessage.h, tools/errmsg.cpp: errmsg: Added message 'Overlapping data buffer' 2009-01-12 Daniel Marjamäki * src/checkother.cpp, src/cppcheck.cpp, src/errormessage.h, tools/errmsg.cpp: errmsg: Added "found redundant if - 'if (condition);' 2009-01-12 Daniel Marjamäki * src/preprocessor.cpp, test/testpreprocessor.cpp: preprocessor: Style updates 2009-01-12 Daniel Marjamäki * src/preprocessor.cpp, test/testpreprocessor.cpp: preprocessor: Handle newlines better 2009-01-11 Daniel Marjamäki * src/preprocessor.cpp, test/testpreprocessor.cpp: preprocessor: fixed a small bug when expanding macro without parameter 2009-01-11 Daniel Marjamäki * src/preprocessor.cpp, test/testpreprocessor.cpp: preprocessor: Fixed bug when expanding macros without parameters 2009-01-11 Daniel Marjamäki * src/preprocessor.cpp, test/testpreprocessor.cpp: preprocessor: expand macro without parameters 2009-01-11 Daniel Marjamäki * src/checkother.cpp, test/testunusedvar.cpp: struct member usage: bail out the check if the struct contain any functions 2009-01-11 Daniel Marjamäki * src/tokenize.cpp, test/testother.cpp: setVarId: Fixed bug (variable id for struct member not correctly set) 2009-01-11 Daniel Marjamäki * test/testpreprocessor.cpp: preprocessor: Added a test to see that "" is handled correctly inside strings 2009-01-11 Daniel Marjamäki * src/checkfunctionusage.cpp, src/errormessage.h, src/preprocessor.cpp, tools/errmsg.cpp: errmsg: the "unused function" message shall not take any Tokenizer nor Token parameters 2009-01-11 Daniel Marjamäki * src/preprocessor.cpp, test/testpreprocessor.cpp: preprocessor: Handle "" better 2009-01-11 Daniel Marjamäki * Makefile, src/checkfunctionusage.cpp, src/cppcheck.cpp, src/errormessage.h, src/settings.cpp, src/settings.h, tools/errmsg.cpp: errmsg: added "unused function" 2009-01-11 Daniel Marjamäki * Makefile, tools/dmake.cpp: dmake: Minor updates. Moved target "all" a little. Handle the change 937 where "make test" also executes testrunner 2009-01-10 Leandro Penz * Makefile: make test now builds everything and runs all tests. 2009-01-10 Leandro Penz * src/token.cpp, test/testtokenize.cpp: match: skip initial !! patterns if on first token. 2009-01-10 Leandro Penz * src/token.cpp: match: optimisation 2009-01-10 Daniel Marjamäki * src/checkmemoryleak.cpp, src/cppcheck.cpp, src/errormessage.h, tools/errmsg.cpp: errmsg: added "mismatching allocation and deallocation" 2009-01-10 Daniel Marjamäki * src/cppcheck.cpp: cppcheck: Minor bug fix 2009-01-10 Daniel Marjamäki * Makefile, src/checkbufferoverrun.cpp, src/checkbufferoverrun.h, src/cppcheck.cpp, src/errormessage.h, tools/errmsg.cpp: errmsg: Added error messages for "Array index out of bounds" and "Buffer overrun" 2009-01-10 Daniel Marjamäki * src/checkclass.cpp, src/cppcheck.cpp, src/errormessage.h, tools/errmsg.cpp: errmsg: added error message about virtual destructors 2009-01-10 Daniel Marjamäki * src/checkclass.cpp, src/cppcheck.cpp, src/errormessage.h, tools/errmsg.cpp: errmsg: Added "operator= should return something 2009-01-10 Daniel Marjamäki * src/checkclass.cpp, src/cppcheck.cpp, src/errormessage.h, tools/errmsg.cpp: errmsg: Added "Using 'memset' on class" 2009-01-10 Daniel Marjamäki * src/checkclass.cpp, src/cppcheck.cpp, src/errormessage.h, test/testunusedprivfunc.cpp, tools/errmsg.cpp: errmsg: Added "Unused private function ..." 2009-01-10 Daniel Marjamäki * src/checkclass.cpp, src/cppcheck.cpp, src/errormessage.h, test/testconstructors.cpp, tools/errmsg.cpp: errmsg: Added "uninitialized member variable" 2009-01-10 Leandro Penz * src/checkmemoryleak.cpp, test/testmemleak.cpp: checkmemoryleak: no longer flag "dealloc ; alloc ; if continue ;" as a leak, even with --all 2009-01-10 Daniel Marjamäki * src/checkother.cpp, test/testunusedvar.cpp: unused struct member: fixed false positive for member "const int a;" 2009-01-10 Daniel Marjamäki * src/checkclass.cpp, test/testother.cpp, tools/errmsg.cpp: astyle: updated the code style 2009-01-10 Daniel Marjamäki * src/checkother.cpp, test/testother.cpp: sprintf: fixed bug "false positive when variable is used again after snprintf" 2009-01-10 Daniel Marjamäki * Makefile, src/checkclass.cpp, src/cppcheck.cpp, src/errormessage.h, test/testconstructors.cpp, tools/errmsg.cpp: errmsg: Added errormessage for 'the class 'classname' doesn't have a constructor' 2009-01-10 Daniel Marjamäki * src/errormessage.h, tools/errmsg.cpp: errmsg: bug fix 2009-01-10 Daniel Marjamäki * src/checkother.cpp, test/testother.cpp: sprintf: fixed false positives with "sprintf(buf, "%i", sizeof(buf)); 2009-01-10 Daniel Marjamäki * tools/errmsg.cpp: errmsg: reformatted with astyle 2009-01-10 Daniel Marjamäki * tools/errmsg.cpp: errmsg: The generated code is compliant with the astyle formatting 2009-01-10 Daniel Marjamäki * Makefile, tools/dmake.cpp: dmake: minor fixes. The tools binaries will be put in the tools folder 2009-01-10 Daniel Marjamäki * src/token.cpp: match: optimisation 2009-01-10 Daniel Marjamäki * src/preprocessor.cpp: preprocessor: code style fixing 2009-01-10 Daniel Marjamäki * src/preprocessor.cpp: preprocessor: handle the \newline in strings 2009-01-10 Leandro Penz * src/token.cpp, test/testtokenize.cpp: token: when Token::Match reached the end of input, it returned true if the next pattern was !!. It now returns true only if all remaining patterns are !!. 2009-01-09 Reijo Tomperi * tasks.txt: tasks updated, parseArgs refactoring idea was rejected 2009-01-09 Daniel Marjamäki * tasks.txt: tasks: removed the "new checks" sections because these are better reported in the tracker 2009-01-09 Daniel Marjamäki * Makefile, tools/dmake.cpp: make: updated the make so that the tools are built with "make all". And added the errormessage.h generator to the makefile also 2009-01-09 Daniel Marjamäki * src/checkother.cpp, src/cppcheck.cpp, src/errormessage.h, tools/errmsg.cpp: errormessage: added error message ErrorMessage::dangerousUsageStrtol 2009-01-09 Daniel Marjamäki * src/errormessage.cpp: errormessage: added header 2009-01-09 Daniel Marjamäki * tools/dmake.cpp: dmake: don't generate Makefile if there are no src files 2009-01-09 Daniel Marjamäki * src/tokenize.cpp: tokenize: avoid "terminate called after throwing an instance of 'std::out_of_range'" 2009-01-08 Reijo Tomperi * cppcheck.cbp, test/testpreprocessor.cpp: Added test case for preprocessor which currently fails. codeblocks project file updated, tools-files added. 2009-01-08 Reijo Tomperi * src/cppcheck.cpp, src/cppcheck.h, src/cppcheckexecutor.cpp, src/cppcheckexecutor.h, src/main.cpp: Main returns now EXIT_SUCCESS or EXIT_FAILURE instead of 0. Feature request fixed: [ 2489787 ] Return value of cppcheck is always 0 2009-01-08 Reijo Tomperi * src/checkother.cpp, src/cppcheck.cpp, src/errormessage.h, test/testother.cpp: astyle changes, missed from previous commits 2009-01-08 Reijo Tomperi * Makefile, tools/dmake.cpp: Fixed make install from the generated makefile 2009-01-08 Daniel Marjamäki * Makefile, src/checkother.cpp, src/cppcheck.cpp, src/errormessage.h, test/testredundantif.cpp, tools/errmsg.cpp: errormessage: Added a few more messages for checkother.cpp 2009-01-08 Reijo Tomperi * src/errormessage.h, tools/errmsg.cpp: Added license text to errormessage.h (via code tha generates it) and also mention that it is generated by machine 2009-01-08 Daniel Marjamäki * src/checkmemoryleak.cpp, src/cppcheck.cpp, tasks.txt: errormessage: Added the new errormessage handling to cppcheck 2009-01-08 Daniel Marjamäki * src/errormessage.cpp, src/errormessage.h: errormessage: updated the files. the errormessage.h is automaticly generated by the tools/errmsg program 2009-01-08 Daniel Marjamäki * tools/errmsg.cpp: tools/errmsg: some refactoring 2009-01-08 Daniel Marjamäki * src/checkother.cpp, test/testother.cpp: sprintf: check for dangerous usage with sprintf|snprintf with overlapping data 2009-01-08 Daniel Marjamäki * runastyle: runastyle : also set the code style in the tools 2009-01-08 Daniel Marjamäki * tools/dmake.cpp, tools/errmsg.cpp: tools: Added headers to source files 2009-01-07 Daniel Marjamäki * src/checkmemoryleak.cpp, src/checkmemoryleak.h, src/tokenize.cpp, test/testmemleak.cpp: Simplify tokens: add a ";" after case and default 2009-01-07 Daniel Marjamäki * src/preprocessor.cpp: preprocessor: applied patch submitted by kimmov 2009-01-07 Daniel Marjamäki * src/checkclass.cpp, src/checkmemoryleak.cpp, src/preprocessor.cpp, src/token.cpp, src/tokenize.cpp: Reverted [890] it cause more problems with Visual C++ 2009-01-07 Daniel Marjamäki * cppcheck.vcproj: Visual C++: Applied patch "fix_vs_project.patch" that kimmov submitted 2009-01-07 Daniel Marjamäki * tools/dmake.cpp, tools/errmsg.cpp: tools: updated the code style 2009-01-07 Daniel Marjamäki * src/checkclass.cpp, src/checkmemoryleak.cpp, src/preprocessor.cpp, src/token.cpp, src/tokenize.cpp: Borland C++: Removed unneeded ifdefs 2009-01-07 Daniel Marjamäki * runastyle.bat: windows: Added runastyle.bat 2009-01-07 Daniel Marjamäki * cppcheck.cbproj, testrunner.cbproj: Borland C++: Updated the project files 2009-01-06 Reijo Tomperi * src/checkmemoryleak.cpp: Optimization: 6,2 s -> 5,6 s 2009-01-06 Reijo Tomperi * cppcheck.cbp: Changed codeblocks project file to reflect new build targets 2009-01-06 Daniel Marjamäki * Makefile, tools/dmake.cpp: tools/dmake: A few simple fixes. Commited the new Makefile 2009-01-06 Daniel Marjamäki * tools/Makefile, tools/dmake.cpp: tools: dmake added a tool for maintaining the Makefile 2009-01-06 Reijo Tomperi * doxyfile, tasks.txt: Doxyfile added 2009-01-06 Daniel Marjamäki * tools/errmsg.cpp: tools/errmsg: minor fixes 2009-01-06 Daniel Marjamäki * tools/errmsg.cpp: tools/errmsg: code correction 2009-01-06 Daniel Marjamäki * tools/errmsg.cpp: tools/errmsg: generate documentation 2009-01-06 Daniel Marjamäki * tools/errmsg.cpp: tools/errmsg: generate the function to use when determining if a check should be done or not 2009-01-06 Daniel Marjamäki * tools/errmsg.cpp: tools: Added a folder where we can keep small usable utilities 2009-01-06 Reijo Tomperi * Makefile, checkbufferoverrun.cpp, checkbufferoverrun.h, checkclass.cpp, checkclass.h, checkfunctionusage.cpp, checkfunctionusage.h, checkheaders.cpp, checkheaders.h, checkmemoryleak.cpp, checkmemoryleak.h, checkother.cpp, checkother.h, cppcheck.cbp, cppcheck.cpp, cppcheck.h, cppcheckexecutor.cpp, cppcheckexecutor.h, errorlogger.h, errormessage.cpp, errormessage.h, filelister.cpp, filelister.h, main.cpp, preprocessor.cpp, preprocessor.h, runastyle, settings.cpp, settings.h, src/checkbufferoverrun.cpp, src/checkbufferoverrun.h, src/checkclass.cpp, src/checkclass.h, src/checkfunctionusage.cpp, src/checkfunctionusage.h, src/checkheaders.cpp, src/checkheaders.h, src/checkmemoryleak.cpp, src/checkmemoryleak.h, src/checkother.cpp, src/checkother.h, src/cppcheck.cpp, src/cppcheck.h, src/cppcheckexecutor.cpp, src/cppcheckexecutor.h, src/errorlogger.h, src/errormessage.cpp, src/errormessage.h, src/filelister.cpp, src/filelister.h, src/main.cpp, src/preprocessor.cpp, src/preprocessor.h, src/settings.cpp, src/settings.h, src/token.cpp, src/token.h, src/tokenize.cpp, src/tokenize.h, test/testbufferoverrun.cpp, test/testcharvar.cpp, test/testclass.cpp, test/testconstructors.cpp, test/testdivision.cpp, test/testfilelister.cpp, test/testfunctionusage.cpp, test/testincompletestatement.cpp, test/testmemleak.cpp, test/testmemleakmp.cpp, test/testother.cpp, test/testpreprocessor.cpp, test/testredundantif.cpp, test/testrunner.cpp, test/testsimplifytokens.cpp, test/testsuite.cpp, test/testsuite.h, test/testtoken.cpp, test/testtokenize.cpp, test/testunusedprivfunc.cpp, test/testunusedvar.cpp, testbufferoverrun.cpp, testcharvar.cpp, testclass.cpp, testconstructors.cpp, testdivision.cpp, testfilelister.cpp, testfunctionusage.cpp, testincompletestatement.cpp, testmemleak.cpp, testmemleakmp.cpp, testother.cpp, testpreprocessor.cpp, testredundantif.cpp, testrunner.cpp, testsimplifytokens.cpp, testsuite.cpp, testsuite.h, testtoken.cpp, testtokenize.cpp, testunusedprivfunc.cpp, testunusedvar.cpp, token.cpp, token.h, tokenize.cpp, tokenize.h: Refactoring: Added src/ and test/ folders. Moved source files to those folders, updated makefile and codeblocks project file. 2009-01-06 Daniel Marjamäki * tasks.txt: tasks : Added tasks to create a doxygen project file 2009-01-06 Daniel Marjamäki * tasks.txt: tasks: rewrote the tasks file 2009-01-06 Daniel Marjamäki * preprocessor.cpp, testpreprocessor.cpp: Preprocessor: Refactoring the unit testing. And enabled the macro expansion 2009-01-06 Daniel Marjamäki * preprocessor.cpp, testpreprocessor.cpp: Preprocessor: Improved handling of multiline macros 2009-01-06 Daniel Marjamäki * Makefile: Makefile: Fixed the preprocessor dependencies 2009-01-05 Reijo Tomperi * tasks.txt: tasks.txt updated, %var1% task is done 2009-01-05 Reijo Tomperi * checkmemoryleak.cpp, token.cpp, token.h: Refactoring: %var1% complitely removed. Execution time increased from 4,7 to 6,2 seconds. 2009-01-05 Reijo Tomperi * checkmemoryleak.cpp: Refactoring: Getting rid of %var1% 2009-01-05 Reijo Tomperi * checkmemoryleak.cpp: Refactoring: Getting rid of %var1% 2009-01-05 Daniel Marjamäki * testpreprocessor.cpp: Preprocessor : Added a few more testcases for the macro expansion 2009-01-05 Daniel Marjamäki * preprocessor.cpp, testpreprocessor.cpp: Preprocessor: Added simple handling for expanding preprocessor macros 2009-01-05 Daniel Marjamäki * runastyle: runastyle: Added script for running "astyle" with the options I have chosen against all cpp and h files 2009-01-05 Daniel Marjamäki * checkbufferoverrun.cpp, checkbufferoverrun.h, checkclass.cpp, checkclass.h, checkfunctionusage.cpp, checkfunctionusage.h, checkheaders.cpp, checkheaders.h, checkmemoryleak.cpp, checkmemoryleak.h, checkother.cpp, checkother.h, cppcheck.cpp, cppcheck.h, cppcheckexecutor.cpp, cppcheckexecutor.h, errorlogger.h, errormessage.h, filelister.cpp, filelister.h, main.cpp, preprocessor.cpp, preprocessor.h, testbufferoverrun.cpp, testcharvar.cpp, testclass.cpp, testconstructors.cpp, testdivision.cpp, testfilelister.cpp, testfunctionusage.cpp, testincompletestatement.cpp, testmemleak.cpp, testmemleakmp.cpp, testother.cpp, testpreprocessor.cpp, testredundantif.cpp, testrunner.cpp, testsimplifytokens.cpp, testsuite.cpp, testsuite.h, testtoken.cpp, testtokenize.cpp, testunusedprivfunc.cpp, testunusedvar.cpp, token.cpp, token.h, tokenize.cpp, tokenize.h: Style: Updated the coding style with "astyle" 2009-01-05 Daniel Marjamäki * preprocessor.cpp, preprocessor.h, testpreprocessor.cpp: Preprocessor: Began work on the macro handling 2009-01-05 Daniel Marjamäki * checkclass.cpp: Refactoring: Simplified a condition 2009-01-04 Reijo Tomperi * checkclass.cpp: Refactoring: Getting rid of %var1% 2009-01-04 Reijo Tomperi * checkbufferoverrun.cpp: Refactoring: Getting rid of %var1% 2009-01-04 Reijo Tomperi * checkclass.cpp, checkother.cpp, token.cpp: Fixed several bugs from previous commits and added check code that will print errors if varid is 0 when %varid% is given in Match(). 2009-01-04 Reijo Tomperi * checkclass.cpp, token.cpp, token.h: Refactoring: findMatch() that supports varId added. %var1% -> %varid% changed 2009-01-04 Daniel Marjamäki * filelister.cpp: MinGW: Applied the patch submitted by kidkat that makes cppcheck compilable with MinGW 2009-01-04 Daniel Marjamäki * checkother.cpp, testunusedvar.cpp: variable usage: fixed false positive when using operator '^' 2009-01-04 Reijo Tomperi * filelister.cpp: Made previous feature request fix more portable 2009-01-04 Daniel Marjamäki * cppcheck.cpp: variable usage: The check must be made before simplifyTokenList to avoid false positives 2009-01-04 Reijo Tomperi * filelister.cpp: Fix for feature request: [ 2485706 ] Add support to *.C file extension 2009-01-04 Daniel Marjamäki * checkother.cpp: Variable usage: Addon to previous commit. Also handle "&=" and "^=" 2009-01-04 Daniel Marjamäki * checkother.cpp, testunusedvar.cpp: unused variable: Fixed false positive when using '|=' assignment 2009-01-04 Daniel Marjamäki * checkother.cpp, testunusedvar.cpp: Variable usage : Fixed false positives for struct/union member variables 2009-01-04 Daniel Marjamäki * checkother.cpp, testunusedvar.cpp: Variable usage: Fixed false positive with operators ~ and ! 2009-01-04 Daniel Marjamäki * checkother.cpp, testunusedvar.cpp: Variable usage: Fixed false positives (tmp1 ? tmp2 : tmp3) 2009-01-04 Daniel Marjamäki * testunusedvar.cpp: variable usage: added a test case to make sure usage in a if is seen 2009-01-04 Daniel Marjamäki * checkother.cpp, testunusedvar.cpp: Variable usage : Fixed false positive with modulo 2009-01-04 Daniel Marjamäki * checkother.cpp: Variable usage: Fixed a segmentation fault 2009-01-04 Daniel Marjamäki * checkother.cpp, testunusedvar.cpp: Struct member usage : Check union member variables at the same time 2009-01-04 Daniel Marjamäki * checkother.cpp: Variable usage: fixed false positives for union member variables 2009-01-04 Daniel Marjamäki * checkother.cpp, testunusedvar.cpp: struct member usage: fixed false positives 2009-01-04 Reijo Tomperi * checkother.cpp: Refactoring var1 -> varid 2009-01-04 Daniel Marjamäki * checkother.cpp, testunusedvar.cpp: Function usage : Fixed false positives for inline structs 2009-01-04 Daniel Marjamäki * checkother.cpp, testunusedvar.cpp: Variable usage : Fixed a false positive for ("b = (int)a;" => a is read) 2009-01-04 Daniel Marjamäki * tokenize.cpp: tokenize : Removed unneeded variable 2009-01-04 Daniel Marjamäki * checkother.cpp: Refactoring : Changed a 'strcmp' to a 'simpleMatch' 2009-01-03 Reijo Tomperi * checkother.cpp: Possibly bug fix, changed %var% into %var1% as name was also given as a parameter to Match(). Not sure which was intended here. 2009-01-03 Reijo Tomperi * checkbufferoverrun.cpp, checkclass.cpp, checkmemoryleak.cpp, checkother.cpp, token.cpp, token.h, tokenize.cpp: Refactoring: Changed order of parameters in Match() and findMatch() (deprecated parameter moved to last) 2009-01-03 Reijo Tomperi * checkother.cpp, testcharvar.cpp: Refactoring: %var1% -> %varid% 2009-01-03 Reijo Tomperi * checkbufferoverrun.cpp, checkbufferoverrun.h, checkclass.cpp, checkclass.h, checkfunctionusage.cpp, checkheaders.cpp, checkmemoryleak.cpp, checkmemoryleak.h, checkother.cpp, checkother.h, tasks.txt, testmemleak.cpp, testmemleakmp.cpp, testsimplifytokens.cpp, testsuite.h, testtoken.cpp, testtokenize.cpp, token.cpp, token.h, tokenize.cpp, tokenize.h: Refactoring: Rename class "TOKEN" to "Token" 2009-01-03 Daniel Marjamäki * cppcheck.cpp: Buffer overrun: Moved the "buffer overrun" and "array index out of bounds" to "--all" because there were false positives 2009-01-03 Reijo Tomperi * Makefile, cppcheck.cbp, errormessage.cpp, errormessage.h: ErrorMessage class added (not used yet and it is still unfinished) 2009-01-03 Daniel Marjamäki * checkmemoryleak.cpp: Refactoring : Removed a short commented code that I never use anyway 2009-01-03 Daniel Marjamäki * checkmemoryleak.cpp, testmemleak.cpp: Using freed memory : Fixed false positive when usage is something like: printf("free %x",p); 2009-01-03 Daniel Marjamäki * checkmemoryleak.cpp, testmemleak.cpp: Memory leak : Fixed a regression and added a test case 2009-01-02 Reijo Tomperi * checkbufferoverrun.cpp, checkbufferoverrun.h, checkclass.cpp, checkclass.h, checkfunctionusage.cpp, checkfunctionusage.h, checkheaders.cpp, checkheaders.h, checkmemoryleak.cpp, checkmemoryleak.h, checkother.cpp, checkother.h, cppcheck.cpp, cppcheck.h, cppcheckexecutor.cpp, cppcheckexecutor.h, errorlogger.h, filelister.cpp, filelister.h, main.cpp, preprocessor.cpp, preprocessor.h, settings.cpp, settings.h, testbufferoverrun.cpp, testcharvar.cpp, testclass.cpp, testconstructors.cpp, testdivision.cpp, testfilelister.cpp, testfunctionusage.cpp, testincompletestatement.cpp, testmemleak.cpp, testmemleakmp.cpp, testother.cpp, testpreprocessor.cpp, testredundantif.cpp, testrunner.cpp, testsimplifytokens.cpp, testsuite.cpp, testsuite.h, testtoken.cpp, testtokenize.cpp, testunusedprivfunc.cpp, testunusedvar.cpp, token.cpp, token.h, tokenize.cpp, tokenize.h: Copyright 2007-2008 -> 2007-2009 2009-01-02 Reijo Tomperi * token.cpp: Refactoring: Constructor of TOKEN changed to use initialization list instead of assignment. 2009-01-02 Daniel Marjamäki * preprocessor.cpp, preprocessor.h, testpreprocessor.cpp: Preprocessor : Replace "#if defined(.." with "ifdef .." where possible 2009-01-02 Daniel Marjamäki * testmemleak.cpp: Memory leak : Added test case "if10" which is similar to "if9" 2009-01-02 Daniel Marjamäki * checkmemoryleak.cpp, testmemleak.cpp: Memory leak: Improved the checking of usage after free (if str is freed then "char c = str[0];" is illegal) 2009-01-02 Daniel Marjamäki * testmemleak.cpp: Memory leak: Renamed the test case "func12" to "if9" 2009-01-02 Nicolas Le Cam * testmemleak.cpp: Memory leak : Add a new test that currently fail to highlight a regression 2009-01-02 Nicolas Le Cam * cppcheck.cpp: Preprocessor: Get rid of an unused parameter 2009-01-02 Nicolas Le Cam * preprocessor.cpp, preprocessor.h, testpreprocessor.cpp: Preprocessor: Get rid of an unused parameter 2009-01-02 Nicolas Le Cam * checkmemoryleak.cpp, testmemleak.cpp: Memory leak : Completly fix false positive when using callbacks (Bug 2458510) 2009-01-01 Reijo Tomperi * checkother.cpp: Refactoring: i++; changed to ++i; 2009-01-01 Reijo Tomperi * checkbufferoverrun.cpp, checkclass.cpp, checkheaders.cpp, checkmemoryleak.cpp, checkother.cpp, cppcheck.cpp, preprocessor.cpp, testmemleak.cpp, testsuite.cpp, token.cpp, tokenize.cpp: Refactoring: Prefer ++i; over i++; 2009-01-01 Daniel Marjamäki * checkmemoryleak.cpp: Memory leak : Changed the handling of "realloc" a little. The "getcode" will return "realloc" instead. And this will be converted to "dealloc;alloc;" before simplifycode 2009-01-01 Daniel Marjamäki * checkmemoryleak.cpp: Memory leak : a little different handling when the callstack gets too big 2009-01-01 Daniel Marjamäki * checkmemoryleak.cpp, testmemleak.cpp: Memory leak : fixed false positive when there are recursive calls. (using memory after it has been freed) 2009-01-01 Daniel Marjamäki * checkmemoryleak.cpp, testmemleak.cpp: Memory leak : Fixed false positives for "memory is used after it has been freed" 2009-01-01 Daniel Marjamäki * checkmemoryleak.cpp: Memory leak : Fixed a bug in getcode (assignment) 2009-01-01 Daniel Marjamäki * checkmemoryleak.cpp, testtoken.cpp, token.cpp, token.h, tokenize.cpp: TOKEN: Renamed TOKEN::setstr to TOKEN::str 2009-01-01 Daniel Marjamäki * checkmemoryleak.cpp, testmemleak.cpp: Memory leak : Fix to avoid false positives 2008-12-31 Daniel Marjamäki * checkmemoryleak.cpp: memory leak: removed 'if(true)' and 'if(false)' as these are handled in the tokenizer instead 2008-12-31 Daniel Marjamäki * releasenotes.txt: releasenotes : removed this file 2008-12-31 Daniel Marjamäki * checkmemoryleak.cpp, testmemleak.cpp: Memory leak : Added check "Using resource after it has been released" 2008-12-31 Daniel Marjamäki * checkother.cpp: if checking : fixed bug in previous commit 2008-12-31 Daniel Marjamäki * checkother.cpp: if statements : bug fix and refactorings in the checking for "if (condition);" 2008-12-30 Daniel Marjamäki * cppcheck.cpp: help : minor updates to help text that cppcheck shows when no parameters are given 2008-12-30 Daniel Marjamäki * readme.txt: readme : minor updates 2008-12-30 Reijo Tomperi * cppcheck.cpp: c++check -> cppcheck 2008-12-30 Daniel Marjamäki * releasenotes.txt: releasenotes : edit 2008-12-30 Daniel Marjamäki * cppcheck.cpp: cppcheck : updated version to 1.27 in help text 2008-12-29 Daniel Marjamäki * checkmemoryleak.cpp: Memory leak : Reverted 796 and 797. I didn't see definite improvements 2008-12-29 Daniel Marjamäki * checkmemoryleak.cpp: Memory leak : Removed checking of 'if(true)' and 'if(false)' as these are handled in the Tokenizer 2008-12-29 Daniel Marjamäki * checkmemoryleak.cpp: Memory leak : Optimising the 'CheckMemoryLeakClass::simplifycode' 2008-12-28 Daniel Marjamäki * checkmemoryleak.cpp: Memory leak : Remove false positive for "if (cond1) str=strdup(); if (cond2) str=strdup();" 2008-12-28 Daniel Marjamäki * checkmemoryleak.cpp: memory leak : fixed false positive for "list << data" 2008-12-28 Daniel Marjamäki * checkmemoryleak.cpp, testmemleak.cpp: Memory leak : Fixed false positive for "list += data" 2008-12-28 Reijo Tomperi * cppcheck.cpp: Bail out text is now not printed with --quiet option 2008-12-28 Daniel Marjamäki * checkmemoryleak.cpp, testmemleak.cpp: Memory leak : Fixed a problem with a fclose inside an if condition 2008-12-28 Reijo Tomperi * releasenotes.txt: releasenotes updated command line options made more accurate 2008-12-28 Daniel Marjamäki * releasenotes.txt: releasenotes : Added release notes for the coming 1.27 release 2008-12-28 Daniel Marjamäki * tokenize.cpp: Tokenizer::setVarId : Minor bug fix 2008-12-27 Reijo Tomperi * tokenize.cpp: Optimizing setVarId() 2008-12-27 Reijo Tomperi * preprocessor.cpp, preprocessor.h: preprocessor optimized to handle faster removal of spaces near newline 2008-12-27 Daniel Marjamäki * testrunner.vcproj: Visual C++ : Updated the project file 2008-12-27 Daniel Marjamäki * checkmemoryleak.cpp, testmemleak.cpp: Memory leak: Added check "TestMemoryLeak::throw2" (no false positive upon throw) 2008-12-27 Reijo Tomperi * cppcheck.cpp, man/cppcheck.1.xml, readme.txt, settings.cpp, settings.h: Bailing out if too many (over 12) configurations found froma file. --force parameter added to prevent this from happening. 2008-12-27 Reijo Tomperi * preprocessor.cpp: Change one while loop to use stl algorithms and added TODO about slow part of code 2008-12-26 Reijo Tomperi * cppcheck.cpp, preprocessor.cpp, preprocessor.h: Added preprocessor a way to retrieve configurations and file content one configuration at time, because large files could consume 500 MB or even more memory. 2008-12-26 Daniel Marjamäki * checkmemoryleak.cpp, testmemleak.cpp: Memory leaks : Fixed false positive for "p" when there is a line such as "p2 = p + 1;" 2008-12-26 Daniel Marjamäki * testsimplifytokens.cpp: removeRedundantConditions : Added a simple test case for "else if (false)" 2008-12-26 Daniel Marjamäki * testsimplifytokens.cpp: removeRedundantConditions : Fixed the test case added in [777] 2008-12-26 Daniel Marjamäki * testsimplifytokens.cpp: removeReduntantConditions : Added test case 2008-12-26 Reijo Tomperi * testsimplifytokens.cpp, tokenize.cpp, tokenize.h: removeReduntantConditions() can now handle if( true ) else if () conditions also. 2008-12-26 Daniel Marjamäki * testmemleak.cpp: Memory leak : Added TODO test case "class3". It currently fails 2008-12-25 Daniel Marjamäki * tokenize.cpp: refactoring : Removed unread variable 'staticfunc' 2008-12-25 Daniel Marjamäki * checkbufferoverrun.cpp, token.cpp, token.h, tokenize.cpp: TOKEN::Match : Removed the parameter varnames2 because it's unused and deprecated 2008-12-25 Daniel Marjamäki * token.cpp: uniformize files 2008-12-25 Daniel Marjamäki * Makefile, Makefile.gprof: Makefile : Removed the .gprof makefile and added a CGLAGS variable so the normal Makefile can easily be changed 2008-12-25 Daniel Marjamäki * checkmemoryleak.cpp, testmemleak.cpp: Memory leaks : Fixed false positive with return (Bug 2458436) 2008-12-25 Daniel Marjamäki * Makefile: Makefile : Reverted the Makefile changes in [763] because they were committed by mistake 2008-12-25 Daniel Marjamäki * checkmemoryleak.cpp, testmemleak.cpp: Memory leak : Fixed false positive when using callbacks (Bug 2458510) 2008-12-24 Reijo Tomperi * tokenize.cpp: Cleanup to removeReduntantConditions() 2008-12-24 Daniel Marjamäki * Makefile.gprof: added Makefile that can be used when profiling cppcheck with gprof 2008-12-24 Reijo Tomperi * tokenize.cpp: Minor improvement to removeReduntantConditions() 2008-12-24 Daniel Marjamäki * tokenize.cpp: tokenize : optimising "simplifyConditions" 2008-12-24 Daniel Marjamäki * Makefile, tokenize.cpp: Tokenizer::setVarId : small optimisations 2008-12-24 Daniel Marjamäki * checkmemoryleak.cpp: memory leaks : optimising 'simplifycode' 2008-12-24 Daniel Marjamäki * checkclass.cpp: checkclass : simple refactorings. Use Match pattern better. Use str() and simpleMatch instead of Match when possible 2008-12-23 Reijo Tomperi * token.h: Some comments added 2008-12-23 Nicolas Le Cam * token.cpp: Formatting: demux simpleMatch for readability 2008-12-23 Reijo Tomperi * token.cpp, token.h: Optimization: isNotPattern() removed 2008-12-23 Daniel Marjamäki * tokenize.cpp: tokenize : small optimisations. Use simpleMatch and direct std::string comparisons instead of Match 2008-12-23 Reijo Tomperi * token.cpp: Optimization, improved Match(). The str[0] == '%' improvement 2008-12-23 Nicolas Le Cam * token.cpp: Fix comparison between signed and unsigned integer expressions warning 2008-12-23 Daniel Marjamäki * tokenize.cpp: simplifyKnownVariables : optimisation 2008-12-23 Daniel Marjamäki * checkmemoryleak.cpp: memory leaks : bug fix 2008-12-23 Daniel Marjamäki * testsimplifytokens.cpp, testtokenize.cpp, tokenize.cpp: simplifyIfAddBraces : Further fixes so that braces will be added to an "else" statement too 2008-12-23 Daniel Marjamäki * checkbufferoverrun.cpp: checkbufferoverrun : a bug fix and a better use of Match 2008-12-22 Nicolas Le Cam * checkbufferoverrun.cpp: Minor optimizations: introduce use of simpleMatch, don't use [simple]Match on one word patterns; Minor style formattings 2008-12-22 Nicolas Le Cam * filelister.cpp: Fix FileLister::RecursiveAddFiles on files without a base path. 2008-12-22 Daniel Marjamäki * testsimplifytokens.cpp, testtokenize.cpp, tokenize.cpp: simplifyIfAddBraces : Added check to cppcheck as it seems to work pretty good now 2008-12-22 Daniel Marjamäki * tokenize.cpp: simplifyIfAddBraces : Fixed a segmentation fault 2008-12-22 Daniel Marjamäki * testtokenize.cpp, tokenize.cpp: simplifyIfAddBraces : Fixed minor bug that caused the closing brace to be put on the wrong place 2008-12-22 Daniel Marjamäki * testtokenize.cpp: TestTokenizer : Split the test TestTokenizer::simplifyKnownVariables into 5 separate tests 2008-12-22 Daniel Marjamäki * testtokenize.cpp: TestTokenizer : Broke up TestTokenizer::ifAddBraces into a few separate tests 2008-12-22 Daniel Marjamäki * tokenize.cpp: simplifyIfAddBraces : Fixed segmentation fault 2008-12-22 Daniel Marjamäki * checkmemoryleak.cpp, testmemleak.cpp: Memory leaks : Reduce "if { dealloc ; return ; } if return ;" to "if return ;". Related with bug 2458532 2008-12-22 Daniel Marjamäki * testtokenize.cpp, tokenize.cpp, tokenize.h: Tokenizer : Added function 'simplifyIfAddBraces' 2008-12-22 Nicolas Le Cam * token.cpp: Fix simpleMatch when pattern only contain one word 2008-12-21 Nicolas Le Cam * token.cpp, token.h: Implement simpleMatch that should be use when pattern contains no flags 2008-12-21 Reijo Tomperi * testsimplifytokens.cpp, tokenize.cpp, tokenize.h: More improvement to removeReduntantConditions() and few tests for it also 2008-12-21 Reijo Tomperi * testtokenize.cpp, tokenize.cpp, tokenize.h: Remove reduntant if sentences that are never executed. 2008-12-21 Nicolas Le Cam * tokenize.cpp: Optimization: Speed up typedef simplification. 2008-12-21 Nicolas Le Cam * tokenize.cpp: Fix signed/unsigned warning (thanks Aggro) 2008-12-21 Nicolas Le Cam * checkmemoryleak.cpp, token.cpp, tokenize.cpp: Refactoring: strdup also exists in MSVS 2008-12-21 Nicolas Le Cam * token.cpp, token.h, tokenize.cpp: Opimization: Remove combineWithNext Member, use an array instead 2008-12-21 Reijo Tomperi * testsimplifytokens.cpp: Few tests added for checking simplify of if sentences 2008-12-21 Reijo Tomperi * tokenize.cpp: Fixed bug, varid was not assigned properly when bool use = false; was splitted into two statements in simplify code. 2008-12-21 Reijo Tomperi * token.cpp, token.h, tokenize.cpp: Improving simplifyKnownVariables() to simplify bool variables used inside if() like int values are simplified. 2008-12-21 Reijo Tomperi * checkbufferoverrun.cpp: Fixed one compiler (gcc) warning. 2008-12-21 Nicolas Le Cam * checkbufferoverrun.cpp: Fix bug I introduced in rv727 2008-12-21 Nicolas Le Cam * checkbufferoverrun.cpp, checkmemoryleak.cpp, tokenize.cpp: Minor optimizations and fixes 2008-12-21 Daniel Marjamäki * tokenize.cpp: simplifyKnownVariables: fixed a segmentation fault 2008-12-20 Reijo Tomperi * checkother.cpp, testother.cpp: Fixed bug with redundant condition: http://sourceforge.net/forum/forum.php?thread_id=2711792&forum_id=693501 2008-12-20 Daniel Marjamäki * checkmemoryleak.cpp, checkmemoryleak.h, testmemleakmp.cpp: Memory leak : Updated the multipass checking a little 2008-12-20 Reijo Tomperi * testclass.cpp: Updated the test to reflect change in previous commit 2008-12-20 Reijo Tomperi * checkclass.cpp: Improved the error message related to virtual destructors 2008-12-20 Daniel Marjamäki * checkclass.cpp: refactoring : Replaced "aaaa" with "str" 2008-12-20 Daniel Marjamäki * cppcheck.cbp, testmemleakmp.cpp: codeblocks : added testmemleakmp 2008-12-20 Daniel Marjamäki * Makefile, checkclass.cpp, checkmemoryleak.cpp, checkmemoryleak.h: memory leak : Added experimental functionality for multipass checking of memory leaks. Only added in the unit tests yet. 2008-12-20 Daniel Marjamäki * token.cpp, token.h: Refactoring : Removed the function 'findtoken' 2008-12-20 Daniel Marjamäki * checkclass.cpp: Refactoring : Replaced findtoken with findmatch 2008-12-20 Daniel Marjamäki * checkother.cpp: refactoring : Replaced 'findtoken' with 'findmatch' 2008-12-20 Daniel Marjamäki * checkbufferoverrun.cpp: buffer overrun : Refactoring 2008-12-20 Daniel Marjamäki * checkbufferoverrun.cpp, checkbufferoverrun.h, cppcheck.cpp, testbufferoverrun.cpp: buffer overruns : renamed functions + minor simplification 2008-12-20 Daniel Marjamäki * checkclass.cpp, checkclass.h, cppcheck.cpp, testconstructors.cpp, testunusedprivfunc.cpp: Class checking : Renamed the check functions 2008-12-19 Reijo Tomperi * man/cppcheck.1.xml: Man page updated 2008-12-19 Reijo Tomperi * cppcheck.cbp: Project file updated 2008-12-19 Reijo Tomperi * testother.cpp: Updated app name and copyright to this new file also 2008-12-19 Reijo Tomperi * man/cppcheck.1.xml: Updated author names to man page 2008-12-19 Daniel Marjamäki * Makefile, testother.cpp: Redundant condition: Added a test case when a condition is not redundant 2008-12-19 Reijo Tomperi * checkbufferoverrun.cpp, checkbufferoverrun.h, checkclass.cpp, checkclass.h, checkfunctionusage.cpp, checkfunctionusage.h, checkheaders.cpp, checkheaders.h, checkmemoryleak.cpp, checkmemoryleak.h, checkother.cpp, checkother.h, cppcheck.cpp, cppcheck.h, cppcheckexecutor.cpp, cppcheckexecutor.h, errorlogger.h, filelister.cpp, filelister.h, main.cpp, preprocessor.cpp, preprocessor.h, settings.cpp, settings.h, testbufferoverrun.cpp, testcharvar.cpp, testclass.cpp, testconstructors.cpp, testdivision.cpp, testfilelister.cpp, testfunctionusage.cpp, testincompletestatement.cpp, testmemleak.cpp, testpreprocessor.cpp, testredundantif.cpp, testrunner.cpp, testsimplifytokens.cpp, testsuite.cpp, testsuite.h, testtoken.cpp, testtokenize.cpp, testunusedprivfunc.cpp, testunusedvar.cpp, token.cpp, token.h, tokenize.cpp, tokenize.h: Copyright and app name changed in each file 2008-12-19 Reijo Tomperi * filelister.cpp, testclass.cpp: Fixed bug, checking single file was not possible. Few new tests added also 2008-12-19 Reijo Tomperi * checkfunctionusage.cpp, checkfunctionusage.h, cppcheck.cpp: Don't use keyword "this" in constructor 2008-12-19 Reijo Tomperi * man/cppcheck.1.xml, readme.txt: Update man page and readme to reflect the new syntax 2008-12-19 Reijo Tomperi * cppcheck.cpp: Interface: Tags -a, -q, -s and -v added. 2008-12-19 Reijo Tomperi * cppcheck.cpp: Interface: New version of interface and help texts, --errorsonly changed to --quiet 2008-12-19 Reijo Tomperi * cppcheck.cpp: Interface: Removed --recursive option, made it default. Changed help texts. 2008-12-19 Daniel Marjamäki * cppcheck.vcproj: visual c++: updated the project file 2008-12-18 Nicolas Le Cam * checkbufferoverrun.cpp, checkbufferoverrun.h, checkclass.cpp, checkclass.h, checkfunctionusage.cpp, checkfunctionusage.h, checkheaders.cpp, checkheaders.h, checkmemoryleak.cpp, checkmemoryleak.h, checkother.cpp, checkother.h, cppcheck.cpp, cppcheck.h, cppcheckexecutor.cpp, cppcheckexecutor.h, errorlogger.h, filelister.cpp, filelister.h, main.cpp, preprocessor.cpp, preprocessor.h, settings.cpp, settings.h, testbufferoverrun.cpp, testcharvar.cpp, testclass.cpp, testconstructors.cpp, testdivision.cpp, testfilelister.cpp, testfunctionusage.cpp, testincompletestatement.cpp, testmemleak.cpp, testpreprocessor.cpp, testredundantif.cpp, testrunner.cpp, testsimplifytokens.cpp, testsuite.cpp, testsuite.h, testtoken.cpp, testtokenize.cpp, testunusedprivfunc.cpp, testunusedvar.cpp, token.cpp, token.h, tokenize.cpp, tokenize.h: Formatting: uniformize end of lines. 2008-12-18 Daniel Marjamäki * testtokenize.cpp, tokenize.cpp: variable id : set variable ids for struct members 2008-12-18 Daniel Marjamäki * token.cpp: token : if setstr is used clear the variable id 2008-12-18 Daniel Marjamäki * checkmemoryleak.cpp: Memory leaks : Remove "if break|continue ;" that may otherwise cause false positives 2008-12-18 Daniel Marjamäki * tokenize.cpp: tokenizer : using the simplifyKnownVariables 2008-12-17 Daniel Marjamäki * checkclass.cpp, testclass.cpp: virtual destructors : no errormessage if the derived class has no destructor or empty destructor 2008-12-17 Daniel Marjamäki * checkmemoryleak.cpp, testmemleak.cpp: memory leak : fixed 2 bugs related to the testcases TestMemleak::if7 and TestMemleak::simple9 2008-12-17 Daniel Marjamäki * token.cpp, token.h, tokenize.cpp: token : fixed so that TOKEN::_previous is updated when deleting tokens 2008-12-17 Daniel Marjamäki * testsuite.cpp, testsuite.h: testsuite : make it possible to run a specific testcase 2008-12-16 Daniel Marjamäki * testmemleak.cpp: Memory leak : Added a test case for future checking of struct members 2008-12-16 Daniel Marjamäki * checkmemoryleak.cpp, testmemleak.cpp: Memory leak : Fixed issue 2429936 - false positive reported on the break in the code "loop { dealloc ; alloc ; if break ; }" 2008-12-16 Daniel Marjamäki * testmemleak.cpp: Memory leaks : Added test case for bug 2429936 2008-12-16 Daniel Marjamäki * checkmemoryleak.cpp, testmemleak.cpp: Memory leak : Fixed bug described in issue 2432631. False positive on something like this.. "alloc ; if(!var) alloc;" 2008-12-16 Daniel Marjamäki * token.cpp, token.h: token : minor refactoring to TOKEN::insertToken. Give the linenr and fileIndex the same values as this token. It's better than nothing 2008-12-15 Nicolas Le Cam * checkother.cpp, checkother.h, cppcheck.cpp: Removes WarningIs(Alpha|Digit) checks as this can introduce more problems than fixes. 2008-12-15 Daniel Marjamäki * tasks.txt: tasks : Added task for optimising TOKEN::Match 2008-12-15 Daniel Marjamäki * checkother.cpp, testredundantif.cpp: Redundant condition : fixed the checking 2008-12-15 Daniel Marjamäki * Makefile, checkother.cpp, checkother.h, testredundantif.cpp: Redundant condition : Added a check 2008-12-14 Nicolas Le Cam * tokenize.cpp: Fix compilation 2008-12-14 Reijo Tomperi * CheckBufferOverrun.cpp, CheckBufferOverrun.h, CheckClass.cpp, CheckClass.h, CheckFunctionUsage.cpp, CheckFunctionUsage.h, CheckHeaders.cpp, CheckHeaders.h, CheckMemoryLeak.cpp, CheckMemoryLeak.h, CheckOther.cpp, CheckOther.h, FileLister.cpp, FileLister.h, checkbufferoverrun.cpp, checkbufferoverrun.h, checkclass.cpp, checkclass.h, checkfunctionusage.cpp, checkfunctionusage.h, checkheaders.cpp, checkheaders.h, checkmemoryleak.cpp, checkmemoryleak.h, checkother.cpp, checkother.h, filelister.cpp, filelister.h, testfilelister.cpp: Refactoring and fix to previous commits by me, forgot to actually rename the files before ... 2008-12-14 Nicolas Le Cam * FileLister.cpp, tokenize.cpp: Formatting: uniformize end of lines. 2008-12-14 Reijo Tomperi * Makefile, cppcheck.cbp, cppcheck.cpp, cppcheck.h, testbufferoverrun.cpp, testcharvar.cpp, testclass.cpp, testconstructors.cpp, testdivision.cpp, testfilelister.cpp, testfunctionusage.cpp, testincompletestatement.cpp, testmemleak.cpp, testunusedprivfunc.cpp, testunusedvar.cpp, tokenize.cpp: Refactoring: Renamed all files to lower case. Also added testfilelister.cpp which was forgotted from previous commit. 2008-12-14 Reijo Tomperi * FileLister.cpp, FileLister.h, Makefile, tokenize.cpp: Fixed bug, paths like "/path/../index.h" created duplicate warnings with files like "/index.h". Relative paths are now simplified to look a like. Test cases added. 2008-12-14 Nicolas Le Cam * CheckMemoryLeak.cpp, testtoken.cpp, testtokenize.cpp, tokenize.cpp, tokenize.h: Formatting: uniformize end of lines. 2008-12-14 Nicolas Le Cam * tasks.txt: Add something I want to work on 2008-12-14 Nicolas Le Cam * tokenize.cpp: Add the last c++ cast operator 2008-12-14 Daniel Marjamäki * tasks.txt: tasks : things that can be done 2008-12-13 Reijo Tomperi * testtokenize.cpp: Old TODO comment removed 2008-12-13 Reijo Tomperi * testtokenize.cpp: More tests added for simplifyKnownVariables() 2008-12-13 Daniel Marjamäki * testtokenize.cpp, tokenize.cpp: tokenizer : updated simplifyKnownVariables 2008-12-13 Reijo Tomperi * testtokenize.cpp, tokenize.cpp, tokenize.h: Started making simplifyKnownVariables(), but it is very much unfinished. Two test cases added for it. 2008-12-13 Daniel Marjamäki * CheckMemoryLeak.cpp: Memory leak : added standard functions that are safe and doesn't need to be checked 2008-12-13 Reijo Tomperi * tokenize.cpp, tokenize.h: Refactoring, simplifyConditions(), simplifyCasts() and simplifyFunctionReturn() now return the opposite of their boolean return value. 2008-12-13 Daniel Marjamäki * testmemleak.cpp, tokenize.cpp, tokenize.h: Tokenizer : Simplify function calls for functions that only returns a constant value 2008-12-13 Daniel Marjamäki * testmemleak.cpp, tokenize.cpp, tokenize.h: Tokenizer : Added function for simplifying casts 2008-12-13 Nicolas Le Cam * CheckFunctionUsage.cpp, testsimplifytokens.cpp: Refactoring: changed "aaaa" to "str" 2008-12-13 Nicolas Le Cam * CheckBufferOverrun.cpp, CheckMemoryLeak.cpp, cppcheck.cpp, preprocessor.cpp, preprocessor.h, testbufferoverrun.cpp, testmemleak.cpp, testtokenize.cpp, token.cpp, token.h, tokenize.cpp: Formatting: uniformize end of lines. 2008-12-13 Nicolas Le Cam * testmemleak.cpp: Add three memoryleak tests involving pointer casting that currently 'fail' 2008-12-13 Daniel Marjamäki * testmemleak.cpp: Memory leak : Added a test case for false positive when using function call 2008-12-13 Daniel Marjamäki * CheckBufferOverrun.cpp, testbufferoverrun.cpp: Buffer overrun : Use variable id if available in check of memset etc 2008-12-13 Daniel Marjamäki * CheckMemoryLeak.cpp: Memory leak : Fixed a test where pointer is reassigned 2008-12-12 Reijo Tomperi * testmemleak.cpp: Slightly improved test case 2008-12-12 Reijo Tomperi * testmemleak.cpp: Added test case for false positive, fails currently 2008-12-12 Reijo Tomperi * CheckMemoryLeak.cpp: Refactoring, some !Match() calls chanded into using !!else syntax 2008-12-12 Reijo Tomperi * testtokenize.cpp, token.cpp, token.h: TOKEN: Patterns like "if ; !!else" are now possible 2008-12-12 Daniel Marjamäki * tokenize.cpp: Tokenizer::SetVarId : Fixed segmentation fault 2008-12-12 Daniel Marjamäki * CheckBufferOverrun.cpp, CheckBufferOverrun.h, testbufferoverrun.cpp: CheckBufferOverrun : Using variable id to check local array variables 2008-12-12 Reijo Tomperi * testmemleak.cpp: testmemleak: Added 2 tests, fopen() and popen() should return resource leak, instead of memory leak 2008-12-12 Daniel Marjamäki * testbufferoverrun.cpp: testbufferoverrun : Added a testcase where variable id is needed to avoid false positive 2008-12-12 Reijo Tomperi * CheckMemoryLeak.cpp, CheckMemoryLeak.h: Memoryleak: fopen and popen report now "Resource leak" instead of "Memory leak" 2008-12-12 Nicolas Le Cam * token.cpp: Fix a crash in eraseToken 2008-12-11 Nicolas Le Cam * CheckOther.cpp: Fix compilation under VS2003 2008-12-11 Reijo Tomperi * cppcheck.cpp: Minor bug fix, CppCheck::Check didn't reset error list after all checking was done. 2008-12-11 Daniel Marjamäki * cppcheck.cpp, preprocessor.cpp, preprocessor.h, testpreprocessor.cpp: preprocessing : Skip special characters. Refactoring. 2008-12-11 Daniel Marjamäki * todo.txt: todo : deleted this deprecated file 2008-12-11 Daniel Marjamäki * readme.txt: readme : fixed the readme file 2008-12-11 Daniel Marjamäki * CheckMemoryLeak.cpp: memory leak : Minor fixes to make the unit tests work 2008-12-10 Daniel Marjamäki * CheckClass.cpp, CheckMemoryLeak.cpp, CheckOther.cpp, FileLister.cpp, FileLister.h, testmemleak.cpp: code cleanups 2008-12-10 Daniel Marjamäki * CheckMemoryLeak.cpp, testmemleak.cpp: Memory leaks : Minor updates and refactoring 2008-12-10 Daniel Marjamäki * CheckOther.cpp: Borland C++ : minor update to make the code compilable with borland c++ 2008-12-10 Daniel Marjamäki * CheckClass.cpp: Virtual destructor : minor fix to avoid false positives when more modifiers are used 2008-12-10 Daniel Marjamäki * FileLister.cpp, FileLister.h: FileLister: Borland can use windows api for file searching 2008-12-09 Reijo Tomperi * cppcheck.cbp, token.cpp, token.h: Project file updated (testtoken.cpp was missing), added TOKEN::printOut() function to help with debugging. 2008-12-09 Reijo Tomperi * Makefile, testtoken.cpp: Added test file for TOKEN class 2008-12-09 Reijo Tomperi * CheckMemoryLeak.cpp, token.cpp, token.h, tokenize.cpp: Refactoring: Moved token creation and token deletion into TOKEN class. Added previous() (not tested yet) 2008-12-09 Daniel Marjamäki * cppcheck.cpp: cppcheck : Set variable ids 2008-12-09 Daniel Marjamäki * testmemleak.cpp: testmemleak : added a unit test that ensures that the variable id handling works correctly. But it's currently not working, and therefore it's commented out 2008-12-09 Daniel Marjamäki * token.cpp, token.h: token : Updated the "Match" function so it can check the variable id 2008-12-09 Daniel Marjamäki * CheckOther.cpp: Variable usage : 2 more fixes 2008-12-09 Nicolas Le Cam * CheckBufferOverrun.cpp, CheckBufferOverrun.h, CheckClass.cpp, CheckClass.h, CheckFunctionUsage.cpp, CheckMemoryLeak.cpp, CheckMemoryLeak.h, CheckOther.cpp, CheckOther.h, FileLister.cpp, FileLister.h, cppcheck.cpp, cppcheck.h, cppcheckexecutor.cpp, cppcheckexecutor.h, errorlogger.h, main.cpp, preprocessor.cpp, preprocessor.h, settings.cpp, settings.h, testbufferoverrun.cpp, testconstructors.cpp, testfunctionusage.cpp, testmemleak.cpp, testpreprocessor.cpp, testrunner.cpp, testsimplifytokens.cpp, testsuite.cpp, testsuite.h, testtokenize.cpp, testunusedvar.cpp, token.cpp, token.h, tokenize.cpp, tokenize.h: Formatting: uniformize end of lines. 2008-12-08 Nicolas Le Cam * CheckBufferOverrun.cpp, CheckBufferOverrun.h, CheckClass.cpp, CheckClass.h, CheckFunctionUsage.cpp, CheckMemoryLeak.cpp, CheckMemoryLeak.h, CheckOther.cpp, CheckOther.h, FileLister.cpp, FileLister.h, cppcheck.cpp, cppcheck.h, cppcheckexecutor.cpp, cppcheckexecutor.h, errorlogger.h, main.cpp, preprocessor.cpp, preprocessor.h, settings.cpp, settings.h, testbufferoverrun.cpp, testconstructors.cpp, testfunctionusage.cpp, testmemleak.cpp, testpreprocessor.cpp, testrunner.cpp, testsimplifytokens.cpp, testsuite.cpp, testsuite.h, testtokenize.cpp, testunusedvar.cpp, token.cpp, token.h, tokenize.cpp, tokenize.h: Revert revisions 627 and 628 2008-12-08 Nicolas Le Cam * CheckBufferOverrun.cpp, CheckClass.cpp, CheckClass.h, CheckMemoryLeak.cpp, CheckMemoryLeak.h, CheckOther.cpp, CheckOther.h, FileLister.h, cppcheck.cpp, cppcheck.h, cppcheckexecutor.cpp, cppcheckexecutor.h, errorlogger.h, preprocessor.cpp, preprocessor.h, settings.cpp, settings.h, testconstructors.cpp, testfunctionusage.cpp, testmemleak.cpp, testpreprocessor.cpp, testsimplifytokens.cpp, testsuite.h, testtokenize.cpp, testunusedvar.cpp, token.cpp, token.h, tokenize.cpp, tokenize.h: Formatting: uniformize end of lines (part 2) 2008-12-08 Nicolas Le Cam * CheckBufferOverrun.cpp, CheckBufferOverrun.h, CheckClass.cpp, CheckClass.h, CheckFunctionUsage.cpp, CheckMemoryLeak.cpp, CheckMemoryLeak.h, CheckOther.cpp, CheckOther.h, FileLister.cpp, FileLister.h, cppcheck.cpp, cppcheck.h, cppcheckexecutor.cpp, cppcheckexecutor.h, errorlogger.h, main.cpp, preprocessor.cpp, preprocessor.h, settings.cpp, settings.h, testbufferoverrun.cpp, testconstructors.cpp, testfunctionusage.cpp, testmemleak.cpp, testpreprocessor.cpp, testrunner.cpp, testsimplifytokens.cpp, testsuite.cpp, testsuite.h, testtokenize.cpp, testunusedvar.cpp, token.cpp, token.h, tokenize.cpp, tokenize.h: Formatting: uniformize end of lines. 2008-12-08 Nicolas Le Cam * token.cpp: TOKEN::Match minor optimization 2008-12-08 Reijo Tomperi * CheckFunctionUsage.cpp, CheckHeaders.cpp, CheckMemoryLeak.cpp, CheckOther.cpp, token.cpp, token.h, tokenize.cpp: Refactoring: Rest of the public variables in TOKEN moved to private area. 2008-12-08 Reijo Tomperi * CheckBufferOverrun.cpp, CheckClass.cpp, CheckFunctionUsage.cpp, CheckHeaders.cpp, CheckMemoryLeak.cpp, CheckOther.cpp, errorlogger.h, testbufferoverrun.cpp, testsimplifytokens.cpp, testtokenize.cpp, token.cpp, token.h, tokenize.cpp: Refactoring: TOKEN::next renamed to _next, getter and setter functions for it added next() and next(TOKEN*). 2008-12-08 Daniel Marjamäki * CheckOther.cpp: Variable usage : A few small fixes to reduce false positives 2008-12-08 Reijo Tomperi * testtokenize.cpp, token.cpp, token.h, tokenize.cpp: Refactoring: TOKEN::varId was moved from public to private 2008-12-08 Daniel Marjamäki * testtokenize.cpp, token.h, tokenize.cpp, tokenize.h: Variable Id : First simple implementation 2008-12-08 Daniel Marjamäki * testsuite.h: testing : Minor fix for ASSERT_EQUALS macro 2008-12-08 Nicolas Le Cam * testtokenize.cpp: Fix two warnings 2008-12-08 Nicolas Le Cam * CheckClass.cpp: Virtual Destructor : Minor optimization 2008-12-08 Daniel Marjamäki * cppcheck.cbproj, testrunner.cbproj: Borland C++ : Updated project files cppcheck and testrunner 2008-12-07 Nicolas Le Cam * testunusedvar.cpp: Fix compilation 2008-12-07 Daniel Marjamäki * CheckOther.cpp, cppcheck.cpp, testunusedvar.cpp: function variable usage : various fixes. but probably more fixes are needed. 2008-12-07 Daniel Marjamäki * CheckOther.cpp, CheckOther.h, testunusedvar.cpp: function variable usage : Added a simple check 2008-12-07 Reijo Tomperi * testtokenize.cpp, token.cpp: Fixed bug in TOKEN::multiCompare. "abc" and "a" were matched. 2008-12-07 Nicolas Le Cam * CheckMemoryLeak.cpp: Minor optimization. Reuse findmatch result instead of recalling it 2008-12-07 Daniel Marjamäki * testtokenize.cpp: tokenizer : The token "a" shouldn't match the pattern "abc|def", added assertion to a test but it's currently commented because it fails 2008-12-07 Nicolas Le Cam * CheckClass.cpp, testconstructors.cpp: Constructors: Fix checking of 'operator=' with test 2008-12-07 Daniel Marjamäki * cppcheck.cbp: cppcheck.cbp : Added testclass.cpp 2008-12-07 Daniel Marjamäki * CheckClass.cpp, testclass.cpp: Virtual destructors : Don't check base classes when inheritance is non-public 2008-12-07 Daniel Marjamäki * CheckClass.cpp, CheckClass.h, testconstructors.cpp: Constructors : Refactoring + Added checking of 'operator=' 2008-12-07 Daniel Marjamäki * tokenize.cpp: Fixed a bug in Tokenizer::simplifyTokenList. The keyword operator is never used in a variable declaration 2008-12-07 Daniel Marjamäki * CheckMemoryLeak.cpp, testmemleak.cpp: Memory leaks : Handle assignments better - bug 2395524 2008-12-07 Daniel Marjamäki * CheckClass.cpp: Check constructors: Minor optimisation 2008-12-07 Daniel Marjamäki * CheckClass.cpp, testconstructors.cpp: Constructors : Fixed so the test that kush_eplus added works 2008-12-07 Daniel Marjamäki * CheckClass.cpp: Refactoring. Use "str" instead of "aaaa0" 2008-12-07 Daniel Marjamäki * CheckClass.cpp: Refactoring: use "findmatch" instead of "findtoken" 2008-12-07 Daniel Marjamäki * CheckClass.cpp, testclass.cpp: Virtual destructors : Handle inheritance where "private|protected|public" is not defined 2008-12-07 Nicolas Le Cam * testconstructors.cpp: Add a test case that currently fail 2008-12-07 Nicolas Le Cam * FileLister.cpp: Fix bug when calling cppcheck without --recursive flag 2008-12-06 Daniel Marjamäki * testclass.cpp: Virtual destructors : Minor fix to a test to handle a private inheritance 2008-12-06 Daniel Marjamäki * CheckClass.cpp: Virtual Destructors : pattern for declaring a derived class... "class %var% : public|protected|private %var% .." 2008-12-06 Daniel Marjamäki * CheckClass.cpp, testclass.cpp: virtual destructor : iterate through base classes for a derived class to check that the destructor in each base class i virtual 2008-12-06 Daniel Marjamäki * CheckClass.cpp, testconstructors.cpp: Uninitialized member variables : Don't give false positives for private constructors 2008-12-06 Daniel Marjamäki * Makefile, testclass.cpp: testclass : Added a new unit testing file 2008-12-06 Daniel Marjamäki * CheckClass.cpp: Minor optimisation. Don't do redundant checking 2008-12-06 Daniel Marjamäki * tokenize.cpp: tokenize: "~Base" should generate two tokens. "~" and "Base" 2008-12-06 Daniel Marjamäki * CheckClass.cpp, CheckClass.h, cppcheck.cpp: Class checking : Check that base class destructors are virtual. Experimental 2008-12-06 Daniel Marjamäki * CheckClass.cpp, CheckClass.h: CheckClass : Refactoring - Removed include and moved struct VAR into the class 2008-12-06 Daniel Marjamäki * CheckOther.cpp: Unreachable code : minor bug fixes 2008-12-06 Daniel Marjamäki * CheckOther.cpp: Unreachable code : Fixed false positives for label 2008-12-06 Daniel Marjamäki * CheckOther.cpp, CheckOther.h, cppcheck.cpp: Added check that detects unreachable code below a 'return' statement 2008-12-06 Daniel Marjamäki * CheckMemoryLeak.cpp, CheckMemoryLeak.h, testmemleak.cpp: Memory leaks: Better handling of "realloc". Fixing bug [ 2395262 ] 2008-12-06 Daniel Marjamäki * token.cpp: TODO: Added a todo for refactoring TOKEN::Match 2008-12-06 Daniel Marjamäki * tokenize.cpp: Tokenizer: Remove "volatile" keyword to simplify checking 2008-12-06 Daniel Marjamäki * testtokenize.cpp: Fixed so that the expected and actual values in asserts are not mixed 2008-12-06 Daniel Marjamäki * testtokenize.cpp: testtokenize: Added TestTokenize::match1 that makes sure the old matching of "|" and "||" still works 2008-12-06 Reijo Tomperi * CheckMemoryLeak.cpp: CheckMemoryLeak.cpp, g_renew and g_try_renew also removed 2008-12-06 Reijo Tomperi * CheckMemoryLeak.cpp: Memory leak: False positive with g_realloc(). Removed g_realloc() and g_try_realloc() for now. See feature request [ 2395262 ] Check leaks with realloc, g_realloc and g_try_realloc() 2008-12-06 Reijo Tomperi * cppcheck.cpp, cppcheck.h, cppcheckexecutor.cpp, cppcheckexecutor.h: cppcheck and executor, fixed compiling error 2008-12-06 Daniel Marjamäki * cppcheck.cpp, cppcheck.h, cppcheckexecutor.cpp, cppcheckexecutor.h: refactoring: Increased constness of function parameters 2008-12-05 Reijo Tomperi * preprocessor.cpp: Preprocessor: Fixed bug, read() didn't handle correctly string constants like this: "\"" 2008-12-05 Reijo Tomperi * CheckBufferOverrun.cpp, token.cpp: Token: Fixed bug in match function, simplified CheckBufferOverrun code 2008-12-05 Daniel Marjamäki * CheckMemoryLeak.cpp: Memory leak: refactoring - changed "aaaa" to "str" 2008-12-05 Daniel Marjamäki * tokenize.cpp: tokenize: Replace a complicated condition with a "Match" 2008-12-05 Daniel Marjamäki * tokenize.cpp: tokenize: Replace "aaaa" and "strcmp" with "str" and "Match" 2008-12-05 Daniel Marjamäki * CheckHeaders.cpp: CheckHeaders: Refactoring so str and Match is used instead of aaaa and strcmp etc 2008-12-05 Daniel Marjamäki * CheckMemoryLeak.cpp: Memory leak: Replaced a few "strcmp" with "==" 2008-12-05 Daniel Marjamäki * CheckBufferOverrun.cpp: Buffer overrun: Minor refactoring. Use the Match function better. 2008-12-05 Daniel Marjamäki * tokenize.cpp: tokenize: Minor refactorings 2008-12-05 Daniel Marjamäki * CheckOther.cpp: CheckOther: Fixed a compiler warning 2008-12-04 Reijo Tomperi * testtokenize.cpp, token.cpp: Bug fix: Minor bug in previous commit, test added to catch that bug also. 2008-12-04 Reijo Tomperi * testtokenize.cpp, token.cpp, token.h, tokenize.cpp: TOKEN: Match() function improved, %any% and const|volatile kind of patterns are now accepted. Simplified comparing on tokenize.cpp. 2008-12-04 Daniel Marjamäki * testtokenize.cpp, tokenize.cpp: Tokenizer: Simplify numeric comparisons 2008-12-04 Daniel Marjamäki * testsuite.cpp: testsuite: show diffing strings better when they are not equal 2008-12-04 Daniel Marjamäki * testtokenize.cpp: TestTokenize: Use TOKEN::str() instead of TOKEN::aaaa() where possible 2008-12-04 Daniel Marjamäki * preprocessor.cpp, preprocessor.h, testpreprocessor.cpp: Preprocessor: Minor refactoring and improved testing 2008-12-03 Reijo Tomperi * testtokenize.cpp, tokenize.cpp: Tokenizer: Fixed bug, const and volatile functions were not recogniced by fillFunctionList() 2008-12-03 Daniel Marjamäki * preprocessor.cpp, testpreprocessor.cpp: preprocessor: fixed handling of tabs and spaces 2008-12-02 Daniel Marjamäki * CheckMemoryLeak.cpp: Memory leaks: Various improvements in "simplifycode" 2008-12-02 Daniel Marjamäki * CheckMemoryLeak.cpp: Memory leak: Further improvements of "simplifycode" 2008-12-02 Daniel Marjamäki * CheckMemoryLeak.cpp: Memory leak: Changed a comment 2008-12-02 Daniel Marjamäki * cppcheck.cbproj: updated the borland project file 2008-12-01 Reijo Tomperi * CheckMemoryLeak.cpp, CheckMemoryLeak.h: Minor improvement to code comments. 2008-12-01 Nicolas Le Cam * CheckOther.cpp: Warning If minor optimizations 2008-12-01 Reijo Tomperi * CheckOther.h: Patch: [ 2371330 ] Removed CheckOther::WarningDangerousFunctions() declaration 2008-12-01 Daniel Marjamäki * CheckMemoryLeak.cpp, testmemleak.cpp: Memory leak: Refactoring and improvements of simplifycode etc 2008-12-01 Daniel Marjamäki * testsuite.cpp, testsuite.h: testing: minor refactoring so better error messages are shown 2008-12-01 Daniel Marjamäki * CheckMemoryLeak.cpp, CheckMemoryLeak.h, testmemleak.cpp: Memory leaks: When "--debug" is given the checking will be different to highlight problems in "getcode" and "simplifycode" 2008-11-30 Daniel Marjamäki * cppcheck.cpp: added comment about "--debug" flag. This is used for various debugging purposes so the behaviour of c++check is undefined if it's given 2008-11-30 Daniel Marjamäki * CheckMemoryLeak.cpp, testmemleak.cpp: Memory leak: The "do" must be handled differently. Made a first fix for it 2008-11-30 Reijo Tomperi * cppcheck.cpp, man/cppcheck.1.xml: Verbose: Added line change to help text printing and updated man page 2008-11-30 Daniel Marjamäki * cppcheck.cpp, cppcheck.h, settings.cpp, settings.h: Verbose error message output through '--verbose' 2008-11-29 Daniel Marjamäki * CheckMemoryLeak.cpp, testmemleak.cpp: Memory leak: Fixed the test 'CheckMemoryLeak::func8' 2008-11-29 Daniel Marjamäki * testmemleak.cpp: Test Memory leak: Added a test case, currently a false positive is generated 2008-11-29 Daniel Marjamäki * cppcheck.cpp: cppcheck: Write version number etc 2008-11-28 Daniel Marjamäki * CheckMemoryLeak.cpp, testmemleak.cpp: Memory leak: Moved the class member checking to the "--all" 2008-11-27 Daniel Marjamäki * CheckBufferOverrun.cpp, CheckBufferOverrun.h, cppcheck.cpp, testbufferoverrun.cpp: Array index : No recursive checking unless the "--all" has been given 2008-11-27 Reijo Tomperi * FileLister.cpp, cppcheck.cpp, man/cppcheck.1.xml: Recursive file listing, .cxx added to file list 2008-11-27 Reijo Tomperi * CheckMemoryLeak.cpp: Removed debug output 2008-11-27 Daniel Marjamäki * CheckMemoryLeak.cpp, testmemleak.cpp: Memory leaks: Reverted the sensitive checking in r536. And improved the simplifycode function. 2008-11-26 Daniel Marjamäki * CheckMemoryLeak.cpp, testmemleak.cpp: Memory leaks: Made the checking a lot more sensitive 2008-11-26 Daniel Marjamäki * CheckMemoryLeak.cpp, CheckMemoryLeak.h: CheckMemoryLeak: Refactoring. Use TOKEN::isStandardType instead of rewriting its functionality 2008-11-26 Daniel Marjamäki * token.cpp, token.h: token: refactoring the 'isStandardType' a little 2008-11-26 Daniel Marjamäki * testmemleak.cpp: testmemleak: Added 'func7' test case. Not working yet 2008-11-25 Reijo Tomperi * cppcheck.cpp, cppcheck.h: Feature added: CppCheck class has now function addFile(string,string) which allows checking of unreal files, by giving just filename and file content as a parameter. 2008-11-25 Daniel Marjamäki * cppcheck.cpp, testbufferoverrun.cpp, testcharvar.cpp, testmemleak.cpp, tokenize.cpp, tokenize.h: Refactoring: Removed _settings member from the Tokenizer 2008-11-25 Daniel Marjamäki * cppcheck.cpp, testbufferoverrun.cpp, testcharvar.cpp, testconstructors.cpp, testdivision.cpp, testfunctionusage.cpp, testincompletestatement.cpp, testmemleak.cpp, testsimplifytokens.cpp, testtokenize.cpp, testunusedprivfunc.cpp, testunusedvar.cpp, tokenize.cpp, tokenize.h: Refactoring: Tokenizer - renaming functions, moved the 'tokenizeCode' to the private section 2008-11-25 Daniel Marjamäki * CheckFunctionUsage.cpp, tokenize.cpp: TODO: added a todo to add an error message. and removed an "invalid" todo 2008-11-25 Daniel Marjamäki * CheckFunctionUsage.cpp: Function usage: Report which file the missing function is implemented in 2008-11-24 Reijo Tomperi * cppcheck.h, cppcheckexecutor.cpp, cppcheckexecutor.h, errorlogger.h: Refactoring: Added missing license texts and some comments 2008-11-24 Reijo Tomperi * cppcheck.cbp: Refactoring: Updated project file for Code::Blocks 2008-11-24 Reijo Tomperi * Makefile, cppcheck.cpp, cppcheck.h, cppcheckexecutor.cpp, cppcheckexecutor.h, errorlogger.h, main.cpp, testsuite.cpp, testsuite.h: Refactoring: CppCheckExecutor class added 2008-11-24 Daniel Marjamäki * CheckBufferOverrun.cpp, CheckClass.cpp, CheckFunctionUsage.cpp, CheckHeaders.cpp, CheckMemoryLeak.cpp, CheckOther.cpp, testsimplifytokens.cpp, testtokenize.cpp, token.cpp, token.h, tokenize.cpp: TOKEN: Refactoring the 'str' member variable 2008-11-24 Daniel Marjamäki * FileLister.cpp: Visual C++: Updated the FileLister (applied patch FileLister_ReworkRecursiveAddFiles submitted by kush_eplus) 2008-11-24 Reijo Tomperi * token.cpp: bug fix, didn't compile on Linux (3 utf characters on top of file again) 2008-11-24 Daniel Marjamäki * cppcheck.vcproj: Visual C++: Updated the project file * removed 'commoncheck' * added 'checkfunctionusage' * added 'token' 2008-11-24 Daniel Marjamäki * cppcheck.cbproj, token.cpp: Borland C++: Minor updates so cppcheck compiles with Borland C++ 2008-11-23 Reijo Tomperi * cppcheck.cpp, cppcheck.h, main.cpp, settings.cpp, settings.h: Refactoring: Started making CppCheck class more generally usable (e.g. as a part of IDE). 2008-11-23 Reijo Tomperi * Makefile: Refactoring: Updated makefile to be more up-to-date after big refactoring changes. 2008-11-23 Daniel Marjamäki * CheckFunctionUsage.cpp: Function usage: Better handling of '!foo()' 2008-11-23 Reijo Tomperi * cppcheck.cbp, testrunner.cbp: Project files: Changed both targets to same file, using custom makefile 2008-11-23 Daniel Marjamäki * CheckFunctionUsage.cpp: Function usage: Minor update in the pattern for using function 2008-11-23 Daniel Marjamäki * CheckFunctionUsage.cpp, testfunctionusage.cpp: Function Usage: Handling '.. else foo()' 2008-11-23 Daniel Marjamäki * CheckFunctionUsage.cpp, testfunctionusage.cpp: Function usage: Handling callbacks better: 'void (*f)() = cond ? foo : NULL' 2008-11-23 Daniel Marjamäki * CheckFunctionUsage.cpp, testfunctionusage.cpp: Function usage: handling 'return foo();' better 2008-11-23 Daniel Marjamäki * cppcheck.cbp: codeblocks: Added project file for cppcheck 2008-11-23 Reijo Tomperi * CheckBufferOverrun.cpp, CheckClass.cpp, CheckHeaders.cpp, CheckMemoryLeak.cpp, token.cpp, token.h, tokenize.cpp: Refactoring: IsName() and IsNumber() are no longer static and they don't take a parameter. 2008-11-23 Daniel Marjamäki * testfunctionusage.cpp: Added test file for function usage 2008-11-23 Daniel Marjamäki * CheckFunctionUsage.cpp, Makefile, testrunner.cbp: Function Usage: Make sure it's detected that func is used in code such as 'if ( func() ) { ..' 2008-11-23 Reijo Tomperi * CheckBufferOverrun.cpp, CheckBufferOverrun.h, CheckFunctionUsage.cpp, CheckFunctionUsage.h, CheckMemoryLeak.cpp, CheckMemoryLeak.h, FileLister.h, cppcheck.cpp, cppcheck.h, testbufferoverrun.cpp, testcharvar.cpp, testconstructors.cpp, testdivision.cpp, testincompletestatement.cpp, testmemleak.cpp, testtokenize.cpp, testunusedprivfunc.cpp, testunusedvar.cpp, tokenize.cpp, tokenize.h: Refactoring: Renamed some member variables: variable -> _variable 2008-11-23 Reijo Tomperi * CheckBufferOverrun.cpp, CheckClass.cpp, CheckFunctionUsage.cpp, CheckHeaders.cpp, CheckMemoryLeak.cpp, CheckOther.cpp, token.cpp, token.h, tokenize.cpp: Refactoring: at() changed to tokAt() and getstr() changed to strAt() 2008-11-23 Daniel Marjamäki * CheckFunctionUsage.cpp: Function usage: Fixes in the check 2008-11-23 Daniel Marjamäki * CheckFunctionUsage.cpp, CheckFunctionUsage.h, cppcheck.cpp, cppcheck.h, testbufferoverrun.cpp, testcharvar.cpp, testmemleak.cpp, testrunner.cbp, testsuite.cpp, testtokenize.cpp, tokenize.cpp, tokenize.h: Refactoring: The Tokenizer::FillFunctionList has no use of its parameter. Enabled the CheckFunctionUsage 2008-11-22 Reijo Tomperi * testtokenize.cpp: Bug fix: Didn't compile on Debian, missing #include 2008-11-22 Reijo Tomperi * CheckBufferOverrun.cpp, CheckClass.cpp, CheckFunctionUsage.cpp, CheckHeaders.cpp, CheckMemoryLeak.cpp, CheckOther.cpp, Makefile, token.cpp, token.h, tokenize.cpp, tokenize.h: Refactoring: token.* files added, Some functions from Tokenizer moved under TOKEN. Renamed few functions, like gettok() -> at(), combineWithNext() and deleteNext() are also new names for old functions. Usage was gettok( tok, 2 ), but now it is tok->at( 2 ). 2008-11-22 Daniel Marjamäki * CheckMemoryLeak.cpp: Memory leak: Added checking for 'kcalloc' 2008-11-22 Daniel Marjamäki * CheckMemoryLeak.cpp: Memory leak: The 'realloc' shouldn't be treated exactly like 'malloc' 2008-11-22 Daniel Marjamäki * CheckClass.cpp, CheckClass.h, CheckHeaders.cpp, CheckHeaders.h, CheckMemoryLeak.cpp, CheckMemoryLeak.h, CheckOther.cpp, CheckOther.h, testbufferoverrun.cpp, testcharvar.cpp, testconstructors.cpp, testdivision.cpp, testincompletestatement.cpp, testmemleak.cpp, testtokenize.cpp, testunusedprivfunc.cpp, testunusedvar.cpp, tokenize.cpp, tokenize.h: increased constness of member variable _tokenizer in the Check* classes 2008-11-22 Daniel Marjamäki * CheckBufferOverrun.cpp, CheckBufferOverrun.h, tokenize.cpp, tokenize.h: CheckBufferOverrun: increased constness of _tokenizer member 2008-11-22 Daniel Marjamäki * cppcheck.cpp, cppcheck.h, testbufferoverrun.cpp, testcharvar.cpp, testconstructors.cpp, testdivision.cpp, testincompletestatement.cpp, testmemleak.cpp, testrunner.cbp, testsimplifytokens.cpp, testtokenize.cpp, testunusedprivfunc.cpp, testunusedvar.cpp, tokenize.cpp, tokenize.h: Check Function Usage: Removed much of the old checking and made some refactoring 2008-11-22 Daniel Marjamäki * CheckFunctionUsage.cpp, CheckFunctionUsage.h, Makefile: Function Usage: Added a new class for checking function usage 2008-11-22 Daniel Marjamäki * CheckMemoryLeak.cpp, testtokenize.cpp, tokenize.cpp, tokenize.h: tokenizer: simplifyConditions tries to simplify conditions.. those that are always true to '( true )' and those that are always false to '( false )' 2008-11-22 Daniel Marjamäki * CheckMemoryLeak.cpp, testmemleak.cpp: Memory leak: Handle conditions that are always true / false 2008-11-22 Daniel Marjamäki * testbufferoverrun.cpp, testcharvar.cpp, testconstructors.cpp, testdivision.cpp, testincompletestatement.cpp, testmemleak.cpp, testtokenize.cpp, testunusedprivfunc.cpp, testunusedvar.cpp, tokenize.cpp: tokenizer: Added DeallocateTokens to the destructor so it's not necessary to cleanup manually 2008-11-22 Daniel Marjamäki * testtokenize.cpp, tokenize.cpp, tokenize.h: tokenizer: Added functions "alwaysTrue" and "alwaysFalse" to check if a condition is always true / false 2008-11-21 Reijo Tomperi * CheckBufferOverrun.cpp, CheckClass.cpp, CheckHeaders.cpp, CheckMemoryLeak.cpp, CheckOther.cpp, CommonCheck.cpp, CommonCheck.h, Makefile, cppcheck.cpp, preprocessor.cpp, testbufferoverrun.cpp, testcharvar.cpp, testmemleak.cpp, tokenize.cpp, tokenize.h: Refactoring: CommonCheck.* files are removed. Rest of the global functions from there were moved to Tokenizer class 2008-11-21 Daniel Marjamäki * CheckMemoryLeak.cpp, CheckMemoryLeak.h: Memory leak: Added checking for 'fopen' and 'popen' 2008-11-21 Daniel Marjamäki * CheckMemoryLeak.cpp, testmemleak.cpp: Memory leak: Better handling when calling functions 2008-11-21 Daniel Marjamäki * cppcheck.cpp: unsigned division and char variable usage - moved checks to "--style" 2008-11-20 Reijo Tomperi * CheckBufferOverrun.cpp, CheckBufferOverrun.h, CheckClass.cpp, CheckClass.h, CheckHeaders.cpp, CheckHeaders.h, CheckMemoryLeak.cpp, CheckMemoryLeak.h, CheckOther.cpp, CheckOther.h, CommonCheck.cpp, CommonCheck.h, cppcheck.cpp, cppcheck.h, errorlogger.h, preprocessor.cpp, preprocessor.h, testbufferoverrun.cpp, testcharvar.cpp, testconstructors.cpp, testdivision.cpp, testincompletestatement.cpp, testmemleak.cpp, testpreprocessor.cpp, testrunner.cpp, testsimplifytokens.cpp, testsuite.cpp, testsuite.h, testtokenize.cpp, testunusedprivfunc.cpp, testunusedvar.cpp, tokenize.cpp, tokenize.h: Refactoring: Errors are no longer logged via global functions to a global stream. Instead callback function is used via interface. ErrorLogger interface was added and taken into use. 2008-11-20 Reijo Tomperi * CheckBufferOverrun.cpp, CheckClass.cpp, CheckHeaders.cpp, CheckMemoryLeak.cpp, CheckOther.cpp, CommonCheck.cpp, CommonCheck.h, tokenize.cpp, tokenize.h: Refactoring: Some global functions moved to Tokenizer class 2008-11-20 Daniel Marjamäki * testtokenize.cpp, tokenize.cpp, tokenize.h: cleanup 2008-11-20 Daniel Marjamäki * testtokenize.cpp, tokenize.cpp, tokenize.h: Function list: Remove functions with duplicate names to prevent false positives 2008-11-19 Daniel Marjamäki * CheckMemoryLeak.cpp: Memory leak: Minor update to make the checking stronger 2008-11-19 Daniel Marjamäki * CheckMemoryLeak.cpp, testmemleak.cpp: Memory leak: Readded some checks that were removed in r481 2008-11-19 Daniel Marjamäki * CheckMemoryLeak.cpp, testmemleak.cpp: Memory leak: Moved false positive to "--all" upon some special case conditions (bug 2313129) 2008-11-18 Daniel Marjamäki * CheckBufferOverrun.cpp: Buffer overrun: Fixed a segmentation fault 2008-11-18 Daniel Marjamäki * CheckMemoryLeak.cpp: Memory leak: limit the max call depth to 2 2008-11-17 Daniel Marjamäki * CheckMemoryLeak.cpp: Memory leak: Minor fix to prevent hang 2008-11-17 Daniel Marjamäki * cppcheck.cpp: minor update to startup message 2008-11-17 Daniel Marjamäki * preprocessor.cpp: preprocessor: Better warning when illegal character found 2008-11-17 Daniel Marjamäki * CheckMemoryLeak.cpp, testmemleak.cpp: Memory leak: moved simplifyTokens rule to '--all' 2008-11-17 Daniel Marjamäki * CheckMemoryLeak.cpp, testmemleak.cpp: Memory leak: Better handling of 'if (0 != p)' 2008-11-16 Daniel Marjamäki * CheckBufferOverrun.cpp, testbufferoverrun.cpp: Array index overrun: Improved the checking of class variables 2008-11-16 Daniel Marjamäki * testmemleak.cpp: testmemleak: Removed old TODO 2008-11-16 Reijo Tomperi * CheckHeaders.cpp, CheckOther.cpp, tokenize.cpp, tokenize.h: Refactoring: tokens() changed to const and to return const pointer. 2008-11-16 Reijo Tomperi * CheckBufferOverrun.cpp, CheckClass.cpp, CheckHeaders.cpp, CheckMemoryLeak.cpp, CheckOther.cpp, testsimplifytokens.cpp, testtokenize.cpp, tokenize.cpp, tokenize.h: Refactoring: Global variable tokenes is no more. 2008-11-16 Reijo Tomperi * CheckMemoryLeak.cpp, CheckMemoryLeak.h: Refactoring: static variable in CheckMemoryLeak is now a private member of the class. 2008-11-16 Reijo Tomperi * CheckBufferOverrun.cpp, CheckBufferOverrun.h, CheckClass.cpp, CheckClass.h, CheckMemoryLeak.cpp, CheckMemoryLeak.h, cppcheck.cpp, testbufferoverrun.cpp, testcharvar.cpp, testconstructors.cpp, testdivision.cpp, testmemleak.cpp, testrunner.cpp, testunusedprivfunc.cpp, tokenize.cpp, tokenize.h: Few static variables are now private members. ShowAll etc. global variables are now members of Settings class and given as a parameter to the classes that need them. 2008-11-16 Daniel Marjamäki * CheckMemoryLeak.cpp, CheckMemoryLeak.h, testmemleak.cpp: Memory leak: Mismatching allocation and deallocation in subfunction 2008-11-16 Daniel Marjamäki * CheckMemoryLeak.cpp, testmemleak.cpp: Memory leak: Added a simple test case 2008-11-16 Daniel Marjamäki * CheckMemoryLeak.cpp, CheckMemoryLeak.h, testmemleak.cpp: Memory leak: reverted most of change 461. 2008-11-16 Daniel Marjamäki * CheckMemoryLeak.cpp, testmemleak.cpp: Memory leak: Added test case that failed. And fixed it. 2008-11-15 Reijo Tomperi * tokenize.cpp: Bug fix: Missing include from previous commit, didn't compile on Debian. 2008-11-15 Reijo Tomperi * CheckBufferOverrun.cpp, CheckMemoryLeak.cpp, CommonCheck.cpp, CommonCheck.h, cppcheck.cpp, cppcheck.h, testbufferoverrun.cpp, testcharvar.cpp, testmemleak.cpp, tokenize.cpp, tokenize.h: Refactoring: Global/Static variables, FunctionList, GlobalFunctions and UsedGlobalFunctions are now private members of Tokenizer class. Class GlobalFunction is now private subclass of Tokenizer. Global functions CheckGlobalFunctionUsage, FillFunctionList and GetFunctionTokenByName are now member functions of Tokenizer. 2008-11-15 Daniel Marjamäki * CheckMemoryLeak.cpp, CheckMemoryLeak.h, testmemleak.cpp: Memory Leak: Handling Linux lists better => Detect more leaks 2008-11-15 Daniel Marjamäki * testrunner.cbp: codeblocks: Added project file 'testrunner.cbp' 2008-11-15 Daniel Marjamäki * testmemleak.cpp, testsimplifytokens.cpp, tokenize.cpp: SimplifyTokens: Replace 'sizeof(*abc)' with '100'. This prevents false positives in checks 2008-11-15 Daniel Marjamäki * Makefile, testsimplifytokens.cpp, tokenize.cpp: Simplify Tokens: Replace NULL with 0 and '(char *)0' with '0' 2008-11-15 Daniel Marjamäki * CheckClass.cpp, testconstructors.cpp: Uninitialized Member Variables: Fixed bug 'false positive on multi constructors' 2008-11-15 Daniel Marjamäki * CheckOther.cpp, CheckOther.h, testconstructors.cpp: cleanup files 2008-11-15 Daniel Marjamäki * CheckOther.cpp, CheckOther.h, testconstructors.cpp: Uninitialized member variable: Added unit test that currently fails for bug 2270353 - Uninitialized variable false positive on multi constructors 2008-11-15 Daniel Marjamäki * cppcheck.vcproj, testrunner.sln, testrunner.vcproj: Visual C++ Express 2008: Added project 'testrunner' and updated the project 'cppcheck' 2008-11-15 Daniel Marjamäki * cppcheck.cbproj, testrunner.cbproj: Borland C++: Added files "cppcheck" and "settings" to the projects 2008-11-15 Daniel Marjamäki * man/cppcheck.1.xml: Applied patch "errors_only_man" that adds description for "--errorsonly" to the man page. This was submitted by kimmov in bug 2277848 2008-11-14 Reijo Tomperi * Makefile, cppcheck.cpp, cppcheck.h, main.cpp, settings.cpp, settings.h, testrunner.cpp: Refactoring: New classes CppCheck and Settings. Code from main.cpp was moved to cppcheck.cpp 2008-11-13 Reijo Tomperi * CheckBufferOverrun.cpp, CheckClass.cpp, CheckHeaders.cpp, CheckMemoryLeak.cpp, CheckOther.cpp, CommonCheck.cpp, CommonCheck.h, main.cpp, testbufferoverrun.cpp, testcharvar.cpp, testconstructors.cpp, testdivision.cpp, testincompletestatement.cpp, testmemleak.cpp, testrunner.cpp, testtokenize.cpp, testunusedprivfunc.cpp, testunusedvar.cpp, tokenize.cpp, tokenize.h: Refactoring: Global variable Files is no more. Use tokenizer->getFiles() to get a pointer to it. 2008-11-13 Reijo Tomperi * Makefile: Make: New improved makefile 2008-11-13 Daniel Marjamäki * CheckClass.cpp, testconstructors.cpp: Uninitialized variable: chained assignments 2008-11-13 Daniel Marjamäki * main.cpp: Added command line option "--errorsonly" 2008-11-12 Reijo Tomperi * CheckBufferOverrun.cpp, main.cpp, testbufferoverrun.cpp, testcharvar.cpp, testconstructors.cpp, testdivision.cpp, testincompletestatement.cpp, testmemleak.cpp, testtokenize.cpp, testunusedprivfunc.cpp, testunusedvar.cpp, tokenize.cpp, tokenize.h: Refactoring: tokens_back and TypeSize are no longer global variables 2008-11-12 Reijo Tomperi * CheckBufferOverrun.cpp, CheckBufferOverrun.h, CheckClass.cpp, CheckClass.h, CheckHeaders.cpp, CheckHeaders.h, CheckMemoryLeak.cpp, CheckMemoryLeak.h, CheckOther.cpp, CheckOther.h, main.cpp, testbufferoverrun.cpp, testcharvar.cpp, testconstructors.cpp, testdivision.cpp, testincompletestatement.cpp, testmemleak.cpp, testunusedprivfunc.cpp, testunusedvar.cpp, tokenize.h: Refactoring: Tokenizer object given as a parameter to most of the classes 2008-11-11 Daniel Marjamäki * CheckClass.cpp, testunusedprivfunc.cpp: Unused private function: return pointer to private function 2008-11-11 Daniel Marjamäki * testmemleak.cpp: Memory leak: Added TODO test. Mismatching allocation and deallocation in subfunction 2008-11-11 Daniel Marjamäki * testunusedprivfunc.cpp: unused private function: Added test1 (assert that error message is given for simple case) 2008-11-11 Daniel Marjamäki * CheckMemoryLeak.cpp, testmemleak.cpp: Memory leak: Fixed one more unit test 2008-11-11 Daniel Marjamäki * CheckOther.cpp: Refactoring: Don't use the TOKEN::str directly 2008-11-11 Daniel Marjamäki * CheckBufferOverrun.cpp: Refactoring: Use 'Match' instead of direct comparisons 2008-11-11 Reijo Tomperi * CheckBufferOverrun.cpp, CheckBufferOverrun.h, CheckClass.cpp, CheckClass.h, CheckHeaders.cpp, CheckHeaders.h, CheckMemoryLeak.cpp, CheckMemoryLeak.h, CheckOther.cpp, CheckOther.h, Makefile, main.cpp, preprocessor.cpp, preprocessor.h, testbufferoverrun.cpp, testcharvar.cpp, testconstructors.cpp, testdivision.cpp, testincompletestatement.cpp, testmemleak.cpp, testpreprocessor.cpp, testunusedprivfunc.cpp, testunusedvar.cpp: Refactoring: Following new classes were created: CheckBufferOverrunClass CheckClass CheckHeaders CheckMemoryLeakClass CheckOther Preprocessor 2008-11-10 Daniel Marjamäki * testunusedvar.cpp: unused struct member: Added checks 2008-11-10 Daniel Marjamäki * testmemleak.cpp: testmemleak: Added todo 'forwhile7' 2008-11-10 Daniel Marjamäki * CheckMemoryLeak.cpp, testmemleak.cpp: Memory leak: Handle "goto" a little differently 2008-11-10 Daniel Marjamäki * CheckMemoryLeak.cpp, testmemleak.cpp: cleanup 2008-11-10 Daniel Marjamäki * todo.txt: todo: added memory leak examples 2008-11-10 Daniel Marjamäki * CheckMemoryLeak.cpp, testmemleak.cpp: Memory leaks: Added tests and handling for 'throw' and linux lists 2008-11-10 Daniel Marjamäki * todo.txt: todo: added 'check operator=' 2008-11-09 Daniel Marjamäki * CheckMemoryLeak.cpp: Memory leak: Minor updates in the notvar function 2008-11-09 Daniel Marjamäki * CheckMemoryLeak.cpp, testmemleak.cpp: Memory Leak: Improved checking of subfunctions. Simplify their code. 2008-11-09 Daniel Marjamäki * CheckMemoryLeak.cpp, testmemleak.cpp: Memory leak: Ensure that simple memory leak is detected 2008-11-09 Daniel Marjamäki * CheckMemoryLeak.cpp, CommonCheck.cpp, CommonCheck.h, testmemleak.cpp: Memory leak: Began work for parsing into subfunctions. 2008-11-09 Daniel Marjamäki * CheckMemoryLeak.cpp, testmemleak.cpp: Memory leak: Removed false positives. 'use ; use ;' is not always the same as 'use ;' 2008-11-09 Daniel Marjamäki * CheckMemoryLeak.cpp, CommonCheck.cpp, testmemleak.cpp: Memory Leak: Stronger checking. Ignore 'if use ;' and 'if dealloc;'. A leak could occur if it's not executed. 2008-11-09 Reijo Tomperi * CheckBufferOverrun.cpp, CheckClass.cpp, CheckHeaders.cpp, CheckMemoryLeak.cpp, CheckOther.cpp, CommonCheck.cpp, main.cpp, testbufferoverrun.cpp, testcharvar.cpp, testconstructors.cpp, testdivision.cpp, testincompletestatement.cpp, testmemleak.cpp, testtokenize.cpp, testunusedprivfunc.cpp, testunusedvar.cpp, tokenize.cpp, tokenize.h: Refactoring: Tokenizer class added, functions still mostly static and using globals 2008-11-08 Daniel Marjamäki * testsuite.h: GPL: Added comment in testsuite.h 2008-11-08 Daniel Marjamäki * Makefile, testunusedprivfunc.cpp: Unused private function: Added test 2008-11-08 Daniel Marjamäki * CheckMemoryLeak.cpp, testmemleak.cpp: Memory leak: remove the dealloc in "if dealloc ;" if it's not followed by an "else". This makes the checking stronger. 2008-11-07 Reijo Tomperi * tokenize.h: - Fixed compiling on Debian with gcc ( missing includes and std:: ) - Removed c-style include for Borland compiler. 2008-11-07 Daniel Marjamäki * CheckMemoryLeak.cpp, testmemleak.cpp: Memory Leak: Added checking 2008-11-07 Daniel Marjamäki * CheckMemoryLeak.cpp, CheckMemoryLeak.h, testmemleak.cpp, tokenize.h: cleanup the files 2008-11-07 Daniel Marjamäki * tokenize.h: Visual C++: Fixed compiler error for "strdup" 2008-11-07 Daniel Marjamäki * CheckMemoryLeak.cpp, testmemleak.cpp, testrunner.cbproj: Memory Leaks: Convert "do-while" blocks to "while" blocks to make the handling for that the same. 2008-11-07 Daniel Marjamäki * CheckMemoryLeak.cpp, CheckMemoryLeak.h, testmemleak.cpp: Memory Leaks: Improved the checking of loops. 2008-11-07 Daniel Marjamäki * tokenize.h: Borland C++: Fixed compiler error (couldn't find the function 'free') 2008-11-06 Reijo Tomperi * FileLister.cpp, FileLister.h, testtokenize.cpp: FileLister.* and testtokenize.cpp, changed encoding to utf-8 2008-11-06 Daniel Marjamäki * CheckMemoryLeak.cpp, testmemleak.cpp: Memory Leak: Fixed bug with strdup in loop. Bug 2225370 2008-11-06 Daniel Marjamäki * CheckBufferOverrun.cpp, CheckMemoryLeak.cpp, CommonCheck.cpp, CommonCheck.h, tokenize.cpp, tokenize.h: Refactoring TOKEN: Changed from struct to class 2008-11-06 Daniel Marjamäki * CheckBufferOverrun.cpp, Makefile, testbufferoverrun.cpp, testincompletestatement.cpp, tokenize.cpp: cleanup of UTF-8. Updated the Makefile 2008-11-06 Daniel Marjamäki * CheckOther.cpp: CheckAlpha: Expanded checking to include 'isupper' and 'islower' 2008-11-06 Daniel Marjamäki * CheckClass.cpp: CheckClass: Applied patch 2220196 2008-11-05 Daniel Marjamäki * todo.txt: todo: A few short updated notes 2008-11-05 Daniel Marjamäki * tests.cpp: tests: Removed this deprecated file 2008-11-05 Daniel Marjamäki * testrunner.cbproj: C++ Builder: Updated the testrunner project 2008-11-05 Daniel Marjamäki * CheckBufferOverrun.cpp, testbufferoverrun.cpp: Buffer overrun: Fixed a false positive 2008-11-05 Daniel Marjamäki * testother.cpp: testother: Removed this test. Individual tests will be created instead 2008-11-05 Daniel Marjamäki * testincompletestatement.cpp: testincompletestatement: created new test 2008-11-05 Daniel Marjamäki * testbufferoverrun.cpp: TestBufferOverrun: Added a test case that shouldn't generate error. Get address beyond array. 2008-11-05 Daniel Marjamäki * testtokenize.cpp, tokenize.cpp: Tokenizer: Skip inline assembly (Bug 2220727) 2008-11-05 Daniel Marjamäki * CheckClass.cpp: CheckClass: Removed false positive "unused private function" for typedef (Bug 2220326) 2008-11-04 Daniel Marjamäki * testtokenize.cpp, tokenize.cpp: Tokenize: Changed the array CurrentToken to a std::string 2008-11-04 Daniel Marjamäki * testrunner.cbproj: Borland C++: Added 'TestTokenize' to the testrunner project 2008-11-03 Daniel Marjamäki * testpreprocessor.cpp: testpreprocessor: updated the testing for multiline preprocessor statements 2008-11-03 Daniel Marjamäki * preprocessor.cpp: preprocessor: fixed invalid character 2008-11-03 Daniel Marjamäki * cppcheck.cbproj, testrunner.cbproj: Updated the Borland C++ project files 2008-11-03 Daniel Marjamäki * cppcheck.sln, cppcheck.vcproj: Added Visual C++ 2008 Express solution and project files 2008-11-03 Daniel Marjamäki * preprocessor.cpp: preprocessor: simple optimizations 2008-11-03 Daniel Marjamäki * FileLister.cpp, FileLister.h, Makefile, main.cpp: File Listing: New handling of listing files. (Bug 2194949) 2008-11-03 Daniel Marjamäki * testpreprocessor.cpp: TestPreprocessor: Minor update to ensure that extra spaces are filtered out 2008-11-03 Daniel Marjamäki * testbufferoverrun.cpp, testcharvar.cpp, testconstructors.cpp, testdivision.cpp, testmemleak.cpp, testother.cpp, testunusedvar.cpp: Testing: DeallocateTokens after each test 2008-11-03 Daniel Marjamäki * testtokenize.cpp, tokenize.cpp: Tokenizer: Handle '\' in preprocessor lines 2008-11-02 Daniel Marjamäki * preprocessor.cpp, testpreprocessor.cpp: preprocessor: handling the '\' in preprocessor code 2008-11-02 Daniel Marjamäki * CheckOther.cpp, testcharvar.cpp: TestCharVar: Fixed some false positives 2008-11-02 Daniel Marjamäki * CheckClass.cpp: Class Checking: Fixed AV in FindClassFunction 2008-11-02 Daniel Marjamäki * testmemleak.cpp, tokenize.cpp: memleak: fixed false positives for assignment in return statement (bug 2205568) 2008-11-01 Daniel Marjamäki * CheckClass.cpp, testconstructors.cpp: Uninitialized Member Variables: Fixed problems with different classes with same name (Bug 2208157) 2008-11-01 Daniel Marjamäki * man/cppcheck.1.xml: man: Added xml for generating man page 2008-11-01 Daniel Marjamäki * Makefile: Makefile: Applied changes suggested by Reijo 2008-11-01 Daniel Marjamäki * CheckClass.cpp, testconstructors.cpp: Uninitialized member variables: Removed false positives when using operator= (Bug 2190376) 2008-11-01 Daniel Marjamäki * CheckClass.cpp, testconstructors.cpp: Uninitialized Member Variables: Check statements that begin after for example "if (..)" or "else" (Bug 2190290) 2008-11-01 Daniel Marjamäki * CheckClass.cpp, testconstructors.cpp: Unitialized Members Variables: Fixed false positives when using "this" (Bug 2190300) 2008-10-31 Daniel Marjamäki * testpreprocessor.cpp: testpreprocessor: changed the syntax 2008-10-31 Daniel Marjamäki * preprocessor.cpp: preprocessor: Minor typo fix 2008-10-31 Daniel Marjamäki * main.cpp, preprocessor.cpp, preprocessor.h, testpreprocessor.cpp: Preprocessor: Added elif handling. Check for invalid characters 2008-10-31 Daniel Marjamäki * preprocessor.cpp, tokenize.cpp: fixed compilation warnings generated by visual c++. Nothing serious 2008-10-30 Daniel Marjamäki * main.cpp, preprocessor.cpp, testpreprocessor.cpp, tokenize.cpp, tokenize.h: preprocessor: Use the new preprocessor in cppcheck 2008-10-30 Daniel Marjamäki * preprocessor.cpp, testpreprocessor.cpp: preprocessor: Handling "#if .." better 2008-10-30 Daniel Marjamäki * main.cpp, preprocessor.cpp, testpreprocessor.cpp: preprocessor: Minor cleanups and fixes 2008-10-30 Daniel Marjamäki * main.cpp: Check that a supported compiler is used to when compiling c++check 2008-10-30 Daniel Marjamäki * testpreprocessor.cpp: preprocessor: Added test if_cond1. It fails currently 2008-10-29 Daniel Marjamäki * preprocessor.cpp, testpreprocessor.cpp: preprocessor: Added tests test3, test4, test5 and if1 2008-10-29 Daniel Marjamäki * preprocessor.cpp: preprocessor: Fixed tests 2008-10-28 Daniel Marjamäki * testpreprocessor.cpp: preprocessor: updated the tests. They are now failing. 2008-10-28 Daniel Marjamäki * preprocessor.cpp, preprocessor.h, testpreprocessor.cpp: cleanup 2008-10-27 Daniel Marjamäki * preprocessor.cpp, testpreprocessor.cpp: preprocessor: refactoring the preprocessor and added TestPreprocessor::if0 2008-10-27 Daniel Marjamäki * preprocessor.cpp, preprocessor.h, testpreprocessor.cpp: preprocessor: Refactoring 2008-10-27 Daniel Marjamäki * testrunner.cbproj: C++ Builder: Added the preprocessor files to testrunner.cbproj 2008-10-26 Daniel Marjamäki * preprocessor.cpp, testpreprocessor.cpp: preprocessor: Remove comments 2008-10-26 Daniel Marjamäki * preprocessor.cpp, testpreprocessor.cpp: preprocessor: refactoring 2008-10-26 Daniel Marjamäki * preprocessor.cpp: preprocessor: quick fix to make the TestPreprocessor::test1 work 2008-10-26 Daniel Marjamäki * preprocessor.cpp, preprocessor.h, testpreprocessor.cpp: preprocessor: Created a simple test. But it fails currently. 2008-10-26 Daniel Marjamäki * testrunner.cpp, testsuite.cpp, testsuite.h: Testing: Only run tests in a specified class 2008-10-26 Daniel Marjamäki * Makefile, preprocessor.cpp, preprocessor.h, testpreprocessor.cpp: preprocessor: Added new preprocessor. Only used in the tests yet. 2008-10-26 Daniel Marjamäki * COPYING, CheckBufferOverrun.cpp, CheckBufferOverrun.h, CheckClass.cpp, CheckClass.h, CheckHeaders.cpp, CheckHeaders.h, CheckMemoryLeak.cpp, CheckMemoryLeak.h, CheckOther.cpp, CheckOther.h, CommonCheck.cpp, CommonCheck.h, main.cpp, testbufferoverrun.cpp, testcharvar.cpp, testconstructors.cpp, testdivision.cpp, testmemleak.cpp, testother.cpp, testrunner.cpp, testsuite.cpp, testunusedvar.cpp, tokenize.cpp, tokenize.h: Licensing: Using the GPL 3 license 2008-10-25 Daniel Marjamäki * CommonCheck.cpp, main.cpp: Usage of Global functions: Only checked if "--all" is given. Show progress. 2008-10-25 Daniel Marjamäki * CheckMemoryLeak.cpp, testmemleak.cpp: Reverted [352] it's not a good fix 2008-10-25 Daniel Marjamäki * CheckMemoryLeak.cpp, testmemleak.cpp: CheckMemoryLeak: Fixed bug 2190219 - False positive, Mismatching allocation and deallocation 2008-10-23 Daniel Marjamäki * CheckOther.cpp, Makefile, testother.cpp: CheckIncompleteStatement: Fixed false positive generated by CheckIncompleteStatement (bug 2187837) 2008-10-21 Daniel Marjamäki * CheckClass.cpp: CheckClass: Minor fix to make it compile in Visual c++ 2008-10-19 Daniel Marjamäki * CheckClass.cpp: CheckConstructors: Handle recursion better. Don't hang. 2008-10-19 Daniel Marjamäki * CheckMemoryLeak.cpp: Memory Leak: Better checking of mismatching alloc and dealloc for gtk 2008-10-19 Daniel Marjamäki * CheckMemoryLeak.cpp, testmemleak.cpp: Memory Leak: Fixed false positive 2008-10-19 Daniel Marjamäki * tokenize.cpp: tokenize: Fixed possible endless loop problem when handling typedefs 2008-10-18 Daniel Marjamäki * CheckMemoryLeak.cpp: Memory Leak: Better checking of memory leaks in gtk applications 2008-10-16 Daniel Marjamäki * Makefile, testbufferoverrun.cpp, testcharvar.cpp, testconstructors.cpp, testdivision.cpp, testmemleak.cpp, testsuite.cpp, testsuite.h, testunusedvar.cpp: testing: Various fixes to make the tests compile without warnings/errors 2008-10-16 Daniel Marjamäki * CheckMemoryLeak.cpp: MemoryLeak: Minor fix to reduce false positives 2008-10-15 Daniel Marjamäki * CheckMemoryLeak.cpp: MemoryLeak: minor updates 2008-10-15 Daniel Marjamäki * testbufferoverrun.cpp, testcharvar.cpp, testconstructors.cpp, testdivision.cpp, testmemleak.cpp, testsuite.h: Testing: Added macro 'REGISTER_TEST' 2008-10-13 Daniel Marjamäki * testbufferoverrun.cpp, testcharvar.cpp, testconstructors.cpp, testdivision.cpp, testmemleak.cpp, testrunner.cbproj, testrunner.cpp, testsuite.cpp, testsuite.h: Testing: Updated the testing to the new test framework 2008-10-12 Daniel Marjamäki * MiniCppUnit.cpp, MiniCppUnit.h, TestsRunner.cpp: testing: Removed MiniCppUnit 2008-10-12 Daniel Marjamäki * testrunner.cpp, testsuite.cpp, testsuite.h: testing: Added a new unit testing framework 2008-10-08 Daniel Marjamäki * testmemleak.cpp: testmemleak: preparing to add checks of function calls 2008-10-06 Daniel Marjamäki * CheckOther.cpp, testdivision.cpp: Unsigned division: Checking if negative constant is used 2008-10-06 Daniel Marjamäki * testdivision.cpp: TestDivision: Added two tests of unsigned division when negative constant is used. 2008-10-04 Daniel Marjamäki * CheckOther.cpp, main.cpp, testdivision.cpp: CheckUnsignedDivision: Made it more accurate and moved it to the standard checks 2008-09-29 Daniel Marjamäki * CheckMemoryLeak.cpp: CheckMemoryLeak: Removed false positives about not deleting class instances 2008-09-24 Daniel Marjamäki * main.cpp: cppcheck: removed checking of implementation in header. temporarily commented out the check for variable scope. These changes were made so that fewer warning messages will be produced when running c++check 2008-09-24 Daniel Marjamäki * Makefile, testunusedvar.cpp: testunusedvar: Added simple testing for unused variables 2008-09-23 Daniel Marjamäki * CheckOther.cpp: CheckOther: Minor updates. Removed false positives for CheckScope 2008-09-20 Daniel Marjamäki * CheckOther.cpp, CheckOther.h, main.cpp, tokenize.cpp: Incomplete statement: Check for statements that begin with a constant 2008-09-16 Daniel Marjamäki * CheckOther.cpp, testcharvar.cpp: CheckOther: Minor updates in checking of signed char variables and unsigned division 2008-09-15 Daniel Marjamäki * CheckOther.cpp, testdivision.cpp: CheckUnsignedDivision: Refactoring 2008-09-11 Daniel Marjamäki * tokenize.cpp: tokenize: Fixed a bug in the tokenizer 2008-09-11 Daniel Marjamäki * main.cpp: visual c++: added "--recursive" support 2008-09-11 Daniel Marjamäki * CheckClass.cpp, CheckMemoryLeak.cpp, CommonCheck.cpp, main.cpp, tokenize.cpp: compilation: Various cross compilation fixes. The "--recursive" option doesn't work on VC now. 2008-09-10 Daniel Marjamäki * CommonCheck.cpp, MiniCppUnit.cpp, main.cpp: compilation: hopefully the program should be compilable on VC now 2008-09-02 Daniel Marjamäki * CheckMemoryLeak.cpp: memleak: better handling of switch blocks 2008-09-01 Daniel Marjamäki * testmemleak.cpp: testmemleak: added checks for class members 2008-08-31 Daniel Marjamäki * CheckMemoryLeak.cpp, testmemleak.cpp: memleak: uncommented and fixed the handling of switch 2008-08-30 Daniel Marjamäki * CheckMemoryLeak.cpp, testmemleak.cpp: memleak: commented out the switch handling temporarily. it causes segmentation faults when checking the linux kernel. 2008-08-30 Daniel Marjamäki * CheckBufferOverrun.cpp, CheckClass.cpp, CheckHeaders.cpp, CheckOther.cpp, CommonCheck.cpp, main.cpp, tokenize.cpp: made cppcheck compile with g++ 4.3 2008-08-30 Daniel Marjamäki * main.cpp, tokenize.cpp: djgpp: Fixed compiler warnings/errors when compiling with DJGPP 2008-08-28 Daniel Marjamäki * testdivision.cpp, tokenize.cpp: tokenize: handle simple typedefs 2008-08-28 Daniel Marjamäki * CheckOther.cpp, CheckOther.h, Makefile, main.cpp, testcharvar.cpp, testrunner.cbproj: char variable usage: Added checking 2008-08-27 Daniel Marjamäki * CheckMemoryLeak.cpp, testmemleak.cpp: testmemleak: improved the checking of loops 2008-08-27 Daniel Marjamäki * CheckOther.cpp, testdivision.cpp: testdivision: changed the error message. hopefully it is clearer 2008-08-27 Daniel Marjamäki * testrunner.cbproj: testrunner.cbproj: added 'testbufferoverrun', 'testconstructors' and 'testdivision' 2008-08-25 Daniel Marjamäki * CheckMemoryLeak.cpp, testmemleak.cpp: CheckMemoryLeak: Improved the reducing of "if.." 2008-08-24 Daniel Marjamäki * CheckMemoryLeak.cpp, testmemleak.cpp: testmemleak: replace switch blocks with if blocks 2008-08-24 Daniel Marjamäki * Makefile, testconstructors.cpp: testing: added 'testconstructors' 2008-08-23 Daniel Marjamäki * testdivision.cpp: test: Added 'testdivision.cpp' 2008-08-23 Daniel Marjamäki * Makefile, testmemleak.cpp, tests.cpp: test: Added 'testdivision' 2008-08-23 Daniel Marjamäki * testbufferoverrun.cpp, tests.cpp: test: Minor polishing 2008-08-23 Daniel Marjamäki * testbufferoverrun.cpp: test: Added the last buffer overrun tests 2008-08-23 Daniel Marjamäki * Makefile, testbufferoverrun.cpp, tests.cpp: testing: Added 'testbufferoverrun' 2008-08-23 Daniel Marjamäki * MiniCppUnit.cpp, MiniCppUnit.h: minicppunit: removed compiler warnings about characters 2008-08-23 Daniel Marjamäki * CheckMemoryLeak.cpp: CheckMemoryLeak: Updated the handling of 'case' and 'default' a little 2008-08-22 Daniel Marjamäki * test_cppcheck.cbproj, testrunner.cbproj: testing: created new testproject for codegear that uses the minicppunit framework 2008-08-22 Daniel Marjamäki * CheckMemoryLeak.cpp, MiniCppUnit.cpp, MiniCppUnit.h, testmemleak.cpp, tests.cpp: testing: Moved tests from tests.cpp to testmemleak.cpp (forwhile, switch) 2008-08-21 Daniel Marjamäki * CheckMemoryLeak.cpp, MiniCppUnit.cpp, testmemleak.cpp, tests.cpp: testing: Added tests TestMemoryleak::ifelse 2008-08-21 Daniel Marjamäki * Makefile, MiniCppUnit.cpp, MiniCppUnit.h, TestsRunner.cpp, testmemleak.cpp: testing: Started using the MiniCppUnit framework 2008-08-20 Daniel Marjamäki * CheckMemoryLeak.cpp, CommonCheck.cpp: refactoring: made compilation work in codegear 2008-08-20 Daniel Marjamäki * CheckMemoryLeak.cpp: CheckMemoryLeak: Fixed a bug: Don't erase "{ }", replace with ";" 2008-08-19 Daniel Marjamäki * CheckMemoryLeak.cpp, tests.cpp: CheckMemoryLeak: Added testcase (false positive from linux kernel) 2008-08-19 Daniel Marjamäki * CheckMemoryLeak.cpp, CommonCheck.cpp, tests.cpp: CheckMemoryLeak: Small improvements 2008-08-18 Daniel Marjamäki * CheckMemoryLeak.cpp, tests.cpp: CheckMemoryLeak: By default skip class memory leaks because there may be various types of garbage collectors 2008-08-17 Daniel Marjamäki * CheckMemoryLeak.cpp, tests.cpp: CheckMemoryLeak: Minor updates 2008-08-17 Daniel Marjamäki * CheckMemoryLeak.cpp, tests.cpp: CheckMemoryLeak: Made a test case work 2008-08-16 Daniel Marjamäki * CheckMemoryLeak.cpp: CheckMemoryLeak: Simplified and updated the code reducers 2008-08-16 Daniel Marjamäki * CheckMemoryLeak.cpp, tests.cpp: CheckMemoryLeak: Refactoring further 2008-08-16 Daniel Marjamäki * CheckMemoryLeak.cpp, tests.cpp: CheckMemoryLeak: Added simple checking 2008-08-16 Daniel Marjamäki * CheckMemoryLeak.cpp: CheckMemoryLeak: Got rid of false positives 2008-08-16 Daniel Marjamäki * CheckMemoryLeak.cpp, CommonCheck.cpp, CommonCheck.h: CheckMemoryLeak: Refactoring the check 2008-08-15 Daniel Marjamäki * CheckMemoryLeak.cpp, tests.cpp: CheckMemoryLeak: Made the checking a lot simpler when "--all" is not given. This should give few false positives 2008-08-15 Daniel Marjamäki * tests.cpp: tests: Added memory leak test that gives a false positive 2008-08-15 Daniel Marjamäki * CheckMemoryLeak.cpp, tests.cpp: CheckMemoryLeak: Added testcase and made it work (assume that foo.add(p) deallocates p. Todo to trace into foo.add) 2008-08-14 Daniel Marjamäki * CheckMemoryLeak.cpp, tests.cpp: CheckMemoryLeak: better handling of switch blocks 2008-08-13 Daniel Marjamäki * CheckMemoryLeak.cpp, tests.cpp: CheckMemoryLeak: Handle one more test case (return pointer) 2008-08-13 Daniel Marjamäki * CheckMemoryLeak.cpp, tests.cpp: CheckMemoryLeak: Calling unknown function => assume that it's deallocating variable 2008-08-12 Daniel Marjamäki * CheckMemoryLeak.cpp, tests.cpp: memory leak: improved the checking. subfunctions are parsed. redundant conditions are skipped 2008-08-12 Daniel Marjamäki * CheckOther.cpp, tokenize.cpp: cleanup: removed spaces 2008-08-12 Daniel Marjamäki * CheckBufferOverrun.cpp, tests.cpp: buffer overruns: added tests and improved the checking 2008-08-11 Daniel Marjamäki * tests.cpp: tests: cleanup and reordering 2008-08-11 Daniel Marjamäki * tests.cpp: tests: Refactoring 2008-08-09 Daniel Marjamäki * todo.txt: todo: added todo to simplify the token list further 2008-08-09 Daniel Marjamäki * tests.cpp: tests: minor updates of the tests 2008-08-09 Daniel Marjamäki * CheckMemoryLeak.cpp: CheckMemoryLeak: Improved the checking (handling loops) 2008-08-07 Daniel Marjamäki * CheckMemoryLeak.cpp, tests.cpp: CheckMemoryLeak: updated the checking so that all execution paths are tried 2008-08-07 Daniel Marjamäki * cppcheck.cbproj, test_cppcheck.cbproj: cg2007: Added CodeGear 2007 project files 2008-08-07 Daniel Marjamäki * CheckMemoryLeak.cpp: Refactoring: Renamed class allocfunc to AllocFunc 2008-08-07 Daniel Marjamäki * CommonCheck.cpp: CommonCheck: Refactoring. Renamed clGlobalFunction to GlobalFunction 2008-05-14 Daniel Marjamäki * tests.cpp: tests: updated the tests 2008-05-14 Daniel Marjamäki * CheckOther.cpp, CheckOther.h: CheckOther: Removed unused functions 2008-05-10 Daniel Marjamäki * tests.cpp: testing: Added test for mismatching allocation and deallocation 2008-05-10 Daniel Marjamäki * CheckBufferOverrun.cpp: CheckBufferOverrun: Refactoring and made the checking smarter 2008-05-10 Daniel Marjamäki * CheckBufferOverrun.cpp: CheckBufferOverrun: Fixed minor bug that resultet in false positives 2008-05-10 Daniel Marjamäki * CheckMemoryLeak.cpp: CheckMemoryLeak: Made the checking weaker to reduce false positives 2008-05-10 Daniel Marjamäki * CheckMemoryLeak.cpp, tests.cpp: CheckMemoryLeak: Handling functions that allocate memory 2008-05-10 Daniel Marjamäki * CheckOther.cpp, tests.cpp: CheckStructMemberUsage: Added more cases 2008-05-09 Daniel Marjamäki * CheckOther.cpp, CheckOther.h, main.cpp, tests.cpp: CheckStructMemberUsage: Check for unused struct members 2008-05-05 Daniel Marjamäki * CommonCheck.cpp: CheckGlobalFunctionUsage: Optimised 2008-05-04 Daniel Marjamäki * CheckMemoryLeak.cpp, tests.cpp: CheckMemoryLeak: Removed false positives 2008-05-03 Daniel Marjamäki * CheckOther.cpp, tests.cpp: CheckConstantFunctionParameters: Updated the check to handle all std::.. struct and class 2008-05-03 Daniel Marjamäki * CheckOther.cpp, CheckOther.h, main.cpp: Added check: passing constant function parameter by value instead of by reference/pointer 2008-05-03 Daniel Marjamäki * CheckMemoryLeak.cpp: CheckMemoryLeak.cpp: Minor improvements to avoid false positives 2008-04-18 Daniel Marjamäki * CheckClass.cpp: Checking memset/memcpy/memmove. Removed false positives 2008-04-16 Daniel Marjamäki * CheckMemoryLeak.cpp: CheckMemoryLeak: A few tweaks to make it report less false positives against the linux kernel 2008-04-14 Daniel Marjamäki * CheckMemoryLeak.cpp, tests.cpp: CheckMemoryLeak: Small fixes and updates 2008-04-14 Daniel Marjamäki * CheckMemoryLeak.cpp: CheckMemoryLeak: Bug fix so that checking stops when the variable goes out of scope 2008-04-14 Daniel Marjamäki * bugs_that_cppcheck_finds.txt: Removed 'bugs_that_cppcheck_finds'. It will be listed in the wiki instead 2008-04-12 Daniel Marjamäki * CheckClass.cpp, CheckMemoryLeak.cpp, tests.cpp: Minor updates. Added todo. Refactoring 2008-04-12 Daniel Marjamäki * CheckMemoryLeak.cpp, tests.cpp: CheckMemoryLeak: Improved the checking (tests.cpp:memleak_in_function:test16) 2008-04-12 Daniel Marjamäki * CheckMemoryLeak.cpp, tests.cpp: CheckMemoryLeak: fixed bug that caused false positives 2008-04-12 Daniel Marjamäki * tests.cpp: Added testcase to look at later 2008-04-12 Daniel Marjamäki * CheckMemoryLeak.cpp, tokenize.cpp, tokenize.h: Checking for memory leaks. Changed the handling of comments about deleting 2008-04-11 Daniel Marjamäki * CheckMemoryLeak.cpp, tests.cpp, tokenize.cpp, tokenize.h: Make it possible to disable memory leak checking for a variable. Usable to avoid false positives 2008-04-11 Daniel Marjamäki * main.cpp: Added comments 2008-04-08 Daniel Marjamäki * CheckMemoryLeak.cpp, tests.cpp: Refactoring CheckMemoryLeak to detect more leaks 2008-04-06 Daniel Marjamäki * CheckBufferOverrun.cpp, tests.cpp: CheckBufferOverrun: Removed a false positive 2008-04-06 Daniel Marjamäki * bugs_that_cppcheck_finds.txt, todo.txt: Minor updates in text files. 2008-04-06 Daniel Marjamäki * TestTok.cpp: TestTok: Deleted deprecated file 2008-04-06 Daniel Marjamäki * CheckMemoryLeak.cpp: CheckMemoryLeak: Added more allocation and deallocation functions 2008-04-06 Daniel Marjamäki * Makefile: Makefile: Removed Statements 2008-04-06 Daniel Marjamäki * Statements.cpp, Statements.h: Statements: Removed this bastard from cppcheck 2008-04-06 Daniel Marjamäki * main.cpp: Minor updates to [232] and [233]. Use __GNUC__ define instead of CYGWIN 2008-04-06 Daniel Marjamäki * main.cpp: Addon to [232] 2008-04-06 Daniel Marjamäki * CheckHeaders.cpp, CheckMemoryLeak.cpp, CommonCheck.cpp, CommonCheck.h, main.cpp, tokenize.cpp: Fixing bug 1935006 - Compile problems on cygwin 2008-04-05 Daniel Marjamäki * CheckMemoryLeak.cpp, tests.cpp: Re-adding CheckMemoryLeak functionality. More work is still needed. 2008-04-04 Daniel Marjamäki * CheckMemoryLeak.cpp, tests.cpp: Further improvements of CheckMemoryLeak. Still not working as good as a few revisions ago. 2008-04-04 Daniel Marjamäki * bufferoverrun.txt: Removed old file 'bufferoverrun.txt' 2008-04-03 Daniel Marjamäki * CheckMemoryLeak.cpp, tests.cpp: Refactoring CheckMemoryLeak 2008-04-02 Daniel Marjamäki * CheckBufferOverrun.cpp, CheckClass.cpp, CheckMemoryLeak.cpp, CommonCheck.cpp: Match: Added matching for [] 2008-04-02 Daniel Marjamäki * CheckMemoryLeak.cpp, tests.cpp: Rewriting CheckMemoryLeak (Just Started) 2008-04-01 Daniel Marjamäki * CheckBufferOverrun.cpp, CheckOther.cpp, tests.cpp: Minor updates. Removed some false positives when checking variable scope 2008-03-29 Daniel Marjamäki * CheckOther.cpp, CommonCheck.cpp, Statements.cpp, tests.cpp: Fixed minor bugs 2008-03-29 Daniel Marjamäki * CommonCheck.cpp, CommonCheck.h, Statements.cpp, main.cpp, tests.cpp, tokenize.cpp: Added style checks to check for unused global functions 2008-03-28 Daniel Marjamäki * CheckClass.cpp, CommonCheck.cpp, CommonCheck.h, main.cpp, tests.cpp: Refactoring: Removed 'HasErrors'. Better usage of 'Match'. Hid the 'FunctionList' 2008-03-28 Daniel Marjamäki * CheckBufferOverrun.cpp, CheckClass.cpp, CheckHeaders.cpp, CheckMemoryLeak.cpp, CheckOther.cpp, CommonCheck.cpp, CommonCheck.h, Statements.cpp, main.cpp, tests.cpp, tokenize.cpp, tokenize.h: Refactoring: Replaced deprecated "match" with the new "Match" 2008-03-27 Daniel Marjamäki * CheckBufferOverrun.cpp, tests.cpp: CheckBufferOverrun: Improved checking of arrays declared like this: "type * var [ num ]" 2008-03-26 Daniel Marjamäki * CheckBufferOverrun.cpp: test cppcheck: All tests work 2008-03-25 Daniel Marjamäki * CheckBufferOverrun.cpp: Fixed bugs in 'CheckBufferOverrun.cpp' 2008-03-25 Daniel Marjamäki * CheckBufferOverrun.cpp: To compile with borland, 'algorithm' was needed 2008-03-24 Daniel Marjamäki * CheckBufferOverrun.cpp, tests.cpp: Refactoring of 'CheckBufferOverrun.cpp' 2008-03-24 Daniel Marjamäki * CheckBufferOverrun.cpp: Refactoring 'CheckBufferOverrun'. Added 'Match1'. 2008-03-24 Daniel Marjamäki * CheckBufferOverrun.cpp: Refactoring the 'CheckBufferOverrun' 2008-03-24 Daniel Marjamäki * CheckBufferOverrun.cpp, tests.cpp: Removed checking of 'dynamic data' it's impossible to determine if it's false or true positives without deeper analysis. 2008-03-24 Daniel Marjamäki * CheckBufferOverrun.cpp: Made the checking for buffer overruns more generic 2008-03-24 Daniel Marjamäki * CheckBufferOverrun.cpp, CommonCheck.cpp, CommonCheck.h: Combined 'findfunction' and 'FindFunction'. Updated "CheckBufferOverrun" (checking for-loops). 2008-03-23 Daniel Marjamäki * CheckBufferOverrun.cpp, CommonCheck.cpp, CommonCheck.h, tests.cpp: Buffer overrun in function parameter 2008-03-23 Daniel Marjamäki * CheckBufferOverrun.cpp, CheckClass.cpp, tokenize.cpp: Refactoring (Replace '->' with '.', use matching function when possible) 2008-03-23 Daniel Marjamäki * CheckBufferOverrun.cpp, CheckHeaders.cpp, CheckOther.cpp, CommonCheck.cpp, CommonCheck.h, tests.cpp: Reverted 205:207 2008-03-23 Daniel Marjamäki * CheckBufferOverrun.cpp, CheckOther.cpp, CommonCheck.cpp, CommonCheck.h: Refactoring 2008-03-23 Daniel Marjamäki * CheckBufferOverrun.cpp, CheckHeaders.cpp, CheckOther.cpp, CommonCheck.cpp, CommonCheck.h, tests.cpp: Refactoring: Use 'setindentlevel' 2008-03-22 Daniel Marjamäki * CheckBufferOverrun.cpp, CommonCheck.cpp, CommonCheck.h: Refactoring: Added helper function 'setindentlevel' 2008-03-22 Daniel Marjamäki * CheckBufferOverrun.cpp, CommonCheck.cpp, CommonCheck.h: Minor refactoring 2008-03-22 Daniel Marjamäki * CheckBufferOverrun.cpp, CheckClass.cpp, CheckOther.cpp, tokenize.cpp, tokenize.h: In the checks, use const pointers 2008-03-21 Daniel Marjamäki * CheckBufferOverrun.cpp, tests.cpp: Handling pointers in 'CheckBufferOverrun_StructVariable' 2008-03-21 Daniel Marjamäki * CheckBufferOverrun.cpp, tests.cpp: Check for buffer overruns for struct members (only numeric) 2008-03-21 Daniel Marjamäki * checknpp.bat: Deleted obsolete file 'checknpp.bat' 2008-03-21 Daniel Marjamäki * CheckOther.cpp, tests.cpp: 'CheckUnsignedDivision' -> more errors. 'CheckVariableScope' -> removed false errors. 2008-03-20 Daniel Marjamäki * CheckOther.cpp: Rewrote the checking for "unsigned division" => less false positives 2008-03-19 Daniel Marjamäki * tokenize.cpp: tokenize: Fixed two bugs * don't hang if we can't find the ending of a string. * don't divide by zero 2008-03-19 Daniel Marjamäki * CheckOther.cpp, Statements.cpp, main.cpp: Updates here and there to make it more accurate 2008-03-18 Daniel Marjamäki * CheckClass.cpp: Better checking of class declarations. 2008-03-18 Daniel Marjamäki * tests.cpp, tokenize.cpp: Updated tokenizer. To handle "#define f1(a,b) (a+b)" better 2008-03-17 Daniel Marjamäki * CheckOther.cpp, tests.cpp: Checking variable scope 2008-03-17 Daniel Marjamäki * todo.txt: Updated 'todo.txt' 2008-03-16 Daniel Marjamäki * CheckOther.cpp, main.cpp, tests.cpp: bug fixes for 'CheckVariableScope' 2008-03-16 Daniel Marjamäki * CheckOther.cpp, CheckOther.h, CommonCheck.cpp, CommonCheck.h, tests.cpp, tokenize.cpp, tokenize.h: Added test 'CheckVariableScope'. Increased constness. 2008-03-16 Daniel Marjamäki * tests.cpp, todo.txt: added 'todo.txt' 2008-03-15 Daniel Marjamäki * checkproj.bat: Removed 'checkproj.bat' (Deprecated) 2008-02-22 Daniel Marjamäki * readme.txt: updated command syntax example 2008-02-22 Daniel Marjamäki * tests.cpp: allow duplicate error messages in tests 2008-02-22 Daniel Marjamäki * CheckOther.cpp, CommonCheck.cpp, CommonCheck.h, main.cpp: Removed false positives and also duplicate error messages. 2008-02-22 Daniel Marjamäki * CheckOther.cpp: comments 2008-02-22 Daniel Marjamäki * CheckClass.cpp: Removed false positives 2008-02-22 Daniel Marjamäki * main.cpp: sort the files before checking to make the results comparable 2008-02-21 Daniel Marjamäki * CheckBufferOverrun.cpp: Fixed bug (Dereferencing NULL) 2008-02-21 Daniel Marjamäki * CheckOther.cpp: removed false positives for CheckUnsignedDivision 2008-02-21 Daniel Marjamäki * main.cpp: recursive checking when compiling with gcc 2008-02-21 Daniel Marjamäki * main.cpp: recursive checking when compiled by borland c++ 2008-02-20 Daniel Marjamäki * CheckOther.cpp, CheckOther.h, main.cpp, tests.cpp, tokenize.cpp: CheckUnsignedDivision: Added check. Not very accurate yet. 2008-02-19 Daniel Marjamäki * CheckClass.cpp, tests.cpp: CheckClass: Improved constructor checking 2008-02-18 Daniel Marjamäki * Statements.cpp: Refactoring: Removed unneeded parameter PointerType 2008-02-18 Daniel Marjamäki * CheckClass.cpp, CheckHeaders.cpp, main.cpp, tokenize.cpp: Made it compilable by borland c++ 2008-02-18 Daniel Marjamäki * CheckClass.cpp, tests.cpp: ClassChecking: Only enable the 'no constructor' warning if '--style' is given 2008-02-18 Daniel Marjamäki * CheckClass.cpp, tests.cpp: Class Checking: No constructor 2008-02-17 Daniel Marjamäki * main.cpp, tests.cpp: checking multiple files 2008-02-17 Daniel Marjamäki * bugs_that_cppcheck_finds.txt: Added list of bugs that cppcheck find (incomplete) 2008-02-17 Daniel Marjamäki * CheckMemoryLeak.cpp, tests.cpp: Unit Testing: Checking for mismatching allocation / deallocation 2008-02-17 Daniel Marjamäki * Statements.cpp, tests.cpp: Unit Testing: Testing the statement list 2008-02-17 Daniel Marjamäki * Statements.cpp, Statements.h, internaltesting/testassign.cpp, internaltesting/testassign.out, internaltesting/testdecl.cpp, internaltesting/testdecl.out, internaltesting/testif.cpp, internaltesting/testif.out, internaltesting/testloop.cpp, internaltesting/testloop.out, internaltesting/testnew.cpp, internaltesting/testnew.out, internaltesting/testuse.cpp, internaltesting/testuse.out, tests.cpp: Unit Testing: Moved the 'internaltesting' 2008-02-17 Daniel Marjamäki * internaltesting.bat: Cleanup old testing 2008-02-17 Daniel Marjamäki * testdangerousfunc1/err.msg, testdangerousfunc1/testdangerousfunc1.cpp, testdelete1/err.msg, testdelete1/testdelete1.cpp, testh1/err.msg, testh1/testh1.cpp, testh1/testh1.h, testh2/emptyh.h, testh2/err.msg, testh2/testh2.cpp, testh2/testh2.h, testh3/err.msg, testh3/h1.h, testh3/h2.h, testh3/testh3.cpp, testh5/err.msg, testh5/testh5.cpp, testh5/testh5.h, testh6/err.msg, testh6/testh6.cpp, testh6/testh6.h, testmemset1/err.msg, testmemset1/testmemset1.cpp, teststdfunc1/err.msg, teststdfunc1/teststdfunc1.cpp: Cleanup old tests 2008-02-17 Daniel Marjamäki * testcond1/err.msg, testcond1/testcond1.cpp, testfunc2/err.msg, testfunc2/testfunc2.cpp, testfunc3/err.msg, testfunc3/testfunc3.cpp, testfunc4/err.msg, testfunc4/testfunc4.cpp, testfunc6/err.msg, testfunc6/testfunc6.cpp, testif1/err.msg, testif1/testif1.cpp, testif2/err.msg, testif2/testif2.cpp, testif3/err.msg, testif3/testif3.cpp, testif4/err.msg, testif4/testif4.cpp, testif5/err.msg, testif5/testif5.cpp, updateall.bat: Cleanup of old testcases 2008-02-17 Daniel Marjamäki * testmemleak1/err.msg, testmemleak1/testmemleak1.cpp, testmemleak2/err.msg, testmemleak2/testmemleak2.cpp, testmemleak3/err.msg, testmemleak3/testmemleak3.cpp, testmemleak4/err.msg, testmemleak4/testmemleak4.cpp, tests.cpp: Unit Testing: Moving memleak checks 2008-02-16 Daniel Marjamäki * CheckMemoryLeak.cpp, main.cpp, testmemcheck1/err.msg, testmemcheck1/testmemcheck1.cpp, testmemcheck2/err.msg, testmemcheck2/testmemcheck2.cpp, testmemcheck3/err.msg, testmemcheck3/testmemcheck3.cpp, testmemcheck4/err.msg, testmemcheck4/testmemcheck4.cpp, testmemcheck5/err.msg, testmemcheck5/testmemcheck5.cpp, tests.cpp: Unit Testing: Moved 'testmemcheck' 2008-02-16 Daniel Marjamäki * testUninitVar1/err.msg, testUninitVar1/testUninitVar1.cpp, tests.cpp: Unit Testing: Moved 'testUninitVar1' 2008-02-16 Daniel Marjamäki * testclass1/err.msg, testclass1/testclass1.cpp, testclass10/err.msg, testclass10/testclass10.cpp, testclass12/err.msg, testclass12/testclass12.cpp, testclass13/err.msg, testclass13/testclass13.cpp, testclass14/err.msg, testclass14/testclass14.cpp, testclass2/err.msg, testclass2/testclass2.cpp, testclass4/err.msg, testclass4/testclass4.cpp, testclass4/testclass4.h, testclass7/err.msg, testclass7/testclass7.cpp, testclass8/err.msg, testclass8/testclass8.cpp, tests.cpp: Unit Testing: Moved constructor and operator= checks 2008-02-16 Daniel Marjamäki * cppcheck.bpf, cppcheck.bpr, tok.bpf, tok.bpr: Borland C++: Removed project files as gcc will from now on by the primary development environment 2008-02-16 Daniel Marjamäki * testall, tests.cpp: Testing: Removed old file 'testall'. Testing will be handled by 'tests.cpp'. 2008-02-16 Daniel Marjamäki * testbufferoverrun1/err.msg, testbufferoverrun1/testbufferoverrun1.cpp, testbufferoverrun2/err.msg, testbufferoverrun2/testbufferoverrun2.cpp, testbufferoverrun3/err.msg, testbufferoverrun3/testbufferoverrun3.cpp, testbufferoverrun4/err.msg, testbufferoverrun4/testbufferoverrun4.cpp, testbufferoverrun5/err.msg, testbufferoverrun5/testbufferoverrun5.cpp, testbufferoverrun6/err.msg, testbufferoverrun6/testbufferoverrun6.cpp, testbufferoverrun7/err.msg, testbufferoverrun7/testbufferoverrun7.cpp, tests.cpp: Unit Testing: All tests for buffer overruns were moved 2008-02-16 Daniel Marjamäki * CommonCheck.cpp, CommonCheck.h, Makefile, main.cpp, tests.cpp, tokenize.cpp, tokenize.h: Unit Testing: Start 2008-01-17 Daniel Marjamäki * CheckClass.cpp, testUninitVar1/err.msg, testUninitVar1/testUninitVar1.cpp, testclass13/err.msg: Better checking of uninitialized variables 2008-01-11 Daniel Marjamäki * checknpp.bat: check npp472 instead of npp41 2008-01-10 Daniel Marjamäki * CheckClass.cpp, cppcheck.bpr, main.cpp, testUninitVar1/err.msg, testUninitVar1/testUninitVar1.cpp, testbufferoverrun1/warn.msg, testbufferoverrun2/warn.msg, testbufferoverrun3/warn.msg, testbufferoverrun4/warn.msg, testbufferoverrun5/warn.msg, testbufferoverrun6/warn.msg, testclass1/warn.msg, testclass10/warn.msg, testclass12/warn.msg, testclass13/err.msg, testclass13/warn.msg, testclass2/warn.msg, testclass4/warn.msg, testclass7/warn.msg, testclass8/warn.msg, testcond1/warn.msg, testdangerousfunc1/warn.msg, testdelete1/warn.msg, testfunc2/warn.msg, testfunc3/warn.msg, testfunc4/warn.msg, testfunc6/warn.msg, testh1/warn.msg, testh2/warn.msg, testh3/warn.msg, testh5/warn.msg, testif1/warn.msg, testif2/warn.msg, testif3/warn.msg, testif4/warn.msg, testif5/warn.msg, testmemcheck1/warn.msg, testmemcheck2/warn.msg, testmemcheck3/warn.msg, testmemcheck4/warn.msg, testmemcheck5/warn.msg, testmemleak4/warn.msg, testmemset1/warn.msg, teststdfunc1/warn.msg, updateall.bat: check for uninitialized variables - less generic to increase accuracy 2008-01-05 Daniel Marjamäki * testall: Added 'testall' which is a simple bash-script that runs all tests 2007-10-29 Daniel Marjamäki * CheckClass.cpp, testclass14/err.msg, testclass14/testclass14.cpp: remove false positives (uninitialized class members) 2007-10-23 Daniel Marjamäki * CheckClass.cpp: CheckClass: Treating all "std::*" as initialized. 2007-10-23 Daniel Marjamäki * tokenize.cpp: tokenizer: removed some preprocessing => less false positives 2007-10-22 Daniel Marjamäki * main.cpp, testcasebreak/err.msg, testcasebreak/testcasebreak.cpp, testcasebreak/warn.msg, testfunc5/err.msg, testfunc5/testfunc5.cpp, testfunc5/warn.msg: disabled checks that generates false positives 2007-08-31 Daniel Marjamäki * CheckClass.cpp, CheckMemoryLeak.cpp, CheckOther.cpp, testcasebreak/warn.msg, testmemleak3/err.msg, testmemleak4/err.msg, testmemleak4/testmemleak4.cpp, testmemleak4/warn.msg: Removing false positives 2007-07-27 Daniel Marjamäki * CheckMemoryLeak.cpp, Statements.cpp, testmemleak2/err.msg, testmemleak2/testmemleak2.cpp, testmemleak3/err.msg, testmemleak3/testmemleak3.cpp: Added 2 checks for memory leaks 2007-07-26 Daniel Marjamäki * main.cpp: Don't allow search pattern in the filename yet. There's no way to solve it through ANSI C. 2007-07-26 Daniel Marjamäki * checkproj.bat, readme.txt: Minor update: Updated the readme and checkproj files. 2007-07-26 Daniel Marjamäki * testcond1/err.msg: TestCond1: Updated test. It didn't have a "err.msg" file 2007-07-26 Daniel Marjamäki * testcasebreak/err.msg, testcasebreak/testcasebreak.cpp, testcasebreak/warn.msg: Added test: "testcasebreak" 2007-07-24 Daniel Marjamäki * main.cpp: Searching multiple files 2007-07-24 Daniel Marjamäki * CheckOther.cpp, CheckOther.h, testcond1/testcond1.cpp, testcond1/warn.msg: Added checks: * CheckIfAssignment: assignment in condition * CheckCaseWithoutBreak: case but no break/return 2007-07-20 Daniel Marjamäki * CheckBufferOverrun.cpp, CheckMemoryLeak.cpp, Statements.cpp, checknpp.bat, main.cpp, testclass13/warn.msg: Command line options: Added "--all" and "--style", removed "-w" 2007-07-20 Daniel Marjamäki * bufferoverrun.txt: bufferoverrun.txt: Added file that contains thoughts and ideas concerning buffer overruns. 2007-07-20 Daniel Marjamäki * CheckMemoryLeak.cpp, CommonCheck.cpp, CommonCheck.h, Statements.cpp: For the highest accuracy, don't warn for all memory leaks unless the "-w" is given 2007-07-20 Daniel Marjamäki * CheckClass.cpp: Always give a warning when 'memset' is used upon a class 2007-07-19 Daniel Marjamäki * CheckBufferOverrun.cpp, main.cpp, testbufferoverrun7/err.msg, testbufferoverrun7/testbufferoverrun7.cpp: Improved the buffer overrun checks. Results that are not 100% certain must be enabled through the "-w". 2007-07-18 Daniel Marjamäki * Makefile, tokenize.cpp: Minor modifications to make it compile on linux 2007-07-18 Daniel Marjamäki * CheckBufferOverrun.cpp, CommonCheck.cpp, main.cpp, testbufferoverrun7/err.msg, testbufferoverrun7/testbufferoverrun7.cpp: Buffer overruns, using string with unknown length 2007-07-17 Daniel Marjamäki * CheckMemoryLeak.cpp, Makefile: Minor updates to make it easier to port to Linux 2007-07-17 Daniel Marjamäki * CheckBufferOverrun.cpp, CheckClass.cpp, CheckHeaders.cpp, CheckMemoryLeak.cpp, CheckOther.cpp, Makefile, cppcheck.bpr, main.cpp, testclass13/err.msg, testclass13/testclass13.cpp, testclass13/warn.msg, tokenize.cpp: Minor updates to make it portable to Linux. 2007-06-11 Daniel Marjamäki * CheckHeaders.cpp: CheckHeaders: Checking if included headers are needed 2007-06-10 Daniel Marjamäki * CheckOther.cpp: CheckOther: minor bug fix 2007-06-10 Daniel Marjamäki * CheckMemoryLeak.cpp, testmemleak1/err.msg, testmemleak1/testmemleak1.cpp: CheckMemoryLeak: Detect memory leaks for class members 2007-06-09 Daniel Marjamäki * CheckOther.cpp: CheckOther: Improved the check that checks 'if (condition) var=true;' 2007-06-09 Daniel Marjamäki * CheckHeaders.cpp: CheckHeaders: Improved the check that checks included headers. 2007-06-08 Daniel Marjamäki * CheckHeaders.cpp: CheckHeaders: Updated message 2007-06-08 Daniel Marjamäki * tokenize.cpp: Tokenize: generate tokens on '#define' (CheckIncludedHeaders) 2007-06-08 Daniel Marjamäki * testbufferoverrun1/warn.msg, testbufferoverrun2/warn.msg, testbufferoverrun3/warn.msg, testbufferoverrun4/warn.msg, testbufferoverrun5/warn.msg, testbufferoverrun6/warn.msg, testdangerousfunc1/warn.msg, testdelete1/err.msg, testfunc2/warn.msg, testfunc3/warn.msg, testfunc4/warn.msg, testfunc5/err.msg, testfunc5/warn.msg, testfunc6/err.msg, testfunc6/warn.msg, testh1/warn.msg, testh3/err.msg, testh3/h1.h, testh3/h2.h, testh3/testh3.cpp, testh3/warn.msg, testif1/err.msg, testif1/warn.msg, testif2/err.msg, testif2/warn.msg, testif3/warn.msg, testif4/warn.msg, testmemcheck1/warn.msg, testmemcheck2/warn.msg, testmemcheck3/warn.msg, testmemcheck4/warn.msg, testmemcheck5/warn.msg, testmemset1/warn.msg, updateall.bat: Updated the tests 2007-06-08 Daniel Marjamäki * checknpp.bat: Checking Notepad++: Enabled all warnings 2007-06-08 Daniel Marjamäki * CheckOther.cpp, testif5/err.msg, testif5/testif5.cpp, testif5/warn.msg: CheckOther: Added check. 'if (condition) var=true; else var=false;' => 'var = (condition);' 2007-06-08 Daniel Marjamäki * CheckHeaders.cpp: CheckHeaders: Limit the number of warnings about 'implementation in header' 2007-06-08 Daniel Marjamäki * main.cpp: Main: More checks are only done when the '-w' flag is given. 2007-06-08 Daniel Marjamäki * CheckHeaders.cpp: CheckHeaders: Bug fix 2007-06-08 Daniel Marjamäki * CheckHeaders.cpp: CheckHeaders: Bug fix 2007-06-08 Daniel Marjamäki * CheckMemoryLeak.cpp, CheckOther.cpp: Modified comments 2007-06-08 Daniel Marjamäki * CheckHeaders.cpp, testh6/err.msg, testh6/testh6.cpp, testh6/testh6.h: CheckHeaders: Check if all included headers are needed 2007-06-06 Daniel Marjamäki * CheckOther.cpp, testfunc6/err.msg, testfunc6/testfunc6.cpp: Added check: "if (condition) var=true;" can be written as "var|=(condition);" 2007-06-05 Daniel Marjamäki * CheckBufferOverrun.cpp: Buffer overrun: also check the 'memcopy' parameters. 2007-06-05 Daniel Marjamäki * CheckOther.cpp, CheckOther.h, main.cpp, testfunc5/err.msg, testfunc5/testfunc5.cpp: Added check: suspicious usage of strtok 2007-06-05 Daniel Marjamäki * CheckOther.cpp, CheckOther.h, main.cpp, testfunc4/err.msg, testfunc4/testfunc4.cpp: Invalid Function Parameter: Check calls to strtol and strtoul 2007-06-05 Daniel Marjamäki * CheckHeaders.cpp: CheckHeaders: Minor update 2007-06-05 Daniel Marjamäki * CheckBufferOverrun.cpp: CheckBufferOverrun: Optimized and improved the checking 2007-06-05 Daniel Marjamäki * CheckOther.cpp, CheckOther.h, main.cpp: Added check: 'IsAlpha' 2007-06-04 Daniel Marjamäki * testh1/warn.msg, testh2/warn.msg: Tests: Updated the tests. Checking for unneeded includes 2007-06-04 Daniel Marjamäki * CheckHeaders.cpp, main.cpp: CheckHeaders: Check for unnecessary headers. some fixes. 2007-06-03 Daniel Marjamäki * CheckMemoryLeak.cpp: CheckMemoryLeak: Bug fix. 2007-06-03 Daniel Marjamäki * tokenize.cpp: tokenize: bug fixes. Handling typedefs. 2007-06-02 Daniel Marjamäki * testif2/err.msg: Test: Updated 'testif2' which is testing the 'a=b; if (a!=b)' 2007-06-02 Daniel Marjamäki * testif4/err.msg, testif4/testif4.cpp: Test: Test that 'a=b; if (a==b)' don't generate false positives 2007-06-02 Daniel Marjamäki * testif3/err.msg, testif3/testif3.cpp: Test: Test that 'a=b; if (a==b)' is detected 2007-06-02 Daniel Marjamäki * tokenize.cpp: tokenize: Fixed the 'typedef' simplifications. Added token '#' upon preprocessor instructions. 2007-06-02 Daniel Marjamäki * testif2/err.msg, testif2/testif2.cpp: Test: Test that 'a=b; if (a==b)' is detected 2007-06-02 Daniel Marjamäki * CheckOther.cpp: CheckOther: Added check for 'a=b; if (a==b)' 2007-05-30 Daniel Marjamäki * tokenize.cpp, tokenize.h: tokenizer: made the 'SizeOfType' public. bug fix in the tokenizer (strings longer than 1000 characters). 2007-05-30 Daniel Marjamäki * CheckBufferOverrun.cpp: CheckBufferOverrun.cpp: Bug fixes 2007-05-29 Daniel Marjamäki * TestTok.cpp, main.cpp, tok.bpr: minor updates 2007-05-29 Daniel Marjamäki * tokenize.cpp, tokenize.h: Tokenize: Replace 'typedef' 2007-05-29 Daniel Marjamäki * TestTok.cpp, internaltesting/testdecl.out, main.cpp, tok.bpr, tokenize.cpp, tokenize.h: Tokenize: Simplify declarations 2007-05-28 Daniel Marjamäki * tokenize.cpp: Tokenize: Replace '*(var+num)' with 'var[num]' 2007-05-28 Daniel Marjamäki * tokenize.cpp: Tokenize: improved the preprocessing of 'sizeof(type)' 2007-05-26 Daniel Marjamäki * TestTok.cpp, tok.bpf, tok.bpr: tok: Added a program that tests the tokenizer. 2007-05-26 Daniel Marjamäki * tokenize.cpp: Tokenize: Improved the tokenizer. Calculations are done in the tokenizer. sizeof is replaced with numbers. 2007-05-26 Daniel Marjamäki * testbufferoverrun6/err.msg, testbufferoverrun6/testbufferoverrun6.cpp: Test: Added a buffer overrun test that contains a calculation that points at an illegal index 2007-05-26 Daniel Marjamäki * Makefile: Makefile: Updated because the program has been split up into several files. 2007-05-26 Daniel Marjamäki * CheckBufferOverrun.cpp: CheckBufferOverrun: Improved checking for types other than char 2007-05-25 Daniel Marjamäki * cppcheck.bpr: cppcheck: added checkothers to the project 2007-05-25 Daniel Marjamäki * CheckOther.cpp, CheckOther.h: CheckOther: Added files. This will contain checks that don't fit in the other checking files. 2007-05-25 Daniel Marjamäki * tokenize.cpp: tokenize: moved 'IsName' to commoncheck. Replace 'sizeof(type)' with size. 2007-05-25 Daniel Marjamäki * main.cpp: Main: Moved 'IsName' and 'IsNumber' to commoncheck. Moved remaining checks to checkother and checkbufferoverrun. 2007-05-25 Daniel Marjamäki * Statements.cpp: Statements: Moved 'IsName' from main to commoncheck 2007-05-25 Daniel Marjamäki * CheckClass.cpp: CheckClass: Moved 'IsName' from main to commoncheck 2007-05-25 Daniel Marjamäki * CommonCheck.cpp, CommonCheck.h: CommonCheck: Moved 'IsName' and 'IsNumber' from main.cpp 2007-05-25 Daniel Marjamäki * CheckBufferOverrun.cpp, CheckBufferOverrun.h: CheckBufferOverrun: Added 'CheckDangerousFunctions' 2007-05-24 Daniel Marjamäki * CommonCheck.cpp: CommonCheck: Common functions used while checking for mistakes 2007-05-24 Daniel Marjamäki * CheckMemoryLeak.cpp, CheckMemoryLeak.h: CheckMemoryLeak: Added files (Check for memory leaks) 2007-05-24 Daniel Marjamäki * CheckHeaders.cpp, CheckHeaders.h: CheckHeaders: Added files (Check for mistakes in headers or related to headers) 2007-05-24 Daniel Marjamäki * CheckClass.cpp, CheckClass.h, CommonCheck.h, Statements.cpp, Statements.h, cppcheck.bpr, main.cpp, tokenize.cpp, tokenize.h: CheckClass; Added files (Check for mistakes related to classes) 2007-05-24 Daniel Marjamäki * CheckBufferOverrun.cpp, CheckBufferOverrun.h: CheckBufferOverrun; Added files 2007-05-24 Daniel Marjamäki * cppcheck.bpr, main.cpp, tokenize.cpp, tokenize.h: tokenize: Added files 2007-05-23 Daniel Marjamäki * readme.txt: readme: minor updates 2007-05-21 Daniel Marjamäki * testbufferoverrun5/err.msg, testbufferoverrun5/testbufferoverrun5.cpp: Tests: Added 'TestBufferOverrun5' 2007-05-21 Daniel Marjamäki * main.cpp: Replacing constants to make it easier to find bugs. 2007-05-21 Daniel Marjamäki * testbufferoverrun1/err.msg: Test: minor update to TestBufferOverrun1 2007-05-21 Daniel Marjamäki * testbufferoverrun2/testbufferoverrun2.cpp: Test: Updated 'TestBufferOverrun2'. Bufferusage out of bounds. 2007-05-21 Daniel Marjamäki * testbufferoverrun4/err.msg, testbufferoverrun4/testbufferoverrun4.cpp: Test: Added 'TestBufferOverrun4' 2007-05-21 Daniel Marjamäki * main.cpp, testclass1/warn.msg, testclass10/warn.msg, testclass2/warn.msg, testclass4/warn.msg, testclass7/warn.msg, testclass8/warn.msg, testdelete1/warn.msg, testh1/warn.msg, testh2/warn.msg, testh5/warn.msg: Testing: Added warning messages. 2007-05-21 Daniel Marjamäki * main.cpp: CheckBufferOverrun: buffer overrun inside loop. The tokenizer will convert hexadecimal values to decimal values, which simplifies the checking. 2007-05-21 Daniel Marjamäki * testbufferoverrun1/testbufferoverrun1.cpp, testbufferoverrun2/err.msg, testbufferoverrun2/testbufferoverrun2.cpp, testbufferoverrun3/err.msg, testbufferoverrun3/testbufferoverrun3.cpp: Test: Buffer overrun 2007-05-20 Daniel Marjamäki * testbufferoverrun1/err.msg, testbufferoverrun1/testbufferoverrun1.cpp: Test: Added 'TestBufferOverrun1' 2007-05-20 Daniel Marjamäki * main.cpp: CheckBufferOverrun: Array index out of bounds. 2007-05-20 Daniel Marjamäki * main.cpp, testdangerousfunc1/err.msg, testdangerousfunc1/testdangerousfunc1.cpp: Buffer Overrun: Using dangerous functions 2007-05-20 Daniel Marjamäki * main.cpp: Building statement list: SWITCH - BREAK 2007-05-20 Daniel Marjamäki * testmemcheck4/err.msg, testmemcheck4/testmemcheck4.cpp, testmemcheck5/err.msg, testmemcheck5/testmemcheck5.cpp: Test: Updated 'testmemcheck4' and 'testmemcheck5' (continue/break) 2007-05-20 Daniel Marjamäki * main.cpp: CheckMemoryLeak: Handling continue/break 2007-05-20 Daniel Marjamäki * main.cpp: WarningIf: Bug fix 2007-05-19 Daniel Marjamäki * internaltesting/testloop.out: Test: Updated "testloop" 2007-05-19 Daniel Marjamäki * main.cpp: Build Statement List: LOOP, ENDLOOP 2007-05-19 Daniel Marjamäki * : 60 1 main.cpp 2007-05-19 Daniel Marjamäki * main.cpp: CheckMemleak: Don't handle conditional allocation at the moment. 2007-05-19 Daniel Marjamäki * testmemcheck4/err.msg, testmemcheck4/testmemcheck4.err: Test: File with wrong name was renamed 2007-05-19 Daniel Marjamäki * testmemcheck4/out.err, testmemcheck4/testmemcheck4.err: Test: File with wrong name was renamed 2007-05-19 Daniel Marjamäki * internaltesting/testif.out, internaltesting/testloop.out: Tests: Updated the internaltesting tests "testif" and "testloop" 2007-05-19 Daniel Marjamäki * main.cpp: Build Statement List: ENDIF 2007-05-19 Daniel Marjamäki * main.cpp, testmemcheck4/out.err, testmemcheck4/testmemcheck4.cpp: Tests: Added "testmemcheck4", memory leak from a strdup 2007-05-19 Daniel Marjamäki * main.cpp: Building Statement List: MALLOC. Bug fix (strdup is a malloc) 2007-05-19 Daniel Marjamäki * internaltesting.bat, internaltesting/testloop.cpp, internaltesting/testloop.out, main.cpp: Building Statement List: CONTINUE, BREAK 2007-05-18 Daniel Marjamäki * internaltesting.bat, internaltesting/testif.cpp, internaltesting/testif.out, main.cpp: internaltesting: IF 2007-05-18 Daniel Marjamäki * teststdfunc1/err.msg, teststdfunc1/warn.msg: Tests: Modified the test 'teststdfunc1'. Warnings has been deactivated. 2007-05-18 Daniel Marjamäki * teststdfunc1/err.msg, teststdfunc1/teststdfunc1.cpp, warnstdfunc1/err.msg, warnstdfunc1/teststdfunc1.cpp: Tests: Renamed 'warnstdfunc1' to 'teststdfunc1' 2007-05-18 Daniel Marjamäki * testclass12/err.msg, testclass12/testclass12.cpp, testclass12/warn.msg, warnclass12/err.msg, warnclass12/testclass12.cpp: Testing: Renamed 'warnclass12' to 'testclass12' 2007-05-18 Daniel Marjamäki * main.cpp: * Building Statement list: MALLOC, FREE * Deactivated some warnings to make the output more interesting 2007-05-18 Daniel Marjamäki * testclass12/err.msg, testclass12/testclass12.cpp, teststdfunc1/err.msg, teststdfunc1/teststdfunc1.cpp, warnclass12/err.msg, warnclass12/testclass12.cpp, warnstdfunc1/err.msg, warnstdfunc1/teststdfunc1.cpp: Testing: Deactivating some warnings 2007-05-18 Daniel Marjamäki * main.cpp: Building Statement List: IF, ELSE, ELSEIF 2007-05-18 Daniel Marjamäki * testmemcheck3/err.msg, testmemcheck3/testmemcheck3.cpp: Testing: memcheck3 - new and delete (no error) 2007-05-17 Daniel Marjamäki * internaltesting/testdecl.cpp, internaltesting/testdecl.out: Testing: "return" and "delete" are not variable declarations 2007-05-17 Daniel Marjamäki * testmemcheck2/err.msg, testmemcheck2/testmemcheck2.cpp: Added test for memory checking 2007-05-17 Daniel Marjamäki * main.cpp: Improving the accuracy of the memory leaks detecting 2007-05-16 Daniel Marjamäki * testmemcheck1/err.msg: Test: updated the error message output by memcheck1 2007-05-16 Daniel Marjamäki * internaltesting/testassign.out, internaltesting/testdecl.out, internaltesting/testnew.out, internaltesting/testuse.out: Test: Internal testing, updated the messages 2007-05-16 Daniel Marjamäki * main.cpp: Bug fixing 2007-05-16 Daniel Marjamäki * main.cpp: Checking for memory leaks.. only active in debug mode since it's so inaccurate 2007-05-16 Daniel Marjamäki * main.cpp: Building statement list; USE 2007-05-16 Daniel Marjamäki * internaltesting.bat, internaltesting/testuse.cpp, internaltesting/testuse.out: Test: Internal testing, added "testuse" 2007-05-15 Daniel Marjamäki * readme.txt: readme: minor update 2007-05-15 Daniel Marjamäki * main.cpp: Check for memory leaks 2007-05-15 Daniel Marjamäki * testmemcheck1/err.msg, testmemcheck1/testmemcheck1.cpp: Test: Added "TestMemCheck1" -> mismatching allocation and deallocation 2007-05-15 Daniel Marjamäki * main.cpp: Test: Added command line option "--debug" that is used by the tests "internaltesting" 2007-05-15 Daniel Marjamäki * internaltesting.bat, internaltesting/testassign.cpp, internaltesting/testassign.out, internaltesting/testdecl.cpp, internaltesting/testdecl.out, internaltesting/testnew.cpp, internaltesting/testnew.out: Test: Internal testing 2007-05-15 Daniel Marjamäki * main.cpp: Building statement list; bug fixes 2007-05-15 Daniel Marjamäki * Makefile: Updated the Makefile. The name of this project has changed from 'codecheck' to 'cppcheck' 2007-05-14 Daniel Marjamäki * main.cpp: Building statement list; NEW, NEWARRAY, DELETE, DELETEARRAY 2007-05-14 Daniel Marjamäki * main.cpp: Building statement list; OBRACE, EBRACE, DECL 2007-05-11 Daniel Marjamäki * main.cpp: Class (unused private functions): Reactivated and improved this check 2007-05-10 Daniel Marjamäki * main.cpp: Minor updates. Make sure there is no doublechecking. Don't perform certain checks upon c-files. 2007-05-10 Daniel Marjamäki * checknpp.bat: Updated script that checks notepad++ 2007-05-09 Daniel Marjamäki * testdelete1/err.msg, testh1/err.msg: updated error reports for test cases 2007-05-09 Daniel Marjamäki * main.cpp: Check 'operator=()' 2007-05-09 Daniel Marjamäki * testclass12/err.msg, testclass12/testclass12.cpp: Added testcase: bad 'operator=()' 2007-05-09 Daniel Marjamäki * readme.txt: Added readme.txt 2007-05-09 Daniel Marjamäki * main.cpp: Minor updates: * Refactoring. * don't warn for 'memset(this,..' 2007-05-08 Daniel Marjamäki * checknpp.bat: Added script that checks the notepad++ source code 2007-05-08 Daniel Marjamäki * main.cpp: Updated warning message. Shorter and simpler 2007-05-08 Daniel Marjamäki * main.cpp: Inactivated tests that are not accurate 2007-05-08 Daniel Marjamäki * testh1/err.msg, testh2/err.msg: Updated test cases 2007-05-08 Daniel Marjamäki * testclass5/err.msg, testclass5/testclass5.cpp, testclass6/err.msg, testclass6/testclass6.cpp, testclass6/testclass6.h, testclass9/err.msg, testclass9/testclass9.cpp: Removed test cases that are not currently wanted. 2007-05-08 Daniel Marjamäki * checkcode.bpf, checkcode.bpr, cppcheck.bpf, cppcheck.bpr: Files needed to build with Borland C++ Builder 2007-05-08 Daniel Marjamäki * runall.bat: Removed testing batch file. Must work on this. 2007-05-08 Daniel Marjamäki * checkcode.bpf, checkcode.bpr: Added Borland C++ Builder project files 2007-05-07 Daniel Marjamäki * Added files from local repository.