Merge branch 'master' of https://github.com/wenns/sonar-cxx
Ignore generic code in useless parentheses check.

Macro often need extra parenthesis to ensure evaluation will always be performed as expected,
for all kinds of arguments that may be provided. This causes lots of extra warnings, which cannot
be removed, so it is best to ignore these issues in generated code.
Count TAB characters properly in TooLongLineCheck.

The TooLongLineCheck now has a tab width setting, which allows to properly compute the length of the line when TAB characters are used.
Experimental Travis CI config
Merge branch 'master' of https://github.com/wenns/sonar-cxx
cleanup (mostly removing traling whitespace)
Document the CI move to Travis
Merge branch 'master' of https://github.com/wenns/sonar-cxx
Prepare next development iteration; extend CI checks by the smoketests
Fix the path to the setup script
Merge pull request #233 from Typz/tabLineLength

Count TAB characters properly in TooLongLineCheck.
Merge pull request #231 from Typz/parenthesisInMacros

Ignore generic code in useless parentheses check.
try to fix dependency analyser warnings
Merge branch 'master' of https://github.com/wenns/sonar-cxx
remove duplicated common-rules declaration
Allow one-line case: break; constructs.

Ignore the 'break' statement if it is on the same line as the case:/default: label, to support code which looks like this:

switch(i) {
case 0: action0(); break;
case 1: action1(); break;
default: defaultAction(); break;
}
Merge pull request #230 from Typz/casebreak

Allow one-line case: break; constructs.
Support C99 designed initializers.

Standard C89 and C++ require the elements of an initializer to appear in a fixed order, the same as the order of the elements in the array or structure being initialized.

In ISO C99 you can give the elements in any order, specifying the array indices or structure field names they apply to.
To specify an array index, write `[index] =' before the element value. For example,

     int a[6] = { [4] = 29, [2] = 15 };

Gcc also adds an extension to initialize a range of elements to the same value, by writing `[first ... last] = value'. For example,

     int widths[] = { [0 ... 9] = 1, [10 ... 99] = 2, [100] = 3 };

In a structure initializer, specify the name of a field to initialize with `.fieldname =' before the element value. For example,

     struct point { int x, y; };
     struct point p = { .y = yvalue, .x = xvalue };
Support GCC case range extension.

With GCC, you can specify a range of consecutive values in a single case label, like this:

     case low ... high:

This has the same effect as the proper number of individual case labels, one for each integer value from low to high, inclusive.
Add metrics to count number of violations of each type.