diff --git a/tests/manual/cppquickfix/completeswitchcasestatement.cpp b/tests/manual/cppquickfix/completeswitchcasestatement.cpp new file mode 100644 index 0000000000000000000000000000000000000000..2ddf307315a5c19ac5d512e9674861beb3115907 --- /dev/null +++ b/tests/manual/cppquickfix/completeswitchcasestatement.cpp @@ -0,0 +1,56 @@ +enum Types { + TypeA, + TypeC, + TypeB, + TypeD, + TypeE = TypeD +}; + +int main() +{ + int j; + Types t = TypeA; + Types t2 = TypeB; + bool b = true; + enum { foo, bla } i; + + // all handled, don't activate + switch (t) { + case TypeA: + case TypeB: + case TypeC: + case TypeD: + case TypeE: + ; + } + + // TypeD must still be added for the outer switch + switch (t) { + case TypeA: + switch (t2) { + case TypeD: ; + default: ; + } + break; + case TypeB: + case TypeE: + break; + default: + ; + } + + // Resolve type for expressions as switch condition + switch (b ? t : t2) { + case TypeA:; + } + + // Not a named type + switch (i) { + case bla: + ; + } + + // ignore pathological case that doesn't have a compound statement + switch (i) + case foo: ; +} diff --git a/tests/manual/cppquickfix/convertnumericliteral.cpp b/tests/manual/cppquickfix/convertnumericliteral.cpp new file mode 100644 index 0000000000000000000000000000000000000000..6c1a27a2e489c449b657e3e08afae05a821bade2 --- /dev/null +++ b/tests/manual/cppquickfix/convertnumericliteral.cpp @@ -0,0 +1,21 @@ +int main() +{ + // standard case + 199; + 074; + 0x856A; + // with type specifier + 199L; + 074L; + 0xFA0Bu; + // uppercase X + 0X856A; + // negativ values + -199; + -017; + // not integer, do nothing + 298.3; + // ignore invalid octal + 0783; + 0; // border case, only hex<->decimal +}