Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse code

1.58: Updated Changelog

  • Loading branch information...
commit 13b266ebcfdd2bd3a561557c11ea0428e973ab99 1 parent 3057078
Daniel Marjamäki authored January 12, 2013

Showing 1 changed file with 1,930 additions and 0 deletions. Show diff stats Hide diff stats

  1. 1,930  Changelog
1,930  Changelog
... ...
@@ -1,3 +1,1933 @@
  1
+2013-01-12  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  2
+
  3
+	* cli/main.cpp, lib/cppcheck.cpp, lib/version.h,
  4
+	man/manual.docbook, win_installer/productInfo.wxi: 1.58: Set
  5
+	versions
  6
+
  7
+2013-01-12  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  8
+
  9
+	* readme.txt: readme: tell about SRCDIR=build
  10
+
  11
+2013-01-12  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  12
+
  13
+	* man/manual.docbook: Manual: Added chapter about --inconclusive
  14
+
  15
+2013-01-12  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  16
+
  17
+	* man/manual.docbook: manual: updated date
  18
+
  19
+2013-01-12  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  20
+
  21
+	* gui/test/translationhandler/testtranslationhandler.cpp: Fixed
  22
+	#4479 (GUI tests fail)
  23
+
  24
+2013-01-12  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  25
+
  26
+	* man/manual.docbook: manual: removed recommendation to not include
  27
+	standard headers from the manual. I can't provide good reasons to
  28
+	not include the standard headers right now.
  29
+
  30
+2013-01-11  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  31
+
  32
+	* man/manual.docbook: manual: updated the Severities chapter. No
  33
+	major changes, just tried to make it more clear.
  34
+
  35
+2013-01-11  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  36
+
  37
+	* man/manual.docbook: manual: Removed chapter about exception safety
  38
+	checks. They are enabled by the normal --enable=all.
  39
+
  40
+2013-01-11  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  41
+
  42
+	* man/manual.docbook: manual: don't write that threads can't be used
  43
+	in windows.
  44
+
  45
+2013-01-11  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  46
+
  47
+	* man/manual.docbook: manual: use --include instead of --append in
  48
+	the custom leaks section
  49
+
  50
+2013-01-10  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  51
+
  52
+	* lib/tokenize.cpp, test/testsimplifytokens.cpp: Fixed #4476
  53
+	(Tokenizer: wrong simplification of static anonymous-type struct
  54
+	array declaration)
  55
+
  56
+2013-01-10  Thomas Jarosch <thomas.jarosch@intra2net.com>
  57
+
  58
+	* tools/extracttests.py, tools/matchcompiler.py, tools/reduce.cpp: 
  59
+	Add missing copyright header
  60
+
  61
+2013-01-09  Zachary Blair <zack_blair@hotmail.com>
  62
+
  63
+	* lib/checknullpointer.cpp, test/testnullpointer.cpp: Fixed #4389
  64
+	(False positive: Possible null pointer dereference if the default
  65
+	parameter value is used)
  66
+
  67
+2013-01-09  Thomas Jarosch <thomas.jarosch@intra2net.com>
  68
+
  69
+	* .gitignore, tools/argparse.py: Add local copy of argparse module
  70
+	to support python 2.6 / python 3.0
  71
+
  72
+2013-01-09  Edoardo Prezioso <edo88@email.it>
  73
+
  74
+	* lib/token.cpp, test/testtoken.cpp, tools/matchcompiler.py: 
  75
+	Token::Match: removed harmless special code for initial '!!foo'
  76
+	patterns.
  77
+
  78
+2013-01-09  Thomas Jarosch <thomas.jarosch@intra2net.com>
  79
+
  80
+	* tools/matchcompiler.py: Match compiler: Add cmdline handling
  81
+
  82
+2013-01-09  Thomas Jarosch <thomas.jarosch@intra2net.com>
  83
+
  84
+	* tools/matchcompiler.py: Match compiler: Workaround broken code
  85
+	generation for "!!foo" patterns This is just meant for the upcoming release.
  86
+
  87
+2013-01-09  Thomas Jarosch <thomas.jarosch@intra2net.com>
  88
+
  89
+	* tools/matchcompiler.py: Match compiler: Be more user friendly on
  90
+	how to invoke it
  91
+
  92
+2013-01-09  Thomas Jarosch <thomas.jarosch@intra2net.com>
  93
+
  94
+	* tools/matchcompiler.py: Match compiler: Create 'build' directory
  95
+	if needed
  96
+
  97
+2013-01-09  Thomas Jarosch <thomas.jarosch@intra2net.com>
  98
+
  99
+	* tools/matchcompiler.py: Match compiler: Workaround broken
  100
+	optimizations in verify mode If the match compiler uses the 'verify' mode and we compile with
  101
+	-O2, some tests comparing the on-the-fly-parser to the compiled
  102
+	match fail.  Small functions are inlined by the -O2 compile flag.  If we disable
  103
+	function inlining and still compile with -O2, everything is back to
  104
+	normal.  gdb didn't show anything useful during the mismatch since the needed
  105
+	variables are optimized out. Once we start printing them, the
  106
+	problem vanishes, too.  -> Can only be diagnosed at the x86 assembly
  107
+	level.  The problem vanished by switching the invocation order of
  108
+	Token::Match() and the compiled match, so just swap them.  Also add commented out helper code to better diagnose mismatch
  109
+	problems.
  110
+
  111
+2013-01-09  Thomas Jarosch <thomas.jarosch@intra2net.com>
  112
+
  113
+	* lib/templatesimplifier.cpp: Revert "Change location of %op%
  114
+	operator in multicompare" It's no longer needed with the proper fix
  115
+	for Token::Match().  This reverts commit 8b2adf1391f5ae02040ecf1fdc6c2d422e87c343.
  116
+
  117
+2013-01-09  Thomas Jarosch <thomas.jarosch@intra2net.com>
  118
+
  119
+	* lib/token.cpp, lib/token.h, test/testtoken.cpp: Properly implement
  120
+	%op% for Token::multiCompare Use tok->isOp() instead of doing it "manually".  This fixes false positives for the C++ template case since the
  121
+	brackets in "template < something >" are not comparison operators.  Profiling showed using tok->isOp() is actually faster than before
  122
+	(-O2).
  123
+
  124
+2013-01-08  Thomas Jarosch <thomas.jarosch@intra2net.com>
  125
+
  126
+	* lib/templatesimplifier.cpp: Change location of %op% operator in
  127
+	multicompare When the %op% operator is the first element of a multicompare, it
  128
+	properly executes Token::isOp().  Otherwise it uses it's "internal
  129
+	implementation".  Workaround inspired by Edoardo Prezioso.
  130
+
  131
+2013-01-08  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  132
+
  133
+	* tools/reduce.cpp: tools/reduce: change default timeout to 5
  134
+	minutes no matter if --hang is used or not.
  135
+
  136
+2013-01-08  Thomas Jarosch <thomas.jarosch@intra2net.com>
  137
+
  138
+	* test/testtoken.cpp: Add another TODO test case for Token::Match
  139
+
  140
+2013-01-07  Thomas Jarosch <thomas.jarosch@intra2net.com>
  141
+
  142
+	* test/testtoken.cpp: Add TODO test case for a bug in Token::Match
  143
+	multicompare The result of the %op% operator is wrong in the multicompare case
  144
+	for C++ templates. Detected by comparing the output of the compiled
  145
+	matches with the on-the-fly match parser.
  146
+
  147
+2013-01-07  Thomas Jarosch <thomas.jarosch@intra2net.com>
  148
+
  149
+	* tools/matchcompiler.py: Match compiler: Implement 'verify mode'
  150
+	for Token::Match Verify mode runs the same ::Match pattern on a token using the
  151
+	on-the-fly parser and the compiled match parser.  The result is
  152
+	compared and we abort on mismatch.  Already detected an error in our test suite, needs investigation.
  153
+
  154
+2013-01-07  Thomas Jarosch <thomas.jarosch@intra2net.com>
  155
+
  156
+	* tools/matchcompiler.py: Match compiler: Split _replaceTokenMatch()
  157
+	into two small functions
  158
