src/tools/moc/moc.h
branchGCC_SURGE
changeset 31 5daf16870df6
parent 30 5dc02b23752f
child 37 758a864f9613
--- a/src/tools/moc/moc.h	Mon Jun 21 22:38:13 2010 +0100
+++ b/src/tools/moc/moc.h	Thu Jul 22 16:41:55 2010 +0100
@@ -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;
 }