src/tools/moc/moc.h
changeset 30 5dc02b23752f
parent 19 fcece45ef507
child 37 758a864f9613
--- a/src/tools/moc/moc.h	Wed Jun 23 19:07:03 2010 +0300
+++ b/src/tools/moc/moc.h	Tue Jul 06 15:10:48 2010 +0300
@@ -55,7 +55,7 @@
 
 struct Type
 {
-    enum ReferenceType { NoReference, Reference, Pointer };
+    enum ReferenceType { NoReference, Reference, RValueReference, Pointer };
 
     inline Type() : isVolatile(false), isScoped(false), firstToken(NOTOKEN), referenceType(NoReference) {}
     inline explicit Type(const QByteArray &_name) : name(_name), isVolatile(false), isScoped(false), firstToken(NOTOKEN), referenceType(NoReference) {}
@@ -242,8 +242,11 @@
 
 inline QByteArray noRef(const QByteArray &type)
 {
-    if (type.endsWith('&'))
+    if (type.endsWith('&')) {
+        if (type.endsWith("&&"))
+            return type.left(type.length()-2);
         return type.left(type.length()-1);
+    }
     return type;
 }