+
  159
+2013-01-07  Frank Zingsheim <f.zingsheim@gmx.de>
  160
+
  161
+	* lib/checkunusedvar.cpp, test/testunusedvar.cpp: Fixed #4385:
  162
+	lock_guard RAII throws unreadVariable
  163
+
  164
+2013-01-07  XhmikosR <xhmikosr@users.sourceforge.net>
  165
+
  166
+	* lib/version.h: version.h: update copyright year
  167
+
  168
+2013-01-07  XhmikosR <xhmikosr@users.sourceforge.net>
  169
+
  170
+	* gui/cppcheck_de.ts, gui/cppcheck_es.ts, gui/cppcheck_fi.ts,
  171
+	gui/cppcheck_fr.ts, gui/cppcheck_it.ts, gui/cppcheck_ja.ts,
  172
+	gui/cppcheck_ko.ts, gui/cppcheck_nl.ts, gui/cppcheck_ru.ts,
  173
+	gui/cppcheck_sr.ts, gui/cppcheck_sv.ts, gui/cppcheck_zh_CN.ts: 
  174
+	update translations
  175
+
  176
+2013-01-07  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  177
+
  178
+	* tools/reduce.cpp: reduce: rename stdout to print to avoid name
  179
+	clash
  180
+
  181
+2013-01-07  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  182
+
  183
+	* lib/checkunusedvar.cpp, lib/tokenize.cpp,
  184
+	test/testsimplifytokens.cpp, test/testtokenize.cpp: Fixed #4381
  185
+	(Inline type declaration on statics causes warning)
  186
+
  187
+2013-01-05  Zachary Blair <zack_blair@hotmail.com>
  188
+
  189
+	* lib/checkother.cpp, test/testother.cpp: Fixed #4405 (False
  190
+	positive: Memory in freed twice (throw))
  191
+
  192
+2013-01-05  PKEuS <philipp.kloke@web.de>
  193
+
  194
+	* lib/checkclass.cpp, test/testclass.cpp: Fixed #4460: Ensure that
  195
+	memset/memcpy is called on a pointer to a class instance.
  196
+
  197
+2013-01-05  Edoardo Prezioso <edo88@email.it>
  198
+
  199
+	* lib/tokenize.cpp, test/testtokenize.cpp: Revert partially the
  200
+	previous commit: The two formulas are true iff 2n = 2 <=> n = 1.
  201
+
  202
+2013-01-04  Edoardo Prezioso <edo88@email.it>
  203
+
  204
+	* lib/tokenize.cpp: Related to the previous commit: Use bit operator '&' instead of modulo operator '%'.
  205
+
  206
+2013-01-04  Edoardo Prezioso <edo88@email.it>
  207
+
  208
+	* lib/tokenize.cpp, test/testtokenize.cpp: Simplify some generalized
  209
+	math formulas: Now the 'sin^2+cos^2=1' and the 'sinh^2-cosh^2=-1' code can handle,
  210
+	for example: sin^4+cos^4=1, sinh^10-cosh^10=-1.  Also, the arguments
  211
+	can be also multitokens, so that it's possible to simplify, for
  212
+	example: 'sin^2(k())+cos^2(k())=1'.
  213
+
  214
+2013-01-04  Edoardo Prezioso <edo88@email.it>
  215
+
  216
+	* lib/tokenize.cpp, test/testtokenize.cpp: Fixed wrong tokenization
  217
+	of some math formulas: The two formulas: sin^2+cos^2 = 1 and sinh^2-cosh^2 = -1 are true
  218
+	iff the two arguments are the same.
  219
+
  220
+2013-01-04  Robert Reif <reif@earthlink.net>
  221
+
  222
+	* lib/checkclass.cpp, lib/symboldatabase.cpp, test/testclass.cpp,
  223
+	test/testconstructors.cpp: Fixed #4458 (False positive:
  224
+	noCopyConstructor in template class)
  225
+
  226
+2013-01-04  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  227
+
  228
+	* gui/gui.pro, gui/mainwindow.cpp, gui/selectfilesdialog.cpp,
  229
+	gui/selectfilesdialog.h, gui/selectfilesdialog.ui: GUI: removed my
  230
+	clumpsy selectfiles dialog. use the standard file selection dialog
  231
+	instead.
  232
+
  233
+2013-01-04  Thomas Jarosch <thomas.jarosch@intra2net.com>
  234
+
  235
+	* tools/matchcompiler.py: Match compiler: Aggregate match functions
  236
+	with the same pattern / function call signature Reduces the number of generated functions from 2290 to 1916.
  237
+
  238
+2013-01-04  Thomas Jarosch <thomas.jarosch@intra2net.com>
  239
+
  240
+	* tools/matchcompiler.py: Match compiler: Store matchFunctions and
  241
+	matchStrs in the class instead of passing it around
  242
+
  243
+2013-01-04  Thomas Jarosch <thomas.jarosch@intra2net.com>
  244
+
  245
+	* tools/matchcompiler.py: Match compiler: Cosmetic changes after
  246
+	running pylint
  247
+
  248
+2013-01-04  Thomas Jarosch <thomas.jarosch@intra2net.com>
  249
+
  250
+	* tools/matchcompiler.py: Match compiler: Turn code into a python
  251
+	class This will make passing around internal states a lot easier
  252
+
  253
+2013-01-04  Thomas Jarosch <thomas.jarosch@intra2net.com>
  254
+
  255
+	* lib/tokenize.cpp: Simple constification (needed by the match
  256
+	compiler)
  257
+
  258
+2013-01-04  Thomas Jarosch <thomas.jarosch@intra2net.com>
  259
+
  260
+	* tools/matchcompiler.py: Match compiler: Inline generated pattern
  261
+	match code for Token::findmatch Verified the output in build/ stayed the same if Token::findmatch
  262
+	support is disabled.
  263
+
  264
+2013-01-03  Edoardo Prezioso <edo88@email.it>
  265
+
  266
+	* lib/symboldatabase.cpp, lib/symboldatabase.h: Use more Effective
  267
+	C++ code style in SymbolDatabase class: 1)The SymbolDatabase::findScope code is moved to the const-version.
  268
+	The non-const version is reimplemented as the combination with
  269
+	const_cast and static_cast.  2)Unrelated: change style of the
  270
+	declaration of some functions (the '*' is moved near the function
  271
+	name).
  272
+
  273
+2013-01-04  Thomas Jarosch <thomas.jarosch@intra2net.com>
  274
+
  275
+	* tools/matchcompiler.py: Match compiler: Check varid on first use
  276
+	like Token::Match does
  277
+
  278
+2013-01-04  Thomas Jarosch <thomas.jarosch@intra2net.com>
  279
+
  280
+	* tools/matchcompiler.py: Match compiler: Add support for
  281
+	Token::findmatch (still disabled for performance reasons)
  282
+
  283
+2013-01-03  Edoardo Prezioso <edo88@email.it>
  284
+
  285
+	* lib/token.cpp, lib/token.h, lib/tokenize.cpp: Use more Effective
  286
+	C++ code style in Token class: 1)The non-const version of Token::tokAt and Token::linkAt now will
  287
+	use a combination of const_cast and static_cast to remove duplicate
  288
+	code.  2)The non-const versions of Token::find(simple)match are
  289
+	added, in order to avoid the usage of const_cast outside the Token
  290
+	code.  3)As a consequence of 2), an useless const_cast applied to a
  291
+	call of Token::findsimplematch in Tokenizer code is removed.
  292
+
  293
+2013-01-03  Thomas Jarosch <thomas.jarosch@intra2net.com>
  294
+
  295
+	* .gitignore: Add reduce tool to .gitignore
  296
+
  297
+2013-01-03  Thomas Jarosch <thomas.jarosch@intra2net.com>
  298
+
  299
+	* Makefile, tools/dmake.cpp: Remove reduce tool in 'make clean'
  300
+
  301
+2013-01-03  Thomas Jarosch <thomas.jarosch@intra2net.com>
  302
+
  303
+	* tools/reduce.cpp: tools/reduce: Remove unused variable detected by
  304
