diff --git a/tests/auto/cplusplus/typeprettyprinter/tst_typeprettyprinter.cpp b/tests/auto/cplusplus/typeprettyprinter/tst_typeprettyprinter.cpp index acb11eddaf01d8486909c9bd23ac4be96ee5fba8..50ba94ddbe9d7a03ddfa96a2b5d6062e266d1ed1 100644 --- a/tests/auto/cplusplus/typeprettyprinter/tst_typeprettyprinter.cpp +++ b/tests/auto/cplusplus/typeprettyprinter/tst_typeprettyprinter.cpp @@ -76,6 +76,9 @@ Argument *arg(const QString &name, const FullySpecifiedType &ty) FullySpecifiedType voidTy() { return FullySpecifiedType(new VoidType); } +FullySpecifiedType intTy() +{ return FullySpecifiedType(new IntegerType(IntegerType::Int)); } + FullySpecifiedType fnTy(const QString &name, const FullySpecifiedType &ret) { Function *fn = new Function(unit, 0, nameId(name)); @@ -181,6 +184,17 @@ void tst_TypePrettyPrinter::basic_data() addRow(ref(arr(arr(voidTy()))), "void (&)[][]"); addRow(ref(arr(ref(voidTy()))), "void &(&)[]"); addRow(arr(ref(arr(voidTy()))), "void (&[])[]"); + + // rvalue references + addRow(rref(voidTy()), "void &&"); + addRow(rref(cnst(voidTy())), "const void &&"); + + addRow(rref(arr(voidTy())), "void (&&)[]"); + addRow(rref(arr(arr(voidTy()))), "void (&&)[][]"); + + // simple functions + addRow(ptr(fnTy("foo", voidTy(), intTy())), "void (*foo)(int)", "foo"); + addRow(ptr(fnTy("foo", voidTy(), ptr(voidTy()))), "void (*foo)(void *)", "foo"); } void tst_TypePrettyPrinter::basic()