+	cppcheck [reduce.cpp:475]: (style) Variable 'decl' is assigned a value that
  305
+	is never used.
  306
+
  307
+2012-12-31  Thomas Jarosch <thomas.jarosch@intra2net.com>
  308
+
  309
+	* tools/matchcompiler.py: Match compiler: Compile
  310
+	Token::findsimplematch() calls Disabled for now as it runs slowers than before.
  311
+
  312
+2013-01-03  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  313
+
  314
+	* lib/tokenize.cpp, test/testtokenize.cpp: Fixed #4409 (Cppcheck
  315
+	1.58 dev hangs when checking mhz.c of lmbench3 (attached code))
  316
+
  317
+2013-01-03  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  318
+
  319
+	* tools/reduce.cpp: tools/reduce: remove cast in function parameter
  320
+
  321
+2013-01-03  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  322
+
  323
+	* tools/reduce.cpp: tools/reduce: improvements to make it possible
  324
+	to reduce code that hangs
  325
+
  326
+2013-01-03  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  327
+
  328
+	* lib/tokenize.cpp: Tokenizer: add reportProgress to
  329
+	Tokenizer::simplifyKnownVariables. Ticket: #4409
  330
+
  331
+2013-01-03  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  332
+
  333
+	* lib/templatesimplifier.cpp, test/testpreprocessor.cpp: Fixed #4456
  334
+	(std::string::compare(char const*) crash)
  335
+
  336
+2013-01-02  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  337
+
  338
+	* tools/reduce.cpp: reduce: remove more stuff. unneeded #define ,
  339
+	unneeded constructors, unneeded #ifndef etc
  340
+
  341
+2013-01-02  Edoardo Prezioso <edo88@email.it>
  342
+
  343
+	* gui/cppcheck_de.ts, gui/cppcheck_es.ts, gui/cppcheck_fi.ts,
  344
+	gui/cppcheck_fr.ts, gui/cppcheck_it.ts, gui/cppcheck_ja.ts,
  345
+	gui/cppcheck_ko.ts, gui/cppcheck_nl.ts, gui/cppcheck_ru.ts,
  346
+	gui/cppcheck_sr.ts, gui/cppcheck_sv.ts, gui/cppcheck_zh_CN.ts: 
  347
+	Update cppcheck translations.
  348
+
  349
+2013-01-02  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  350
+
  351
+	* tools/reduce.cpp: reduce: remove more code blocks
  352
+
  353
+2013-01-02  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  354
+
  355
+	* Makefile, tools/dmake.cpp: dmake: fixed reduce compilation
  356
+
  357
+2013-01-02  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  358
+
  359
+	* Makefile, tools/dmake.cpp: dmake: fixed compilation of reduce
  360
+
  361
+2013-01-02  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  362
+
  363
+	* lib/checkclass.cpp, test/testconstructors.cpp: Fixed #4454 (False
  364
+	positive: class member (POD) not initialized (when initialized to 0
  365
+	in initializer list))
  366
+
  367
+2013-01-02  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  368
+
  369
+	* Makefile, tools/dmake.cpp: dmake: use 'make reduce' to compile the
  370
+	reduce program
  371
+
  372
+2013-01-01  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  373
+
  374
+	* tools/reduce.cpp: tools/reduce: various improvements to remove
  375
+	more code
  376
+
  377
+2013-01-01  Reijo Tomperi <aggro80@users.sourceforge.net>
  378
+
  379
+	* cli/cmdlineparser.cpp, cli/cmdlineparser.h,
  380
+	cli/cppcheckexecutor.cpp, cli/cppcheckexecutor.h,
  381
+	cli/filelister.cpp, cli/filelister.h, cli/main.cpp,
  382
+	cli/pathmatch.cpp, cli/pathmatch.h, cli/threadexecutor.cpp,
  383
+	cli/threadexecutor.h, gui/aboutdialog.cpp, gui/aboutdialog.h,
  384
+	gui/application.cpp, gui/application.h, gui/applicationdialog.cpp,
  385
+	gui/applicationdialog.h, gui/applicationlist.cpp,
  386
+	gui/applicationlist.h, gui/checkstatistics.cpp,
  387
+	gui/checkstatistics.h, gui/checkthread.cpp, gui/checkthread.h,
  388
+	gui/common.h, gui/csvreport.cpp, gui/csvreport.h,
  389
+	gui/erroritem.cpp, gui/erroritem.h, gui/filelist.cpp,
  390
+	gui/filelist.h, gui/fileviewdialog.cpp, gui/fileviewdialog.h,
  391
+	gui/logview.cpp, gui/logview.h, gui/main.cpp, gui/mainwindow.cpp,
  392
+	gui/mainwindow.h, gui/platforms.cpp, gui/platforms.h,
  393
+	gui/project.cpp, gui/project.h, gui/projectfile.cpp,
  394
+	gui/projectfile.h, gui/projectfiledialog.cpp,
  395
+	gui/projectfiledialog.h, gui/report.cpp, gui/report.h,
  396
+	gui/resultstree.cpp, gui/resultstree.h, gui/resultsview.cpp,
  397
+	gui/resultsview.h, gui/scratchpad.cpp, gui/scratchpad.h,
  398
+	gui/selectfilesdialog.cpp, gui/selectfilesdialog.h,
  399
+	gui/settingsdialog.cpp, gui/settingsdialog.h, gui/showtypes.cpp,
  400
+	gui/showtypes.h, gui/statsdialog.cpp, gui/statsdialog.h,
  401
+	gui/test/benchmark/simple/benchmarksimple.cpp,
  402
+	gui/test/benchmark/simple/benchmarksimple.h,
  403
+	gui/test/data/benchmark/simple.cpp,
  404
+	gui/test/filelist/testfilelist.cpp,
  405
+	gui/test/filelist/testfilelist.h,
  406
+	gui/test/projectfile/testprojectfile.cpp,
  407
+	gui/test/projectfile/testprojectfile.h,
  408
+	gui/test/translationhandler/testtranslationhandler.cpp,
  409
+	gui/test/translationhandler/testtranslationhandler.h,
  410
+	gui/test/xmlreport/testxmlreport.cpp,
  411
+	gui/test/xmlreport/testxmlreport.h,
  412
+	gui/test/xmlreportv1/testxmlreportv1.cpp,
  413
+	gui/test/xmlreportv1/testxmlreportv1.h,
  414
+	gui/test/xmlreportv2/testxmlreportv2.cpp,
  415
+	gui/test/xmlreportv2/testxmlreportv2.h, gui/threadhandler.cpp,
  416
+	gui/threadhandler.h, gui/threadresult.cpp, gui/threadresult.h,
  417
+	gui/translationhandler.cpp, gui/translationhandler.h,
  418
+	gui/txtreport.cpp, gui/txtreport.h, gui/xmlreport.cpp,
  419
+	gui/xmlreport.h, gui/xmlreportv1.cpp, gui/xmlreportv1.h,
  420
+	gui/xmlreportv2.cpp, gui/xmlreportv2.h, lib/check.h,
  421
+	lib/check64bit.cpp, lib/check64bit.h, lib/checkassignif.cpp,
  422
+	lib/checkassignif.h, lib/checkautovariables.cpp,
  423
+	lib/checkautovariables.h, lib/checkboost.cpp, lib/checkboost.h,
  424
+	lib/checkbufferoverrun.cpp, lib/checkbufferoverrun.h,
  425
+	lib/checkclass.cpp, lib/checkclass.h, lib/checkexceptionsafety.cpp,
  426
+	lib/checkexceptionsafety.h, lib/checkinternal.cpp,
  427
+	lib/checkinternal.h, lib/checkio.cpp, lib/checkio.h,
  428
+	lib/checkleakautovar.cpp, lib/checkleakautovar.h,
  429
+	lib/checkmemoryleak.cpp, lib/checkmemoryleak.h,
  430
+	lib/checknonreentrantfunctions.cpp,
  431
+	lib/checknonreentrantfunctions.h, lib/checknullpointer.cpp,
  432
+	lib/checknullpointer.h, lib/checkobsoletefunctions.cpp,
  433
+	lib/checkobsoletefunctions.h, lib/checkother.cpp, lib/checkother.h,
  434
+	lib/checkpostfixoperator.cpp, lib/checkpostfixoperator.h,
  435
+	lib/checkstl.cpp, lib/checkstl.h, lib/checkuninitvar.cpp,
  436
+	lib/checkuninitvar.h, lib/checkunusedfunctions.cpp,
  437
+	lib/checkunusedfunctions.h, lib/checkunusedvar.cpp,
  438
+	lib/checkunusedvar.h, lib/cppcheck.cpp, lib/cppcheck.h,
  439
+	lib/errorlogger.cpp, lib/errorlogger.h, lib/executionpath.cpp,
  440
+	lib/executionpath.h, lib/mathlib.cpp, lib/mathlib.h, lib/path.cpp,
  441
+	lib/path.h, lib/preprocessor.cpp, lib/preprocessor.h,
  442
+	lib/settings.cpp, lib/settings.h, lib/suppressions.cpp,
  443
+	lib/suppressions.h, lib/symboldatabase.cpp, lib/symboldatabase.h,
  444
+	lib/templatesimplifier.cpp, lib/templatesimplifier.h,
  445
+	lib/timer.cpp, lib/timer.h, lib/token.cpp, lib/token.h,
  446
+	lib/tokenize.cpp, lib/tokenize.h, lib/tokenlist.cpp,
  447
+	lib/tokenlist.h, man/cppcheck.1.xml, test/test64bit.cpp,
  448
+	test/testassignif.cpp, test/testautovariables.cpp,
  449
+	test/testboost.cpp, test/testbufferoverrun.cpp,
  450
+	test/testcharvar.cpp, test/testclass.cpp,
  451
+	test/testcmdlineparser.cpp, test/testconstructors.cpp,
  452
+	test/testcppcheck.cpp, test/testdivision.cpp,
  453
+	test/testerrorlogger.cpp, test/testexceptionsafety.cpp,
  454
+	test/testfilelister.cpp, test/testincompletestatement.cpp,
  455
+	test/testinternal.cpp, test/testio.cpp, test/testleakautovar.cpp,
  456
+	test/testmathlib.cpp, test/testmemleak.cpp,
  457
+	test/testnonreentrantfunctions.cpp, test/testnullpointer.cpp,
  458
+	test/testobsoletefunctions.cpp, test/testother.cpp,
  459
+	test/testpath.cpp, test/testpathmatch.cpp,
  460
+	test/testpostfixoperator.cpp, test/testpreprocessor.cpp,
  461
+	test/testrunner.cpp, test/testsimplifytokens.cpp, test/teststl.cpp,
  462
+	test/testsuite.cpp, test/testsuite.h, test/testsuppressions.cpp,
  463
+	test/testsymboldatabase.cpp, test/testthreadexecutor.cpp,
  464
+	test/testtimer.cpp, test/testtoken.cpp, test/testtokenize.cpp,
  465
+	test/testuninitvar.cpp, test/testunusedfunctions.cpp,
  466
+	test/testunusedprivfunc.cpp, test/testunusedvar.cpp,
  467
+	test/testutils.h, tools/dmake.cpp: Updating year 2012 -> 2013 to
  468
+	.cpp and .h files and man page.
  469
+
  470
+2013-01-01  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  471
+
  472
+	* tools/reduce.cpp: tools/reduce: better handling of #include
  473
+
  474
+2013-01-01  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  475
+
  476
+	* tools/reduce.cpp: tools/reduce: removing blocks of code that
  477
+	contain #if,#else,#endif
  478
+
  479
+2013-01-01  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  480
+
  481
+	* tools/reduce.cpp: tools/reduce: speedup, terminate checking when
  482
+	error is found
  483
+
  484
+2013-01-01  Robert Reif <reif@earthlink.net>
  485
+
  486
+	* lib/checkclass.cpp, lib/checkclass.h, lib/symboldatabase.cpp,
  487
+	lib/symboldatabase.h, test/testconstructors.cpp: Fixed #4302 (Member
  488
+	variable not initialized in public delegate constructor)
  489
+
  490
+2012-12-31  Thomas Jarosch <thomas.jarosch@intra2net.com>
  491
+
  492
+	* tools/matchcompiler.py: MC: Split convertFile() function into
  493
+	smaller pieces Output of build/ stayed the same.
  494
+
  495
+2012-12-31  Thomas Jarosch <thomas.jarosch@intra2net.com>
  496
+
  497
+	* tools/matchcompiler.py: Match compiler: Python syntax
  498
+	simplification Output in build/ stayed the same
  499
+
  500
+2012-12-31  Thomas Jarosch <thomas.jarosch@intra2net.com>
  501
+
  502
+	* AUTHORS: Add myself to AUTHORS
  503
+
  504
+2012-12-31  Thomas Jarosch <thomas.jarosch@intra2net.com>
  505
+
  506
+	* tools/matchcompiler.py: Match compiler: Speed up Token comparison
  507
+	with string literals. Ticket #4451 "Cache" string literals as C++ std::string objects.  The string
  508
+	length gets cached and so we don't need to call strlen() on the
  509
+	literals at runtime.
  510
+
  511
+2012-12-31  Edoardo Prezioso <edo88@email.it>
  512
+
  513
+	* lib/tokenize.cpp: Use 'simple' matching with normal patterns.
  514
+
  515
+2012-12-31  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  516
+
  517
+	* tools/reduce.cpp: reduce: Added simple command line tool that
  518
+	reduces code for a false positive.
  519
+
  520
+2012-12-31  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  521
+
  522
+	* lib/checkclass.cpp, lib/symboldatabase.cpp: Replaced %name% with
  523
+	%type%
  524
+
  525
+2012-12-30  Thomas Jarosch <thomas.jarosch@intra2net.com>
  526
+
  527
+	* tools/matchcompiler.py: Match compiler: Collect and cache plain
  528
+	C-strings Profiler runs with gperftools showed we were spending a lot of time
  529
+	in strlen() even with compiled match patterns.  If you compare a std::string with a plain C-string, the comparison
  530
+	operator needs to calculate the length of the C-string via strlen().  We can avoid this by turning all C-strings into C++ strings, which
  531
+	cache the string length internally.  The match compiler has been adapted to collect all C-strings during
  532
+	compilation and aggregate them.  Benchmark on the 'rpm' code base on a Core i7 920 box: cppcheck without matchcompiler: real    0m30.977s cppcheck with previous matchcompiler: real    0m28.157s cppcheck with cached C-strings: real    0m17.823s
  533
+
  534
+2012-12-30  Thomas Jarosch <thomas.jarosch@intra2net.com>
  535
+
  536
+	* tools/matchcompiler.py: Match compiler: No need to handle %num%
  537
+	twice
  538
+
  539
+2012-12-29  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  540
+
  541
+	* lib/tokenize.cpp, test/testtokenize.cpp: Fixed #4372 (Tokenizer
  542
+	misidentifying which function a variable belongs to)
  543
+
  544
+2012-12-29  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  545
+
  546
+	* lib/checkunusedvar.cpp: astyle formatting
  547
+
  548
+2012-12-29  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  549
+
  550
+	* lib/tokenize.cpp, test/testtokenize.cpp: Fixed #4316 (False
  551
+	positive: (constStatement) Redundant code)
  552
+
  553
+2012-12-29  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  554
+
  555
+	* lib/checkunusedvar.cpp, test/testunusedvar.cpp: Fixed #4411
  556
+	(Variable is assigned a value that is never used.)
  557
+
  558
+2012-12-28  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  559
+
  560
+	* : Merge pull request #126 from SimonKagstrom/for-upstream Misc fixes for the --include= option
  561
+
  562
+2012-12-29  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  563
+
  564
+	* lib/symboldatabase.cpp, test/testsymboldatabase.cpp: Symbol
  565
+	database: Add support for unnamed array arguments to functions
  566
+	(#4444)
  567
+
  568
+2012-12-29  Robert Reif <reif@earthlink.net>
  569
+
  570
+	* lib/checkclass.cpp, test/testconstructors.cpp: Fixed #4449
  571
+	(segfault in CheckClass::initializeVarList())
  572
+
  573
+2012-12-28  Thomas Jarosch <thomas.jarosch@intra2net.com>
  574
+
  575
+	* lib/checkother.cpp, test/testother.cpp: Fix crash on empty
  576
+	brackets Relevant parts from the backtrace:
  577
+
  578
+2012-12-28  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  579
+
  580
+	* lib/checkunusedvar.cpp, test/testunusedvar.cpp: Fixed #4022 (false
  581
+	positive: (style) Variable 'sort_entry' is assigned a value that is
  582
+	never used)
  583
+
  584
+2012-12-28  Robert Reif <reif@earthlink.net>
  585
+
  586
+	* lib/symboldatabase.cpp: Symbol database: Improved handling of
  587
+	array arguments (#4444)
  588
+
  589
+2012-12-28  Simon Kagstrom <simon.kagstrom@netinsight.net>
  590
+
  591
+	* lib/path.cpp, lib/path.h, lib/preprocessor.cpp, test/testpath.cpp: 
  592
+	path: Add getPathFromFilename (returns the path part of a filename) E.g.,   /tmp/a.h -> /tmp/   a.h -> etc.
  593
+
  594
+2012-12-28  Simon Kagstrom <simon.kagstrom@netinsight.net>
  595
+
  596
+	* cli/cmdlineparser.cpp: Ticket 4408: cmdlineparser: Improve
  597
+	description of --include=
  598
+
  599
+2012-12-28  Simon Kagstrom <simon.kagstrom@netinsight.net>
  600
+
  601
+	* lib/preprocessor.cpp: preprocessor: Kill commented out code
  602
+
  603
+2012-12-28  Simon Kagstrom <simon.kagstrom@netinsight.net>
  604
+
  605
+	* cli/cmdlineparser.cpp: Ticket #4408: cmdlineparser: Don't force
  606
+	single configuration with --include=
  607
+
  608
+2012-12-28  Simon Kagstrom <simon.kagstrom@netinsight.net>
  609
+
  610
+	* lib/preprocessor.cpp: preprocessor: Don't access empty lists libc aborts with: /usr/include/c++/4.4/debug/list:256:error: attempt to access an
  611
+	    element in an empty container.  Objects involved in the operation: sequence "this" @ 0x0xbfffe5f0 {   type = NSt7__debug4listISsSaISsEEE; } otherwise.
  612
+
  613
+2012-12-28  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  614
+
  615
+	* lib/checkuninitvar.cpp, test/testuninitvar.cpp: Fixed #4426 (False
  616
+	positive: Unitialized variable warning when comparing addresses)
  617
+
  618
+2012-12-28  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  619
+
  620
+	* lib/checkuninitvar.cpp: Uninitialized variables: Added debug
  621
+	warning for bailout
  622
+
  623
+2012-12-28  Thomas Jarosch <thomas.jarosch@intra2net.com>
  624
+
  625
+	* lib/checkbufferoverrun.cpp: Fix comment about wrong magic number
  626
+
  627
+2012-12-28  Thomas Jarosch <thomas.jarosch@intra2net.com>
  628
+
  629
+	* lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed
  630
+	#4444 (segmentation fault)
  631
+
  632
+2012-12-28  Robert Reif <reif@earthlink.net>
  633
+
  634
+	* lib/checkclass.cpp, lib/symboldatabase.cpp,
  635
+	test/testsymboldatabase.cpp: Fixed #4442 (crash of cppcheck while
  636
+	scanning gcc-testsuite (invalid code))
  637
+
  638
+2012-12-27  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  639
+
  640
+	* lib/checkuninitvar.cpp, test/testuninitvar.cpp: Uninitialized
  641
+	variables: fixed false positives by bailing out when variable is
  642
+	conditionally initialized and then there is a conditional return.
  643
+
  644
+2012-12-27  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  645
+
  646
+	* lib/tokenize.cpp, test/testtokenize.cpp: Tokenizer::setVarId:
  647
+	Fixed problem with initializer lists (#4436)
  648
+
  649
+2012-12-27  Robert Reif <reif@earthlink.net>
  650
+
  651
+	* lib/checkclass.cpp, lib/symboldatabase.cpp, test/testclass.cpp,
  652
+	test/testconstructors.cpp: Fixed #4419 (False positive: Class does
  653
+	not have a constructor)
  654
+
  655
+2012-12-27  Robert Reif <reif@earthlink.net>
  656
+
  657
+	* lib/tokenize.cpp, test/testtokenize.cpp: Fixed #4436 (FP: Member
  658
+	variable is not initialized in the constructor. (with two
  659
+	parameters))
  660
+
  661
+2012-12-27  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  662
+
  663
+	* lib/preprocessor.cpp: Fixed Cppcheck self-check message
  664
+
  665
+2012-12-27  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  666
+
  667
+	* lib/preprocessor.cpp: Preprocessor: Reduce variable scope
  668
+
  669
+2012-12-27  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  670
+
  671
+	* lib/preprocessor.cpp: astyle formatting
  672
+
  673
+2012-12-27  Simon Kagstrom <simon.kagstrom@netinsight.net>
  674
+
  675
+	* cli/cmdlineparser.cpp, lib/preprocessor.cpp, lib/settings.h,
  676
+	lib/tokenlist.cpp, test/testtokenize.cpp: Fixed #4408 (Force
  677
+	inclusion of files (a la -include /.../ in GCC))
  678
+
  679
+2012-12-27  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  680
+
  681
+	* lib/checkassignif.cpp, test/testassignif.cpp: Fixed #4434 (false
  682
+	positive: (style) Mismatching assignment and comparison, comparison
  683
+	'pen!=-1' is always true.)
  684
+
  685
+2012-12-27  acm4me <andrew.c.martin@saic.com>
  686
+
  687
+	* cli/cmdlineparser.cpp, cli/threadexecutor.cpp,
  688
+	lib/checkmemoryleak.cpp, lib/checkuninitvar.cpp,
  689
+	lib/checkunusedvar.cpp, lib/mathlib.cpp, lib/path.cpp,
  690
+	lib/symboldatabase.cpp, lib/token.cpp, lib/token.h,
  691
+	lib/tokenize.cpp, lib/tokenlist.cpp: Support for Sun Studio C++
  692
+	compiler
  693
+
  694
+2012-12-26  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  695
+
  696
+	* cli/cppcheckexecutor.cpp, lib/cppcheck.cpp, lib/cppcheck.h: 
  697
+	Cppcheck: Show single 'too many configurations' message if
  698
+	--enable=information hasn't been used and there are too many
  699
+	configurations.
  700
+
  701
+2012-12-26  PKEuS <philipp.kloke@web.de>
  702
+
  703
+	* test/testbufferoverrun.cpp, test/testleakautovar.cpp: Fixed unit
  704
+	tests
  705
+
  706
+2012-12-26  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  707
+
  708
+	* lib/tokenize.cpp, test/testsimplifytokens.cpp,
  709
+	test/testtokenize.cpp: Fixed #4433 (Wrong array size for string with
  710
+	\0)
  711
+
  712
+2012-12-26  Robert Reif <reif@earthlink.net>
  713
+
  714
+	* lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed
  715
+	#4432 (Crash on parsing PHP interpreter)
  716
+
  717
+2012-12-25  Thomas Jarosch <thomas.jarosch@intra2net.com>
  718
+
  719
+	* tools/times.c: Silence cppcheck warning
  720
+
  721
+2012-12-25  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  722
+
  723
+	* lib/checknullpointer.cpp, test/testnullpointer.cpp: Null pointer:
  724
+	Fixed FP when there are 'return p?p->x:0;'
  725
+
  726
+2012-12-25  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  727
+
  728
+	* lib/checkuninitvar.cpp, test/testuninitvar.cpp: Uninitialized
  729
+	variables: fixed FP when there are function calls where type* is
  730
+	converted to unknown_type
  731
+
  732
+2012-12-25  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  733
+
  734
+	* lib/checkuninitvar.cpp, test/testuninitvar.cpp: Uninitialized
  735
+	variables: fixed FP when there are suspicious function calls where
  736
+	type** is converted to type*
  737
+
  738
+2012-12-25  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  739
+
  740
+	* lib/checkuninitvar.cpp, test/testuninitvar.cpp: Uninitialized
  741
+	variables: Fixed FP when using typeof on uninitialized data in
  742
+	return statement
  743
+
  744
+2012-12-25  Thomas Jarosch <thomas.jarosch@intra2net.com>
  745
+
  746
+	* tools/matchcompiler.py: Add execute permissions to
  747
+	matchcompiler.py on linux
  748
+
  749
+2012-12-25  Thomas Jarosch <thomas.jarosch@intra2net.com>
  750
+
  751
+	* tools/extracttests.py, tools/matchcompiler.py: Python 3
  752
+	compatibility for the helper scripts print() is a function in python 3.  Works with pyhton 2.x, too.
  753
+
  754
+2012-12-25  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  755
+
  756
+	* lib/checkstl.cpp, test/teststl.cpp: Fixed #4431 (FP: Erroneous
  757
+	'Ineffective call of function empty()' in ?: test)
  758
+
  759
+2012-12-25  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  760
+
  761
+	* lib/checkuninitvar.cpp, test/testuninitvar.cpp: Uninitialized
  762
+	variables: handle unsimplified labels better
  763
+
  764
+2012-12-25  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  765
+
  766
+	* lib/token.cpp, lib/tokenize.cpp, test/testsimplifytokens.cpp: 
  767
+	Tokenizer: Improved handling of '\0' in strings
  768
+
  769
+2012-12-24  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  770
+
  771
+	* lib/checkuninitvar.cpp, test/testuninitvar.cpp: Uninitialized
  772
+	variables: Better value flow analysis. Fixed false positives.
  773
+
  774
+2012-12-24  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  775
+
  776
+	* lib/checkother.cpp: Opposite inner conditions: Clean up
  777
+	copy/pasted code
  778
+
  779
+2012-12-24  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  780
+
  781
+	* lib/checkclass.cpp, lib/symboldatabase.cpp, test/testclass.cpp,
  782
+	test/testconstructors.cpp: Revert "Fixed #4419 (False positive:
  783
+	Class does not have a constructor)" This reverts commit 9a79961b6c147878619037cc0a61046b4976771e.  There is a segmentation fault when checking lib/preprocessor.cpp
  784
+
  785
+2012-12-24  Robert Reif <reif@earthlink.net>
  786
+
  787
+	* lib/checkclass.cpp, lib/symboldatabase.cpp, test/testclass.cpp,
  788
+	test/testconstructors.cpp: Fixed #4419 (False positive: Class does
  789
+	not have a constructor)
  790
+
  791
+2012-12-23  XhmikosR <xhmikosr@users.sourceforge.net>
  792
+
  793
+	* htdocs/site/css/all.css, htdocs/site/css/pack.css: merge similar
  794
+	selectors and use silver instead of the hex color since it's smaller
  795
+
  796
+2012-12-23  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  797
+
  798
+	* lib/tokenize.cpp, test/testtokenize.cpp: Tokenizer::setVarId:
  799
+	Fixed problem in initializer list when parameter and class member
  800
+	has same name
  801
+
  802
+2012-12-23  XhmikosR <xhmikosr@users.sourceforge.net>
  803
+
  804
+	* htmlreport/cppcheck-htmlreport: htmlreport/cppcheck-htmlreport:
  805
+	simplify css
  806
+
  807
+2012-12-23  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  808
+
  809
+	* lib/checkuninitvar.cpp, test/testuninitvar.cpp: Uninitialized
  810
+	variables: Fixed false positives when variable x is given a nonzero
  811
+	value when variable y is uninitialized.
  812
+
  813
+2012-12-23  XhmikosR <xhmikosr@users.sourceforge.net>
  814
+
  815
+	* readme.md: readme.md: various improvements
  816
+
  817
+2012-12-22  XhmikosR <xhmikosr@users.sourceforge.net>
  818
+
  819
+	* gui/help/buildhelp.bat: buildhelp.bat: Add missing popd
  820
+
  821
+2012-12-23  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  822
+
  823
+	* lib/cppcheck.cpp: Cppcheck: Only show 'Too many configurations'
  824
+	and 'Interrupted checking' information messages when information
  825
+	severity is enabled
  826
+
  827
+2012-12-23  Robert Reif <reif@earthlink.net>
  828
+
  829
+	* lib/tokenize.cpp, test/testtokenize.cpp: Fixed #4430 (FP: Member
  830
+	variable is not initialized in the constructor.)
  831
+
  832
+2012-12-22  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  833
+
  834
+	* lib/tokenize.cpp, test/testsimplifytokens.cpp: Tokenizer: Fixed
  835
+	goto problems
  836
+
  837
+2012-12-22  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  838
+
  839
+	* lib/checkbufferoverrun.cpp, lib/checkbufferoverrun.h,
  840
+	test/testbufferoverrun.cpp: Fixed #4262 (Small Request/Suggestion
  841
+	for checks on array size of args (bounty offer))
  842
+
  843
+2012-12-22  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  844
+
  845
+	* lib/checkbufferoverrun.cpp, test/testbufferoverrun.cpp: Fixed
  846
+	#4398 (False negative: out of bounds (for loop))
  847
+
  848
+2012-12-21  Robert Reif <reif@earthlink.net>
  849
+
  850
+	* lib/checkclass.cpp, test/testconstructors.cpp: Fixed #4383
  851
+	(Improve check: uninitialized member variable not detected when
  852
+	initialization is not proper)
  853
+
  854
+2012-12-21  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  855
+
  856
+	* lib/checkuninitvar.cpp, test/testuninitvar.cpp: Uninitialized
  857
+	variables: Better testing of function handling
  858
+
  859
+2012-12-21  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  860
+
  861
+	* lib/checkuninitvar.cpp, test/testuninitvar.cpp: Uninitialized
  862
+	variables: warn about structs in C code
  863
+
  864
+2012-12-21  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  865
+
  866
+	* lib/checkuninitvar.cpp, test/testuninitvar.cpp: Uninitialized
  867
+	variables: Improved handling of function calls
  868
+
  869
+2012-12-21  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  870
+
  871
+	* lib/checkuninitvar.cpp, test/testuninitvar.cpp: Uninitialized
  872
+	variables : fixed false positives when passing address of pointer to
  873
+	function.
  874
+
  875
+2012-12-21  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  876
+
  877
+	* : Merge pull request #125 from heyuqi/zhcn-trans GUI add translation for Simplified Chinese.
  878
+
  879
+2012-12-20  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  880
+
  881
+	* lib/checkother.cpp, test/testother.cpp: Fixed #4403 (False
  882
+	positive 'Conversion of string literal <string> to bool always
  883
+	evaluates to true.' with BOOST_ASSERT)
  884
+
  885
+2012-12-20  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  886
+
  887
+	* lib/checkuninitvar.cpp, lib/checkuninitvar.h,
  888
+	test/testuninitvar.cpp: Uninitialized variables: Improved checking
  889
+	of functions
  890
+
  891
+2012-12-20  He Yuqi <yuqi.he@gmail.com>
  892
+
  893
+	* gui/cppcheck_zh_CN.ts: Update the Chinese translation.
  894
+
  895
+2012-12-20  PKEuS <philipp.kloke@web.de>
  896
+
  897
+	* lib/checkunusedvar.cpp: Fixed compiler error in VS10
  898
+
  899
+2012-12-20  Robert Reif <reif@earthlink.net>
  900
+
  901
+	* lib/symboldatabase.cpp, lib/symboldatabase.h, test/teststl.cpp: 
  902
+	Symbol database: Better handling of 'using namespace N;'. Ticket:
  903
+	#4412
  904
+
  905
+2012-12-19  He Yuqi <yuqi.he@gmail.com>
  906
+
  907
+	* gui/cppcheck_zh_CN.ts: Update the Chinese translation.
  908
+
  909
+2012-12-19  He Yuqi <yuqi.he@gmail.com>
  910
+
  911
+	* gui/cppcheck_zh_CN.ts: Update the Chinese translation.
  912
+
  913
+2012-12-19  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  914
+
  915
+	* tools/matchcompiler.py: matchcompiler: throw InternalError if
  916
+	Token::Match is called with the varid 0
  917
+
  918
+2012-12-18  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  919
+
  920
+	* lib/checkuninitvar.cpp, lib/checkunusedvar.cpp,
  921
+	test/testuninitvar.cpp, test/testunusedvar.cpp: Fixed #4320 (False
  922
+	positives 'unassignedVariable' and 'uninitvar')
  923
+
  924
+2012-12-19  He Yuqi <yuqi.he@gmail.com>
  925
+
  926
+	* gui/cppcheck_zh_CN.ts, gui/gui.pro, gui/translationhandler.cpp: 
  927
+	Update the chinese translation.
  928
+
  929
+2012-12-18  He Yuqi <yuqi.he@gmail.com>
  930
+
  931
+	* gui/cppcheck_zh_CN.ts: Create the translation file for Simplified
  932
+	Chinese.
  933
+
  934
+2012-12-17  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  935
+
  936
+	* lib/checkunusedvar.cpp, test/testunusedvar.cpp: Unused var: Limit
  937
+	bailout for foreach loops. Only bailout if name contains 'foreach'
  938
+	or 'for_each'. Only bailout variables that are used more than once
  939
+	in the body. Ticket: #4155
  940
+
  941
+2012-12-17  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  942
+
  943
+	* lib/checkunusedvar.cpp, test/testunusedvar.cpp: Fixed #4155 (false
  944
+	positive: Variable is assigned a value that is never used (inside
  945
+	BOOST_FOREACH loop))
  946
+
  947
+2012-12-16  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  948
+
  949
+	* lib/checkmemoryleak.cpp, test/testmemleak.cpp: 
  950
+	CheckMemoryLeaksInFunction: Fixed problems with catch and function
  951
+	calls. Ticket: #4405
  952
+
  953
+2012-12-16  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  954
+
  955
+	* test/testtokenize.cpp: AST: Added some tests to ensure operator
  956
+	precedence is handled properly
  957
+
  958
+2012-12-16  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  959
+
  960
+	* lib/token.cpp, lib/tokenlist.cpp, test/testtokenize.cpp: AST:
  961
+	generate tree from bottom and upwards
  962
+
  963
+2012-12-16  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  964
+
  965
+	* lib/token.cpp, lib/token.h, lib/tokenlist.cpp,
  966
+	test/testtokenize.cpp: AST: Handle function calls
  967
+
  968
+2012-12-16  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  969
+
  970
+	* lib/token.cpp, lib/tokenlist.cpp, test/testtokenize.cpp: AST:
  971
+	Improved handling of unary operators
  972
+
  973
+2012-12-16  Robert Reif <reif@earthlink.net>
  974
+
  975
+	* lib/symboldatabase.cpp, test/testclass.cpp: Fixed #4404 (Forward
  976
+	declared class cause false style warning about missing constructor)
  977
+
  978
+2012-12-15  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  979
+
  980
+	* lib/token.cpp, lib/token.h, lib/tokenlist.cpp, lib/tokenlist.h,
  981
+	test/testtokenize.cpp: AST: Simple AST. Not used in the clients.
  982
+	Only part of the testing for now.
  983
+
  984
+2012-12-15  XhmikosR <xhmikosr@users.sourceforge.net>
  985
+
  986
+	* .gitignore: update .gitignore
  987
+
  988
+2012-12-11  XhmikosR <xhmikosr@users.sourceforge.net>
  989
+
  990
+	* democlient/democlient.cpp, tools/times.c: apply astyle
  991
+
  992
+2012-12-03  XhmikosR <xhmikosr@users.sourceforge.net>
  993
+
  994
+	* htdocs/site/css/all.css, htdocs/site/css/pack.css: partially
  995
+	revert f8c99ce065ef01b3864d5e467737f45f908cb2b0 and use 2 spaces
  996
+
  997
+2012-12-14  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  998
+
  999
+	* tools/matchcompiler.py: matchcompiler: handle %varid%
  1000
+
  1001
+2012-12-13  Gerhard Zlabinger <gerhard.zlabinger@gmail.com>
  1002
+
  1003
+	* cli/threadexecutor.cpp: Travis: Fixed Cppcheck warnings
  1004
+
  1005
+2012-12-13  PKEuS <philipp.kloke@web.de>
  1006
+
  1007
+	* cli/cppcheck.vcproj, test/testrunner.vcproj: Updated VS9 solution
  1008
+	with qmake (#4397).
  1009
+
  1010
+2012-12-13  Gerhard Zlabinger <gerhard.zlabinger@gmail.com>
  1011
+
  1012
+	* cli/threadexecutor.cpp, cli/threadexecutor.h: CLI: write status
  1013
+	messages
  1014
+
  1015
+2012-12-13  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  1016
+
  1017
+	* test/testrunner.vcxproj, test/testrunner.vcxproj.filters: VS2010:
  1018
+	Added cli/cppcheckexecutor.cpp to testrunner project
  1019
+
  1020
+2012-12-13  Reijo Tomperi <aggro80@users.sourceforge.net>
  1021
+
  1022
+	* gui/test/filelist/testfilelist.cpp: Add test case (in comments)
  1023
+	for exclude directory bug in gui.
  1024
+
  1025
+2012-12-12  Gerhard Zlabinger <gerhard.zlabinger@gmail.com>
  1026
+
  1027
+	* cli/threadexecutor.cpp, cli/threadexecutor.h: Fixed #648 (Threads
  1028
+	in Windows)
  1029
+
  1030
+2012-12-12  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  1031
+
  1032
+	* .travis.yml: Travis: Use SRCDIR instead of LIBDIR
  1033
+
  1034
+2012-12-11  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  1035
+
  1036
+	* : Merge pull request #123 from Keruspe/master build: Fix sources location
  1037
+
  1038
+2012-12-10  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  1039
+
  1040
+	* lib/tokenize.cpp: Tokenizer: Fixed Token::Match pattern
  1041
+
  1042
+2012-12-10  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  1043
+
  1044
+	* tools/matchcompiler.py: compiled Token::Match patterns:
  1045
+	refactorings,improvements
  1046
+
  1047
+2012-12-10  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  1048
+
  1049
+	* lib/tokenize.cpp, test/testtokenize.cpp: Fixed #4395 (Wrong
  1050
+	simplification of known variables in nested assignment)
  1051
+
  1052
+2012-12-10  Robert Reif <reif@earthlink.net>
  1053
+
  1054
+	* lib/checkclass.cpp, test/testclass.cpp: Fixed #4391 (False
  1055
+	positive: ctor not detected after variable declaration)
  1056
+
  1057
+2012-12-09  Frank Zingsheim <f.zingsheim@gmx.de>
  1058
+
  1059
+	* lib/checkmemoryleak.cpp, lib/checkmemoryleak.h,
  1060
+	test/testmemleak.cpp: Fix #4045: memory leak not reported after
  1061
+	usage of " + p[]"
  1062
+
  1063
+2012-12-09  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  1064
+
  1065
+	* lib/checkobsoletefunctions.h: Obsolete functions: removed 'ctime'
  1066
+	warning. The function is obsolete but the message don't point out a
  1067
+	good replacement nor where it's documented that this function is
  1068
+	obsolete
  1069
+
  1070
+2012-12-09  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  1071
+
  1072
+	* cli/cppcheckexecutor.cpp: cppcheckexecutor: removed time info from
  1073
+	verbose progress info. the ctime function that is used is not
  1074
+	threadsafe.
  1075
+
  1076
+2012-12-08  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  1077
+
  1078
+	* tools/matchcompiler.py: matchcompiler: replaced regular expression
  1079
+	with simple code that parses the code better
  1080
+
  1081
+2012-12-08  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  1082
+
  1083
+	* tools/matchcompiler.py: matchcompiler: merged regular expressions
  1084
+	to a single expression
  1085
+
  1086
+2012-12-08  PKEuS <philipp.kloke@web.de>
  1087
+
  1088
+	* lib/checkobsoletefunctions.cpp, test/testobsoletefunctions.cpp: 
  1089
+	Refactorized CheckObsoleteFunctions: - Speedup checkobsoletefunctions by using symboldatabase and by not
  1090
+	calling SymbolDatabase::findFunctionByToken() for each function
  1091
+	call.  -> Benchmark (SQlite amalgamation):     CheckObsoleteFunctions::runSimplifiedChecks(): 9s -> 0,016s
  1092
+	    (562%, 4% on entire runtime) - Fixed false negative when passing function result as parameter
  1093
+
  1094
+2012-12-08  PKEuS <philipp.kloke@web.de>
  1095
+
  1096
+	* lib/checkio.cpp, test/testio.cpp: Fixed regression #4368.
  1097
+
  1098
+2012-12-08  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  1099
+
  1100
+	* .travis.yml: Travis: Run 'make test' with compiled patterns
  1101
+
  1102
+2012-12-08  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  1103
+
  1104
+	* tools/matchcompiler.py: matchcompiler: reverted changes so the
  1105
+	'make test' works again
  1106
+
  1107
+2012-12-07  PKEuS <philipp.kloke@web.de>
  1108
+
  1109
+	* lib/checkother.cpp, test/testother.cpp: Fixed false positive when
  1110
+	ternary operator is used: case A&&B?B:A:
  1111
+
  1112
+2012-12-07  PKEuS <philipp.kloke@web.de>
  1113
+
  1114
+	* lib/checkother.cpp, lib/checkother.h, test/testother.cpp: New
  1115
+	check: Find suspicious case labels like 'case A||B:'
  1116
+
  1117
+2012-12-07  PKEuS <philipp.kloke@web.de>
  1118
+
  1119
+	* lib/checkother.cpp, test/testother.cpp: Fixed #4229
  1120
+
  1121
+2012-12-07  PKEuS <philipp.kloke@web.de>
  1122
+
  1123
+	* gui/resultstree.cpp: Fixed recent regression in GUI: multiple
  1124
+	messages with same Id in the same line weren't shown
  1125
+
  1126
+2012-12-07  PKEuS <philipp.kloke@web.de>
  1127
+
  1128
+	* gui/resultstree.cpp: Fixed duplicate rows on windows when file
  1129
+	name case differs (#2041)
  1130
+
  1131
+2012-12-07  Edoardo Prezioso <edo88@email.it>
  1132
+
  1133
+	* gui/cppcheck_de.ts, gui/cppcheck_es.ts, gui/cppcheck_fi.ts,
  1134
+	gui/cppcheck_it.ts, gui/cppcheck_ja.ts, gui/cppcheck_nl.ts,
  1135
+	gui/cppcheck_ru.ts, gui/cppcheck_sr.ts, gui/cppcheck_sv.ts,
  1136
+	lib/checkunusedvar.cpp, test/testunusedvar.cpp: Run astyle and
  1137
+	update the translation files.  I believe we need a hook script because else everytime we change a
  1138
+	file we have to make a new commit to fix the discrepancies problems.
  1139
+
  1140
+2012-12-06  Frank Zingsheim <f.zingsheim@gmx.de>
  1141
+
  1142
+	* gui/mainwindow.cpp: Revert "Support for older Qt versions which do
  1143
+	not support "setPlaceholderText"" This reverts commit 9784a426f4931f4ffeb7c320920a2c4cb47e6e8b.  Support for older Qt versions is not desired.  See
  1144
+	https://github.com/danmar/cppcheck/pull/31
  1145
+
  1146
+2012-12-06  PKEuS <philipp.kloke@web.de>
  1147
+
  1148
+	* test/testbufferoverrun.cpp, test/testclass.cpp,
  1149
+	test/testconstructors.cpp, test/testmemleak.cpp,
  1150
+	test/testnullpointer.cpp, test/testother.cpp,
  1151
+	test/testsimplifytokens.cpp, test/teststl.cpp,
  1152
+	test/testtokenize.cpp, test/testuninitvar.cpp: Unit test cleanup:
  1153
+	Removed some empty lines and whitespaces before \n.
  1154
+
  1155
+2012-12-06  PKEuS <philipp.kloke@web.de>
  1156
+
  1157
+	* gui/main.ui, gui/settings.ui, gui/stats.ui: Removed some more
  1158
+	nested redundant QHBoxLayout/QVBoxLayout/QWidget were it is safe to
  1159
+	remove them.
  1160
+
  1161
+2012-12-06  PKEuS <philipp.kloke@web.de>
  1162
+
  1163
+	* gui/cppcheck_de.ts: Updated german translation
  1164
+
  1165
+2012-12-05  Robert Reif <reif@earthlink.net>
  1166
+
  1167
+	* lib/symboldatabase.cpp, lib/symboldatabase.h, test/testclass.cpp: 
  1168
+	Fixed #4386 (False positive: ctor not detected)
  1169
+
  1170
+2012-12-05  Frank Zingsheim <f.zingsheim@gmx.de>
  1171
+
  1172
+	* lib/checkunusedvar.cpp: Style change: Fixed #4369 (false positive:
  1173
+	Variable 'i' is assigned a value that is never used) based on
  1174
+	aebdb3769fc0c3606480116202c9fbf542e8347f due to comment in
  1175
+
  1176
+	https://github.com/danmar/cppcheck/commit/aebdb3769fc0c3606480116202c9fbf542e8347f
  1177
+
  1178
+2012-12-04  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  1179
+
  1180
+	* .travis.yml: Reverted last revert again.. still not working
  1181
+
  1182
+2012-12-04  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  1183
+
  1184
+	* .travis.yml: Revert "Reverted travis update. It doesn't work for
  1185
+	some reason." This reverts commit 301a5527f5af99609e638e9a4cc7963d243e359c.
  1186
+
  1187
+2012-12-04  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  1188
+
  1189
+	* tools/matchcompiler.py: matchcompiler: fixed hang. don't know why
  1190
+	it hangs.
  1191
+
  1192
+2012-12-04  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  1193
+
  1194
+	* .travis.yml: Reverted travis update. It doesn't work for some
  1195
+	reason.
  1196
+
  1197
+2012-12-04  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  1198
+
  1199
+	* .travis.yml: Travis: Add testing of matchcompiler
  1200
+
  1201
+2012-12-04  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  1202
+
  1203
+	* tools/matchcompiler.py: matchcompiler: added some selftests for
  1204
+	findMatchPattern
  1205
+
  1206
+2012-12-04  Frank Zingsheim <f.zingsheim@gmx.de>
  1207
+
  1208
+	* gui/mainwindow.cpp: Support for older Qt versions which do not
  1209
+	support "setPlaceholderText"
  1210
+
  1211
+2012-12-04  Frank Zingsheim <f.zingsheim@gmx.de>
  1212
+
  1213
+	* lib/checkunusedvar.cpp, lib/checkunusedvar.h,
  1214
+	test/testunusedvar.cpp: Fixed #4369 (false positive: Variable 'i' is
  1215
+	assigned a value that is never used)
  1216
+
  1217
+2012-12-03  Frank Zingsheim <f.zingsheim@gmx.de>
  1218
+
  1219
+	* test/testunusedvar.cpp: Missing semicolon in "do {} while();"
  1220
+	tests of testunusedvar.cpp (#4180)
  1221
+
  1222
+2012-12-03  Daniel Marjamäki <daniel.marjamaki@gmail.com>
  1223
+
  1224
+	* lib/tokenize.cpp, test/testtokenize.cpp: Fixed #4277
  1225
+	(duplicateExpression finds false positive for floats in a union as a
  1226
+	member of a class)
  1227
+
  1228
+2012-12-02  XhmikosR <xhmikosr@users.sourceforge.net>
  1229
+
  1230
+	* htdocs/demo/index.php: htdocs/demo/index.php: fix typo
  1231
+
  1232
+2012-11-30  XhmikosR <xhmikosr@users.sourceforge.net>
  1233
+
  1234
+	* htdocs/.htaccess: update .htaccess to the latest html5 boilerplate
  1235
+	git
  1236
+
  1237
+2012-11-29  XhmikosR <xhmikosr@users.sourceforge.net>
  1238
+