diff --git a/tests/manual/cppmodelmanager/codemodel/binder.cpp b/tests/manual/cppmodelmanager/codemodel/binder.cpp
deleted file mode 100644
index 9fd2f641dc4d7b075ec3f8a04117e1bd0a3a0039..0000000000000000000000000000000000000000
--- a/tests/manual/cppmodelmanager/codemodel/binder.cpp
+++ /dev/null
@@ -1,866 +0,0 @@
-/***************************************************************************
-**
-** This file is part of Qt Creator
-**
-** Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
-**
-** Contact:  Qt Software Information (qt-info@nokia.com)
-**
-**
-** Non-Open Source Usage
-**
-** Licensees may use this file in accordance with the Qt Beta Version
-** License Agreement, Agreement version 2.2 provided with the Software or,
-** alternatively, in accordance with the terms contained in a written
-** agreement between you and Nokia.
-**
-** GNU General Public License Usage
-**
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License versions 2.0 or 3.0 as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL included in the packaging
-** of this file.  Please review the following information to ensure GNU
-** General Public Licensing requirements will be met:
-**
-** http://www.fsf.org/licensing/licenses/info/GPLv2.html and
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt GPL Exception
-** version 1.2, included in the file GPL_EXCEPTION.txt in this package.
-**
-***************************************************************************/
-/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
-
-/* This file is part of KDevelop
-Copyright (C) 2002-2005 Roberto Raggi <roberto@kdevelop.org>
-Copyright (C) 2005 Trolltech AS
-
-This library is free software; you can redistribute it and/or
-modify it under the terms of the GNU Library General Public
-License version 2 as published by the Free Software Foundation.
-
-This library is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-Library General Public License for more details.
-
-You should have received a copy of the GNU Library General Public License
-along with this library; see the file COPYING.LIB.  If not, write to
-the Free Software Foundation, Inc., 51 Franklin Steet, Fifth Floor,
-Boston, MA 02110-1301, USA.
-*/
-
-#include "binder.h"
-#include "lexer.h"
-#include "control.h"
-#include "symbol.h"
-#include "codemodel_finder.h"
-#include "class_compiler.h"
-#include "compiler_utils.h"
-#include "tokens.h"
-#include "dumptree.h"
-
-#include <iostream>
-
-#include <qdebug.h>
-
-Binder::Binder(CppCodeModel *__model, LocationManager &__location, Control *__control)
-: _M_model(__model),
-_M_location(__location),
-_M_token_stream(&_M_location.token_stream),
-_M_control(__control),
-_M_current_function_type(CodeModel::Normal),
-type_cc(this),
-name_cc(this),
-decl_cc(this)
-{
-    _M_current_file = 0;
-    _M_current_namespace = 0;
-    _M_current_class = 0;
-    _M_current_function = 0;
-    _M_current_enum = 0;
-}
-
-Binder::~Binder()
-{
-}
-
-void Binder::run(AST *node, const QString &filename)
-{
-    _M_current_access = CodeModel::Public;
-    if (_M_current_file = model()->fileItem(filename))
-        visit(node);
-}
-
-ScopeModelItem *Binder::findScope(const QString &name) const
-{
-    return _M_known_scopes.value(name, 0);
-}
-
-ScopeModelItem *Binder::resolveScope(NameAST *id, ScopeModelItem *scope)
-{
-    Q_ASSERT(scope != 0);
-
-    bool foundScope;
-    CodeModelFinder finder(model(), this);
-    QString symbolScopeName = finder.resolveScope(id, scope, &foundScope);
-    if (!foundScope) {
-        name_cc.run(id);
-        std::cerr << "** WARNING scope not found for symbol:"
-            << qPrintable(name_cc.qualifiedName()) << std::endl;
-        return 0;
-    }
-
-    if (symbolScopeName.isEmpty())
-        return scope;
-
-    ScopeModelItem *symbolScope = findScope(symbolScopeName);
-
-    qDebug() << "Resolving: " << symbolScopeName;
-    qDebug() << " Current File: " << scope->file()->name();
-
-    if (symbolScope)
-        qDebug() << " Found in file: " << symbolScope->file()->name();
-
-    if (!symbolScope || symbolScope->file() != scope->file()) {
-        CppFileModelItem *file = model_cast<CppFileModelItem *>(scope->file());
-        symbolScope = file->findExternalScope(symbolScopeName);
-        qDebug() << " Create as external reference";
-        if (!symbolScope) {
-            symbolScope = new ScopeModelItem(_M_model);
-            symbolScope->setName(symbolScopeName);
-            file->addExternalScope(symbolScope);
-        }
-    }
-
-    return symbolScope;
-}
-
-ScopeModelItem *Binder::currentScope()
-{
-    if (_M_current_class)
-        return _M_current_class;
-    else if (_M_current_namespace)
-        return _M_current_namespace;
-
-    return _M_current_file;
-}
-
-TemplateParameterList Binder::changeTemplateParameters(TemplateParameterList templateParameters)
-{
-    TemplateParameterList old = _M_current_template_parameters;
-    _M_current_template_parameters = templateParameters;
-    return old;
-}
-
-CodeModel::FunctionType Binder::changeCurrentFunctionType(CodeModel::FunctionType functionType)
-{
-    CodeModel::FunctionType old = _M_current_function_type;
-    _M_current_function_type = functionType;
-    return old;
-}
-
-CodeModel::AccessPolicy Binder::changeCurrentAccess(CodeModel::AccessPolicy accessPolicy)
-{
-    CodeModel::AccessPolicy old = _M_current_access;
-    _M_current_access = accessPolicy;
-    return old;
-}
-
-NamespaceModelItem *Binder::changeCurrentNamespace(NamespaceModelItem *item)
-{
-    NamespaceModelItem *old = _M_current_namespace;
-    _M_current_namespace = item;
-    return old;
-}
-
-CppClassModelItem *Binder::changeCurrentClass(CppClassModelItem *item)
-{
-    CppClassModelItem *old = _M_current_class;
-    _M_current_class = item;
-    return old;
-}
-
-CppFunctionDefinitionModelItem *Binder::changeCurrentFunction(CppFunctionDefinitionModelItem *item)
-{
-    CppFunctionDefinitionModelItem *old = _M_current_function;
-    _M_current_function = item;
-    return old;
-}
-
-int Binder::decode_token(std::size_t index) const
-{
-    return _M_token_stream->kind(index);
-}
-
-CodeModel::AccessPolicy Binder::decode_access_policy(std::size_t index) const
-{
-    switch (decode_token(index))
-    {
-    case Token_class:
-        return CodeModel::Private;
-
-    case Token_struct:
-    case Token_union:
-        return CodeModel::Public;
-
-    default:
-        return CodeModel::Public;
-    }
-}
-
-CodeModel::ClassType Binder::decode_class_type(std::size_t index) const
-{
-    switch (decode_token(index))
-    {
-    case Token_class:
-        return CodeModel::Class;
-    case Token_struct:
-        return CodeModel::Struct;
-    case Token_union:
-        return CodeModel::Union;
-    default:
-        std::cerr << "** WARNING unrecognized class type" << std::endl;
-    }
-    return CodeModel::Class;
-}
-
-const NameSymbol *Binder::decode_symbol(std::size_t index) const
-{
-    return _M_token_stream->symbol(index);
-}
-
-void Binder::visitAccessSpecifier(AccessSpecifierAST *node)
-{
-    const ListNode<std::size_t> *it =  node->specs;
-    if (it == 0)
-        return;
-
-    it = it->toFront();
-    const ListNode<std::size_t> *end = it;
-
-    do
-    {
-        switch (decode_token(it->element))
-        {
-        default:
-            break;
-
-        case Token_public:
-            changeCurrentAccess(CodeModel::Public);
-            changeCurrentFunctionType(CodeModel::Normal);
-            break;
-        case Token_protected:
-            changeCurrentAccess(CodeModel::Protected);
-            changeCurrentFunctionType(CodeModel::Normal);
-            break;
-        case Token_private:
-            changeCurrentAccess(CodeModel::Private);
-            changeCurrentFunctionType(CodeModel::Normal);
-            break;
-        case Token_signals:
-            changeCurrentAccess(CodeModel::Protected);
-            changeCurrentFunctionType(CodeModel::Signal);
-            break;
-        case Token_slots:
-            changeCurrentFunctionType(CodeModel::Slot);
-            break;
-        }
-        it = it->next;
-    }
-    while (it != end);
-}
-
-void Binder::visitSimpleDeclaration(SimpleDeclarationAST *node)
-{
-    visit(node->type_specifier);
-
-    if (const ListNode<InitDeclaratorAST*> *it = node->init_declarators)
-    {
-        it = it->toFront();
-        const ListNode<InitDeclaratorAST*> *end = it;
-        do
-        {
-            InitDeclaratorAST *init_declarator = it->element;
-            declare_symbol(node, init_declarator);
-            it = it->next;
-        }
-        while (it != end);
-    }
-}
-
-void Binder::declare_symbol(SimpleDeclarationAST *node, InitDeclaratorAST *init_declarator)
-{
-    DeclaratorAST *declarator = init_declarator->declarator;
-
-    while (declarator && declarator->sub_declarator)
-        declarator = declarator->sub_declarator;
-
-    NameAST *id = declarator->id;
-    if (! declarator->id)
-    {
-        std::cerr << "** WARNING expected a declarator id" << std::endl;
-        return;
-    }
-
-    decl_cc.run(declarator);
-
-    if (decl_cc.isFunction())
-    {
-        name_cc.run(id->unqualified_name);
-
-        FunctionModelItem *fun = new FunctionModelItem(model());
-        updateFileAndItemPosition (fun, node);
-
-        ScopeModelItem *symbolScope = resolveScope(id, currentScope());
-        if (!symbolScope) {
-            delete fun;
-            return;
-        }
-
-        fun->setAccessPolicy(_M_current_access);
-        fun->setFunctionType(_M_current_function_type);
-        fun->setName(name_cc.qualifiedName());
-        fun->setAbstract(init_declarator->initializer != 0);
-        fun->setConstant(declarator->fun_cv != 0);
-        fun->setTemplateParameters(copyTemplateParameters(_M_current_template_parameters));
-        applyStorageSpecifiers(node->storage_specifiers, fun);
-        applyFunctionSpecifiers(node->function_specifiers, fun);
-
-        // build the type
-        TypeInfo *typeInfo = CompilerUtils::typeDescription(node->type_specifier,
-            declarator,
-            this);
-
-        fun->setType(typeInfo);
-
-
-        fun->setVariadics (decl_cc.isVariadics ());
-
-        // ... and the signature
-        foreach (DeclaratorCompiler::Parameter p, decl_cc.parameters())
-        {
-            CppArgumentModelItem *arg = new CppArgumentModelItem(model());
-            arg->setType(p.type);
-            arg->setName(p.name);
-            arg->setDefaultValue(p.defaultValue);
-            if (p.defaultValue)
-                arg->setDefaultValueExpression(p.defaultValueExpression);
-            fun->addArgument(arg);
-        }
-
-        fun->setScope(symbolScope->qualifiedName());
-        symbolScope->addFunction(fun);
-    }
-    else
-    {
-        CppVariableModelItem *var = new CppVariableModelItem(model());
-        updateFileAndItemPosition (var, node);
-
-        ScopeModelItem *symbolScope = resolveScope(id, currentScope());
-        if (!symbolScope) {
-            delete var;
-            return;
-        }
-
-        var->setTemplateParameters(copyTemplateParameters(_M_current_template_parameters));
-        var->setAccessPolicy(_M_current_access);
-        name_cc.run(id->unqualified_name);
-        var->setName(name_cc.qualifiedName());
-        TypeInfo *typeInfo = CompilerUtils::typeDescription(node->type_specifier,
-            declarator,
-            this);
-        if (declarator != init_declarator->declarator
-            && init_declarator->declarator->parameter_declaration_clause != 0)
-        {
-            typeInfo->setFunctionPointer (true);
-            decl_cc.run (init_declarator->declarator);
-            foreach (DeclaratorCompiler::Parameter p, decl_cc.parameters())
-                typeInfo->addArgument(p.type);
-        }
-
-        var->setType(typeInfo);
-        applyStorageSpecifiers(node->storage_specifiers, var);
-
-        var->setScope(symbolScope->qualifiedName());
-        symbolScope->addVariable(var);
-    }
-}
-
-void Binder::visitFunctionDefinition(FunctionDefinitionAST *node)
-{
-    Q_ASSERT(node->init_declarator != 0);
-
-    InitDeclaratorAST *init_declarator = node->init_declarator;
-    DeclaratorAST *declarator = init_declarator->declarator;
-
-    decl_cc.run(declarator);
-
-    Q_ASSERT(! decl_cc.id().isEmpty());
-
-    CppFunctionDefinitionModelItem *
-        old = changeCurrentFunction(new CppFunctionDefinitionModelItem(_M_model));
-    updateFileAndItemPosition (_M_current_function, node);
-
-    ScopeModelItem *functionScope = resolveScope(declarator->id, currentScope());
-    if (! functionScope) {
-        delete _M_current_function;
-        changeCurrentFunction(old);
-        return;
-    }
-
-    _M_current_function->setScope(functionScope->qualifiedName());
-
-    Q_ASSERT(declarator->id->unqualified_name != 0);
-    name_cc.run(declarator->id->unqualified_name);
-    QString unqualified_name = name_cc.qualifiedName();
-
-    _M_current_function->setName(unqualified_name);
-    TypeInfo *tmp_type = CompilerUtils::typeDescription(node->type_specifier,
-        declarator, this);
-
-    _M_current_function->setType(tmp_type);
-    _M_current_function->setAccessPolicy(_M_current_access);
-    _M_current_function->setFunctionType(_M_current_function_type);
-    _M_current_function->setConstant(declarator->fun_cv != 0);
-    _M_current_function->setTemplateParameters(copyTemplateParameters(_M_current_template_parameters));
-
-    applyStorageSpecifiers(node->storage_specifiers,
-        _M_current_function);
-    applyFunctionSpecifiers(node->function_specifiers,
-        _M_current_function);
-
-    _M_current_function->setVariadics (decl_cc.isVariadics ());
-
-    foreach (DeclaratorCompiler::Parameter p, decl_cc.parameters())
-    {
-        CppArgumentModelItem *arg = new CppArgumentModelItem(model());
-        arg->setType(p.type);
-        arg->setName(p.name);
-        arg->setDefaultValue(p.defaultValue);
-        _M_current_function->addArgument(arg);
-    }
-
-    functionScope->addFunctionDefinition(_M_current_function);
-    changeCurrentFunction(old);
-}
-
-void Binder::visitTemplateDeclaration(TemplateDeclarationAST *node)
-{
-    const ListNode<TemplateParameterAST*> *it = node->template_parameters;
-    if (it == 0)
-        return;
-
-    TemplateParameterList savedTemplateParameters = changeTemplateParameters(TemplateParameterList());
-
-    it = it->toFront();
-    const ListNode<TemplateParameterAST*> *end = it;
-
-    do
-    {
-        TemplateParameterAST *parameter = it->element;
-        TypeParameterAST *type_parameter = parameter->type_parameter;
-        if (! type_parameter)
-        {
-            std::cerr << "** WARNING template declaration not supported ``";
-            Token const &tk = _M_token_stream->token ((int) node->start_token);
-            Token const &end_tk = _M_token_stream->token ((int) node->declaration->start_token);
-
-            std::cerr << std::string (&tk.text[tk.position], (end_tk.position) - tk.position) << "''"
-                << std::endl << std::endl;
-
-            qDeleteAll(_M_current_template_parameters);
-            changeTemplateParameters(savedTemplateParameters);
-            return;
-        }
-        assert(type_parameter != 0);
-
-        int tk = decode_token(type_parameter->type);
-        if (tk != Token_typename && tk != Token_class)
-        {
-            std::cerr << "** WARNING template declaration not supported ``";
-            Token const &tk = _M_token_stream->token ((int) node->start_token);
-            Token const &end_tk = _M_token_stream->token ((int) node->declaration->start_token);
-
-            std::cerr << std::string (&tk.text[tk.position], (end_tk.position) - tk.position) << "''"
-                << std::endl << std::endl;
-
-            qDeleteAll(_M_current_template_parameters);
-            changeTemplateParameters(savedTemplateParameters);
-            return;
-        }
-        assert(tk == Token_typename || tk == Token_class);
-
-        name_cc.run(type_parameter->name);
-
-        CppTemplateParameterModelItem *p = new CppTemplateParameterModelItem(model());
-        p->setName(name_cc.qualifiedName());
-        _M_current_template_parameters.append(p);
-        it = it->next;
-    }
-    while (it != end);
-
-    visit(node->declaration);
-
-    qDeleteAll(_M_current_template_parameters);
-    changeTemplateParameters(savedTemplateParameters);
-}
-
-void Binder::visitTypedef(TypedefAST *node)
-{
-    const ListNode<InitDeclaratorAST*> *it = node->init_declarators;
-    if (it == 0)
-        return;
-
-    it = it->toFront();
-    const ListNode<InitDeclaratorAST*> *end = it;
-
-    do
-    {
-        InitDeclaratorAST *init_declarator = it->element;
-        it = it->next;
-
-        Q_ASSERT(init_declarator->declarator != 0);
-
-        // the name
-        decl_cc.run (init_declarator->declarator);
-        QString alias_name = decl_cc.id ();
-
-        if (alias_name.isEmpty ())
-        {
-            std::cerr << "** WARNING anonymous typedef not supported! ``";
-            Token const &tk = _M_token_stream->token ((int) node->start_token);
-            Token const &end_tk = _M_token_stream->token ((int) node->end_token);
-
-            std::cerr << std::string (&tk.text[tk.position], end_tk.position - tk.position) << "''"
-                << std::endl << std::endl;
-            continue;
-        }
-
-        // build the type
-        TypeInfo *typeInfo = CompilerUtils::typeDescription (node->type_specifier,
-            init_declarator->declarator,
-            this);
-        DeclaratorAST *decl = init_declarator->declarator;
-        while (decl && decl->sub_declarator)
-            decl = decl->sub_declarator;
-
-        if (decl != init_declarator->declarator
-            && init_declarator->declarator->parameter_declaration_clause != 0)
-        {
-            typeInfo->setFunctionPointer (true);
-            decl_cc.run (init_declarator->declarator);
-            foreach (DeclaratorCompiler::Parameter p, decl_cc.parameters())
-                typeInfo->addArgument(p.type);
-        }
-
-        DeclaratorAST *declarator = init_declarator->declarator;
-
-        CppTypeAliasModelItem *typeAlias = new CppTypeAliasModelItem(model());
-        updateFileAndItemPosition (typeAlias, node);
-
-        ScopeModelItem *typedefScope = resolveScope(declarator->id, currentScope());
-        if (!typedefScope) {
-            delete typeAlias;
-            return;
-        }
-
-        typeAlias->setName (alias_name);
-        typeAlias->setType (typeInfo);
-        typeAlias->setScope (typedefScope->qualifiedName());
-        typedefScope->addTypeAlias (typeAlias);
-    }
-    while (it != end);
-}
-
-void Binder::visitNamespace(NamespaceAST *node)
-{
-    bool anonymous = (node->namespace_name == 0);
-
-    ScopeModelItem *scope = 0;
-    NamespaceModelItem *old = 0;
-    if (! anonymous)
-    {
-        // update the file if needed
-        updateFileAndItemPosition (0, node);
-        scope = currentScope();
-
-        QString name = decode_symbol(node->namespace_name)->as_string();
-
-        QString qualified_name = scope->qualifiedName();
-        if (!qualified_name.isEmpty())
-            qualified_name += QLatin1String("::");
-        qualified_name += name;
-        NamespaceModelItem *ns = model_cast<NamespaceModelItem *>(findScope(qualified_name));
-        if (ns && ns->file() != scope->file()) {
-            qDebug() << ns->file()->name() << " :: " << scope->file()->name();
-            ns = 0; // we need a separate namespaces for different files
-        }
-
-        if (!ns)
-        {
-            ns = new NamespaceModelItem(_M_model);
-            updateFileAndItemPosition (ns, node);
-            
-            _M_known_scopes.insert(qualified_name, ns);
-            ns->setName(name);
-            ns->setScope(scope->qualifiedName());
-        }
-        old = changeCurrentNamespace(ns);
-    }
-
-    DefaultVisitor::visitNamespace(node);
-
-    if (! anonymous)
-    {
-        Q_ASSERT(scope->kind() == CodeModelItem::Kind_Namespace
-            || scope->kind() == CodeModelItem::Kind_File);
-
-        if (NamespaceModelItem *ns = model_cast<NamespaceModelItem *>(scope))
-            ns->addNamespace(_M_current_namespace);
-
-        changeCurrentNamespace(old);
-    }
-}
-
-void Binder::visitClassSpecifier(ClassSpecifierAST *node)
-{
-    ClassCompiler class_cc(this);
-    class_cc.run(node);
-
-    if (class_cc.name().isEmpty())
-    {
-        // anonymous not supported
-        return;
-    }
-
-    Q_ASSERT(node->name != 0 && node->name->unqualified_name != 0);
-
-
-    CppClassModelItem *class_item = new CppClassModelItem(_M_model);
-    updateFileAndItemPosition (class_item, node);
-    ScopeModelItem *scope = currentScope();
-    CppClassModelItem *old = changeCurrentClass(class_item);
-
-    _M_current_class->setName(class_cc.name());
-    _M_current_class->setBaseClasses(class_cc.baseClasses());
-    _M_current_class->setClassType(decode_class_type(node->class_key));
-    _M_current_class->setTemplateParameters(copyTemplateParameters(_M_current_template_parameters));
-
-    QString name = _M_current_class->name();
-    if (!_M_current_template_parameters.isEmpty())
-    {
-        name += "<";
-        for (int i = 0; i<_M_current_template_parameters.size(); ++i)
-        {
-            if (i != 0)
-                name += ",";
-
-            name += _M_current_template_parameters.at(i)->name();
-        }
-
-        name += ">";
-        _M_current_class->setName(name);
-    }
-
-    CodeModel::AccessPolicy oldAccessPolicy = changeCurrentAccess(decode_access_policy(node->class_key));
-    CodeModel::FunctionType oldFunctionType = changeCurrentFunctionType(CodeModel::Normal);
-
-    QString qualifiedname = scope->qualifiedName();
-    _M_current_class->setScope(qualifiedname);
-    if (!qualifiedname.isEmpty())
-        qualifiedname += QLatin1String("::");
-    qualifiedname += name;
-    _M_known_scopes.insert(qualifiedname, _M_current_class);
-
-    scope->addClass(_M_current_class);
-
-    name_cc.run(node->name->unqualified_name);
-
-    visitNodes(this, node->member_specs);
-
-    changeCurrentClass(old);
-    changeCurrentAccess(oldAccessPolicy);
-    changeCurrentFunctionType(oldFunctionType);
-}
-
-void Binder::visitLinkageSpecification(LinkageSpecificationAST *node)
-{
-    DefaultVisitor::visitLinkageSpecification(node);
-}
-
-void Binder::visitUsing(UsingAST *node)
-{
-    DefaultVisitor::visitUsing(node);
-}
-
-void Binder::visitEnumSpecifier(EnumSpecifierAST *node)
-{
-    CodeModelFinder finder(model(), this);
-
-    name_cc.run(node->name);
-    QString name = name_cc.qualifiedName();
-
-    if (name.isEmpty())
-    {
-        // anonymous enum
-        static int N = 0;
-        name = QLatin1String("$$enum_");
-        name += QString::number(++N);
-    }
-
-    _M_current_enum = new CppEnumModelItem(model());
-
-    updateFileAndItemPosition (_M_current_enum, node);
-    ScopeModelItem *enumScope = resolveScope(node->name, currentScope());
-    if (!enumScope) {
-        delete _M_current_enum;
-        _M_current_enum = 0;
-        return;
-    }
-
-
-    _M_current_enum->setAccessPolicy(_M_current_access);
-    _M_current_enum->setName(name);
-    _M_current_enum->setScope(enumScope->qualifiedName());
-
-    enumScope->addEnum(_M_current_enum);
-
-    DefaultVisitor::visitEnumSpecifier(node);
-
-    _M_current_enum = 0;
-}
-
-void Binder::visitEnumerator(EnumeratorAST *node)
-{
-    Q_ASSERT(_M_current_enum != 0);
-    CppEnumeratorModelItem *e = new CppEnumeratorModelItem(model());
-    updateFileAndItemPosition (e, node);
-    e->setName(decode_symbol(node->id)->as_string());
-
-    if (ExpressionAST *expr = node->expression)
-    {
-        const Token &start_token = _M_token_stream->token((int) expr->start_token);
-        const Token &end_token = _M_token_stream->token((int) expr->end_token);
-
-        e->setValue(QString::fromUtf8(&start_token.text[start_token.position],
-            (int) (end_token.position - start_token.position)).trimmed());
-    }
-
-    _M_current_enum->addEnumerator(e);
-}
-
-void Binder::visitUsingDirective(UsingDirectiveAST *node)
-{
-    DefaultVisitor::visitUsingDirective(node);
-}
-
-void Binder::applyStorageSpecifiers(const ListNode<std::size_t> *it, MemberModelItem *item)
-{
-    if (it == 0)
-        return;
-
-    it = it->toFront();
-    const ListNode<std::size_t> *end = it;
-
-    do
-    {
-        switch (decode_token(it->element))
-        {
-        default:
-            break;
-
-        case Token_friend:
-            item->setFriend(true);
-            break;
-        case Token_auto:
-            item->setAuto(true);
-            break;
-        case Token_register:
-            item->setRegister(true);
-            break;
-        case Token_static:
-            item->setStatic(true);
-            break;
-        case Token_extern:
-            item->setExtern(true);
-            break;
-        case Token_mutable:
-            item->setMutable(true);
-            break;
-        }
-        it = it->next;
-    }
-    while (it != end);
-}
-
-void Binder::applyFunctionSpecifiers(const ListNode<std::size_t> *it, FunctionModelItem *item)
-{
-    if (it == 0)
-        return;
-
-    it = it->toFront();
-    const ListNode<std::size_t> *end = it;
-
-    do
-    {
-        switch (decode_token(it->element))
-        {
-        default:
-            break;
-
-        case Token_inline:
-            item->setInline(true);
-            break;
-
-        case Token_virtual:
-            item->setVirtual(true);
-            break;
-
-        case Token_explicit:
-            item->setExplicit(true);
-            break;
-        }
-        it = it->next;
-    }
-    while (it != end);
-}
-
-void Binder::updateFileAndItemPosition(CodeModelItem *item, AST *node)
-{
-    QString filename;
-    int sline, scolumn;
-    int eline, ecolumn;
-
-    assert (node != 0);
-    _M_location.positionAt (_M_token_stream->position(node->start_token), &sline, &scolumn, &filename);
-    _M_location.positionAt (_M_token_stream->position(node->end_token), &eline, &ecolumn, &QString());
-
-    if (!filename.isEmpty() && (!_M_current_file || _M_current_file->name() != filename))
-        _M_current_file = model()->fileItem(filename);
-
-    if (item) {
-        item->setFile(_M_current_file);
-        item->setStartPosition(sline, scolumn);
-        item->setEndPosition(eline, ecolumn);
-    }
-}
-
-TemplateParameterList Binder::copyTemplateParameters(const TemplateParameterList &in) const
-{
-    TemplateParameterList result;
-    foreach(TemplateParameterModelItem *item, in) {
-        CppTemplateParameterModelItem *newitem = 
-            new CppTemplateParameterModelItem(*(model_cast<CppTemplateParameterModelItem *>(item)));
-        if (item->type()) {
-            TypeInfo *type = new TypeInfo();
-            *type = *(item->type());
-            newitem->setType(type);
-        }
-        result.append(newitem);
-    }
-    return result;
-}
-
-// kate: space-indent on; indent-width 2; replace-tabs on;
diff --git a/tests/manual/cppmodelmanager/codemodel/binder.h b/tests/manual/cppmodelmanager/codemodel/binder.h
deleted file mode 100644
index 91a47d9bce33c60ecb3b91fc28897adc8cb58eaa..0000000000000000000000000000000000000000
--- a/tests/manual/cppmodelmanager/codemodel/binder.h
+++ /dev/null
@@ -1,141 +0,0 @@
-/***************************************************************************
-**
-** This file is part of Qt Creator
-**
-** Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
-**
-** Contact:  Qt Software Information (qt-info@nokia.com)
-**
-**
-** Non-Open Source Usage
-**
-** Licensees may use this file in accordance with the Qt Beta Version
-** License Agreement, Agreement version 2.2 provided with the Software or,
-** alternatively, in accordance with the terms contained in a written
-** agreement between you and Nokia.
-**
-** GNU General Public License Usage
-**
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License versions 2.0 or 3.0 as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL included in the packaging
-** of this file.  Please review the following information to ensure GNU
-** General Public Licensing requirements will be met:
-**
-** http://www.fsf.org/licensing/licenses/info/GPLv2.html and
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt GPL Exception
-** version 1.2, included in the file GPL_EXCEPTION.txt in this package.
-**
-***************************************************************************/
-/* This file is part of KDevelop
-    Copyright (C) 2002-2005 Roberto Raggi <roberto@kdevelop.org>
-    Copyright (C) 2005 Trolltech AS
-
-   This library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Library General Public
-   License version 2 as published by the Free Software Foundation.
-
-   This library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Library General Public License for more details.
-
-   You should have received a copy of the GNU Library General Public License
-   along with this library; see the file COPYING.LIB.  If not, write to
-   the Free Software Foundation, Inc., 51 Franklin Steet, Fifth Floor,
-   Boston, MA 02110-1301, USA.
-*/
-
-#ifndef BINDER_H
-#define BINDER_H
-
-#include "default_visitor.h"
-#include "cppcodemodel.h"
-#include "type_compiler.h"
-#include "name_compiler.h"
-#include "declarator_compiler.h"
-
-class TokenStream;
-class LocationManager;
-class Control;
-struct NameSymbol;
-
-class Binder: protected DefaultVisitor
-{
-public:
-  Binder(CppCodeModel *__model, LocationManager &__location, Control *__control = 0);
-  virtual ~Binder();
-
-  inline TokenStream *tokenStream() const { return _M_token_stream; }
-  inline CppCodeModel *model() const { return _M_model; }
-  ScopeModelItem *currentScope();
-
-  void run(AST *node, const QString &filename);
-
-protected:
-  virtual void visitAccessSpecifier(AccessSpecifierAST *);
-  virtual void visitClassSpecifier(ClassSpecifierAST *);
-  virtual void visitEnumSpecifier(EnumSpecifierAST *);
-  virtual void visitEnumerator(EnumeratorAST *);
-  virtual void visitFunctionDefinition(FunctionDefinitionAST *);
-  virtual void visitLinkageSpecification(LinkageSpecificationAST *);
-  virtual void visitNamespace(NamespaceAST *);
-  virtual void visitSimpleDeclaration(SimpleDeclarationAST *);
-  virtual void visitTemplateDeclaration(TemplateDeclarationAST *);
-  virtual void visitTypedef(TypedefAST *);
-  virtual void visitUsing(UsingAST *);
-  virtual void visitUsingDirective(UsingDirectiveAST *);
-
-private:
-  ScopeModelItem *findScope(const QString &name) const;
-  ScopeModelItem *resolveScope(NameAST *id, ScopeModelItem *scope);
-
-  int decode_token(std::size_t index) const;
-  const NameSymbol *decode_symbol(std::size_t index) const;
-  CodeModel::AccessPolicy decode_access_policy(std::size_t index) const;
-  CodeModel::ClassType decode_class_type(std::size_t index) const;
-
-  CodeModel::FunctionType changeCurrentFunctionType(CodeModel::FunctionType functionType);
-  CodeModel::AccessPolicy changeCurrentAccess(CodeModel::AccessPolicy accessPolicy);
-  NamespaceModelItem *changeCurrentNamespace(NamespaceModelItem *item);
-  CppClassModelItem *changeCurrentClass(CppClassModelItem *item);
-  CppFunctionDefinitionModelItem *changeCurrentFunction(CppFunctionDefinitionModelItem *item);
-  TemplateParameterList changeTemplateParameters(TemplateParameterList templateParameters);
-
-  void declare_symbol(SimpleDeclarationAST *node, InitDeclaratorAST *init_declarator);
-
-  void applyStorageSpecifiers(const ListNode<std::size_t> *storage_specifiers, MemberModelItem *item);
-  void applyFunctionSpecifiers(const ListNode<std::size_t> *it, FunctionModelItem *item);
-
-  void updateFileAndItemPosition(CodeModelItem *item, AST *node);
-
-  TemplateParameterList copyTemplateParameters(const TemplateParameterList &in) const;
-
-private:
-  CppCodeModel *_M_model;
-  LocationManager &_M_location;
-  TokenStream *_M_token_stream;
-  Control *_M_control;
-
-  CodeModel::FunctionType _M_current_function_type;
-  CodeModel::AccessPolicy _M_current_access;
-  CppFileModelItem *_M_current_file;
-  NamespaceModelItem *_M_current_namespace;
-  CppClassModelItem *_M_current_class;
-  CppFunctionDefinitionModelItem *_M_current_function;
-  CppEnumModelItem *_M_current_enum;
-  TemplateParameterList _M_current_template_parameters;
-  QHash<QString, ScopeModelItem *> _M_known_scopes;
-
-protected:
-  TypeCompiler type_cc;
-  NameCompiler name_cc;
-  DeclaratorCompiler decl_cc;
-};
-
-#endif // BINDER_H
-
-// kate: space-indent on; indent-width 2; replace-tabs on;
diff --git a/tests/manual/cppmodelmanager/codemodel/class_compiler.cpp b/tests/manual/cppmodelmanager/codemodel/class_compiler.cpp
deleted file mode 100644
index b160499bba0e7fd6aba7ee3315b7f186413b18d5..0000000000000000000000000000000000000000
--- a/tests/manual/cppmodelmanager/codemodel/class_compiler.cpp
+++ /dev/null
@@ -1,91 +0,0 @@
-/***************************************************************************
-**
-** This file is part of Qt Creator
-**
-** Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
-**
-** Contact:  Qt Software Information (qt-info@nokia.com)
-**
-**
-** Non-Open Source Usage
-**
-** Licensees may use this file in accordance with the Qt Beta Version
-** License Agreement, Agreement version 2.2 provided with the Software or,
-** alternatively, in accordance with the terms contained in a written
-** agreement between you and Nokia.
-**
-** GNU General Public License Usage
-**
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License versions 2.0 or 3.0 as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL included in the packaging
-** of this file.  Please review the following information to ensure GNU
-** General Public Licensing requirements will be met:
-**
-** http://www.fsf.org/licensing/licenses/info/GPLv2.html and
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt GPL Exception
-** version 1.2, included in the file GPL_EXCEPTION.txt in this package.
-**
-***************************************************************************/
-/* This file is part of KDevelop
-    Copyright (C) 2002-2005 Roberto Raggi <roberto@kdevelop.org>
-
-   This library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Library General Public
-   License version 2 as published by the Free Software Foundation.
-
-   This library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Library General Public License for more details.
-
-   You should have received a copy of the GNU Library General Public License
-   along with this library; see the file COPYING.LIB.  If not, write to
-   the Free Software Foundation, Inc., 51 Franklin Steet, Fifth Floor,
-   Boston, MA 02110-1301, USA.
-*/
-
-#include "class_compiler.h"
-#include "lexer.h"
-#include "binder.h"
-
-ClassCompiler::ClassCompiler(Binder *binder)
-  : _M_binder (binder),
-     _M_token_stream(binder->tokenStream ()),
-     name_cc(_M_binder),
-     type_cc(_M_binder)
-{
-}
-
-ClassCompiler::~ClassCompiler()
-{
-}
-
-void ClassCompiler::run(ClassSpecifierAST *node)
-{
-  name_cc.run(node->name);
-  _M_name = name_cc.qualifiedName();
-  _M_base_classes.clear();
-
-  visit(node);
-}
-
-void ClassCompiler::visitClassSpecifier(ClassSpecifierAST *node)
-{
-  visit(node->base_clause);
-}
-
-void ClassCompiler::visitBaseSpecifier(BaseSpecifierAST *node)
-{
-  name_cc.run(node->name);
-  QString name = name_cc.qualifiedName();
-
-  if (! name.isEmpty())
-    _M_base_classes.append(name);
-}
-
-
-// kate: space-indent on; indent-width 2; replace-tabs on;
diff --git a/tests/manual/cppmodelmanager/codemodel/class_compiler.h b/tests/manual/cppmodelmanager/codemodel/class_compiler.h
deleted file mode 100644
index 06cf824932d524c3750d4145f9a3b1c6caf775e6..0000000000000000000000000000000000000000
--- a/tests/manual/cppmodelmanager/codemodel/class_compiler.h
+++ /dev/null
@@ -1,90 +0,0 @@
-/***************************************************************************
-**
-** This file is part of Qt Creator
-**
-** Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
-**
-** Contact:  Qt Software Information (qt-info@nokia.com)
-**
-**
-** Non-Open Source Usage
-**
-** Licensees may use this file in accordance with the Qt Beta Version
-** License Agreement, Agreement version 2.2 provided with the Software or,
-** alternatively, in accordance with the terms contained in a written
-** agreement between you and Nokia.
-**
-** GNU General Public License Usage
-**
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License versions 2.0 or 3.0 as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL included in the packaging
-** of this file.  Please review the following information to ensure GNU
-** General Public Licensing requirements will be met:
-**
-** http://www.fsf.org/licensing/licenses/info/GPLv2.html and
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt GPL Exception
-** version 1.2, included in the file GPL_EXCEPTION.txt in this package.
-**
-***************************************************************************/
-/* This file is part of KDevelop
-    Copyright (C) 2002-2005 Roberto Raggi <roberto@kdevelop.org>
-
-   This library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Library General Public
-   License version 2 as published by the Free Software Foundation.
-
-   This library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Library General Public License for more details.
-
-   You should have received a copy of the GNU Library General Public License
-   along with this library; see the file COPYING.LIB.  If not, write to
-   the Free Software Foundation, Inc., 51 Franklin Steet, Fifth Floor,
-   Boston, MA 02110-1301, USA.
-*/
-
-#ifndef CLASS_COMPILER_H
-#define CLASS_COMPILER_H
-
-#include <QtCore/qglobal.h>
-#include <QtCore/QStringList>
-
-#include "default_visitor.h"
-#include "name_compiler.h"
-#include "type_compiler.h"
-
-class TokenStream;
-class Binder;
-
-class ClassCompiler: protected DefaultVisitor
-{
-public:
-  ClassCompiler(Binder *binder);
-  virtual ~ClassCompiler();
-
-  inline QString name() const { return _M_name; }
-  inline QStringList baseClasses() const { return _M_base_classes; }
-
-  void run(ClassSpecifierAST *node);
-
-protected:
-  virtual void visitClassSpecifier(ClassSpecifierAST *node);
-  virtual void visitBaseSpecifier(BaseSpecifierAST *node);
-
-private:
-  Binder *_M_binder;
-  TokenStream *_M_token_stream;
-  QString _M_name;
-  QStringList _M_base_classes;
-  NameCompiler name_cc;
-  TypeCompiler type_cc;
-};
-
-#endif // CLASS_COMPILER_H
-
-// kate: space-indent on; indent-width 2; replace-tabs on;
diff --git a/tests/manual/cppmodelmanager/codemodel/codemodel_finder.cpp b/tests/manual/cppmodelmanager/codemodel/codemodel_finder.cpp
deleted file mode 100644
index 159c2e0ec3110abf7f5e6eb7c6fb9cd22461c024..0000000000000000000000000000000000000000
--- a/tests/manual/cppmodelmanager/codemodel/codemodel_finder.cpp
+++ /dev/null
@@ -1,99 +0,0 @@
-/***************************************************************************
-**
-** This file is part of Qt Creator
-**
-** Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
-**
-** Contact:  Qt Software Information (qt-info@nokia.com)
-**
-**
-** Non-Open Source Usage
-**
-** Licensees may use this file in accordance with the Qt Beta Version
-** License Agreement, Agreement version 2.2 provided with the Software or,
-** alternatively, in accordance with the terms contained in a written
-** agreement between you and Nokia.
-**
-** GNU General Public License Usage
-**
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License versions 2.0 or 3.0 as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL included in the packaging
-** of this file.  Please review the following information to ensure GNU
-** General Public Licensing requirements will be met:
-**
-** http://www.fsf.org/licensing/licenses/info/GPLv2.html and
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt GPL Exception
-** version 1.2, included in the file GPL_EXCEPTION.txt in this package.
-**
-***************************************************************************/
-/* This file is part of KDevelop
-Copyright (C) 2002-2005 Roberto Raggi <roberto@kdevelop.org>
-
-This library is free software; you can redistribute it and/or
-modify it under the terms of the GNU Library General Public
-License version 2 as published by the Free Software Foundation.
-
-This library is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-Library General Public License for more details.
-
-You should have received a copy of the GNU Library General Public License
-along with this library; see the file COPYING.LIB.  If not, write to
-the Free Software Foundation, Inc., 51 Franklin Steet, Fifth Floor,
-Boston, MA 02110-1301, USA.
-*/
-
-#include "codemodel_finder.h"
-#include "cppcodemodel.h"
-#include "binder.h"
-
-CodeModelFinder::CodeModelFinder(CppCodeModel *model, Binder *binder)
-: _M_model(model),
-_M_binder (binder),
-name_cc(_M_binder)
-{
-}
-
-CodeModelFinder::~CodeModelFinder()
-{
-}
-
-QString CodeModelFinder::resolveScope(NameAST *name, ScopeModelItem *scope, bool *ok)
-{
-    Q_ASSERT(scope != 0);
-
-    _M_ok = true;
-    _M_current_scope = scope->qualifiedName();
-    visit(name);
-    *ok = _M_ok;
-
-    return _M_current_scope;
-}
-
-void CodeModelFinder::visitName(NameAST *node)
-{
-    visitNodes(this, node->qualified_names);
-}
-
-void CodeModelFinder::visitUnqualifiedName(UnqualifiedNameAST *node)
-{
-    if (!_M_ok)
-        return;
-
-    if (!_M_current_scope.isEmpty())
-        _M_current_scope += QLatin1String("::");
-
-    name_cc.run(node);
-    _M_current_scope += name_cc.qualifiedName();
-
-    if (!_M_model->hasScope(_M_current_scope))
-        _M_ok = false;
-}
-
-// kate: space-indent on; indent-width 2; replace-tabs on;
-
diff --git a/tests/manual/cppmodelmanager/codemodel/codemodel_finder.h b/tests/manual/cppmodelmanager/codemodel/codemodel_finder.h
deleted file mode 100644
index eb4a89e82224b56a55ebd6e2ccabe0a300f5a12b..0000000000000000000000000000000000000000
--- a/tests/manual/cppmodelmanager/codemodel/codemodel_finder.h
+++ /dev/null
@@ -1,86 +0,0 @@
-/***************************************************************************
-**
-** This file is part of Qt Creator
-**
-** Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
-**
-** Contact:  Qt Software Information (qt-info@nokia.com)
-**
-**
-** Non-Open Source Usage
-**
-** Licensees may use this file in accordance with the Qt Beta Version
-** License Agreement, Agreement version 2.2 provided with the Software or,
-** alternatively, in accordance with the terms contained in a written
-** agreement between you and Nokia.
-**
-** GNU General Public License Usage
-**
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License versions 2.0 or 3.0 as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL included in the packaging
-** of this file.  Please review the following information to ensure GNU
-** General Public Licensing requirements will be met:
-**
-** http://www.fsf.org/licensing/licenses/info/GPLv2.html and
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt GPL Exception
-** version 1.2, included in the file GPL_EXCEPTION.txt in this package.
-**
-***************************************************************************/
-/* This file is part of KDevelop
-Copyright (C) 2002-2005 Roberto Raggi <roberto@kdevelop.org>
-
-This library is free software; you can redistribute it and/or
-modify it under the terms of the GNU Library General Public
-License version 2 as published by the Free Software Foundation.
-
-This library is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-Library General Public License for more details.
-
-You should have received a copy of the GNU Library General Public License
-along with this library; see the file COPYING.LIB.  If not, write to
-the Free Software Foundation, Inc., 51 Franklin Steet, Fifth Floor,
-Boston, MA 02110-1301, USA.
-*/
-
-#ifndef CODEMODEL_FINDER_H
-#define CODEMODEL_FINDER_H
-
-#include "default_visitor.h"
-#include "name_compiler.h"
-
-class Binder;
-class CppCodeModel;
-class ScopeModelItem;
-
-class CodeModelFinder: protected DefaultVisitor
-{
-public:
-    CodeModelFinder(CppCodeModel *model, Binder *binder);
-    virtual ~CodeModelFinder();
-
-    QString resolveScope(NameAST *name, ScopeModelItem *scope, bool *ok);
-
-    inline CppCodeModel *model() const { return _M_model; }
-
-protected:
-    virtual void visitName(NameAST *node);
-    virtual void visitUnqualifiedName(UnqualifiedNameAST *node);
-
-private:
-    CppCodeModel *_M_model;
-    Binder *_M_binder;
-    NameCompiler name_cc;
-
-    bool _M_ok;
-    QString _M_current_scope;
-};
-
-#endif // CODEMODEL_FINDER_H
-
-// kate: space-indent on; indent-width 2; replace-tabs on;
diff --git a/tests/manual/cppmodelmanager/codemodel/codemodelitems.cpp b/tests/manual/cppmodelmanager/codemodel/codemodelitems.cpp
deleted file mode 100644
index 6d79d73ee8337978bf64e297e86ff556420801ec..0000000000000000000000000000000000000000
--- a/tests/manual/cppmodelmanager/codemodel/codemodelitems.cpp
+++ /dev/null
@@ -1,893 +0,0 @@
-/***************************************************************************
-**
-** This file is part of Qt Creator
-**
-** Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
-**
-** Contact:  Qt Software Information (qt-info@nokia.com)
-**
-**
-** Non-Open Source Usage
-**
-** Licensees may use this file in accordance with the Qt Beta Version
-** License Agreement, Agreement version 2.2 provided with the Software or,
-** alternatively, in accordance with the terms contained in a written
-** agreement between you and Nokia.
-**
-** GNU General Public License Usage
-**
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License versions 2.0 or 3.0 as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL included in the packaging
-** of this file.  Please review the following information to ensure GNU
-** General Public Licensing requirements will be met:
-**
-** http://www.fsf.org/licensing/licenses/info/GPLv2.html and
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt GPL Exception
-** version 1.2, included in the file GPL_EXCEPTION.txt in this package.
-**
-***************************************************************************/
-/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
-
-/* This file is part of KDevelop
-Copyright (C) 2002-2005 Roberto Raggi <roberto@kdevelop.org>
-Copyright (C) 2005 Trolltech AS
-
-This library is free software; you can redistribute it and/or
-modify it under the terms of the GNU Library General Public
-License version 2 as published by the Free Software Foundation.
-
-This library is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-Library General Public License for more details.
-
-You should have received a copy of the GNU Library General Public License
-along with this library; see the file COPYING.LIB.  If not, write to
-the Free Software Foundation, Inc., 51 Franklin Steet, Fifth Floor,
-Boston, MA 02110-1301, USA.
-*/
-
-#include <QtCore/QHash>
-#include "codemodelitems.h"
-
-CodeModel::~CodeModel()
-{
-
-}
-
-// ---------------------------------------------------------------------------
-bool TypeInfo::operator==(const TypeInfo &other)
-{
-    if (arrayElements().count() != other.arguments().count())
-        return false;
-
-    return flags == other.flags
-        && m_qualifiedName == other.m_qualifiedName
-        && (!m_functionPointer || m_arguments == other.m_arguments);
-}
-
-// ---------------------------------------------------------------------------
-class CodeModelItemData {
-public:
-    CodeModel *_M_model;
-    int _M_kind;
-    int _M_startLine;
-    int _M_startColumn;
-    int _M_endLine;
-    int _M_endColumn;
-    std::size_t _M_creation_id;
-    QString _M_name;
-    FileModelItem *_M_file;
-    QString _M_scope;
-};
-
-CodeModelItem::CodeModelItem(CodeModel *model, int kind)
-{
-    d = new CodeModelItemData;
-    d->_M_model = model;
-    d->_M_kind = kind;
-    d->_M_startLine = 0;
-    d->_M_startColumn = 0;
-    d->_M_endLine = 0;
-    d->_M_endColumn = 0;
-    d->_M_creation_id = 0;
-}
-
-CodeModelItem::CodeModelItem(const CodeModelItem &item)
-{
-    d = new CodeModelItemData;
-    *d = *(item.d);
-}
-
-CodeModelItem::~CodeModelItem()
-{
-    delete d;
-}
-
-int CodeModelItem::kind() const
-{
-    return d->_M_kind;
-}
-
-void CodeModelItem::setKind(int kind)
-{
-    d->_M_kind = kind;
-}
-
-QString CodeModelItem::qualifiedName() const
-{
-    if (kind() == CodeModelItem::Kind_File)
-        return QString();
-
-    QString q = scope();
-
-    if (!q.isEmpty() && !name().isEmpty())
-        q += QLatin1String("::");
-   
-    q += name();
-
-    return q;
-}
-
-QString CodeModelItem::name() const
-{
-    return d->_M_name;
-}
-
-void CodeModelItem::setName(const QString &name)
-{
-    d->_M_name = name;
-}
-
-QString CodeModelItem::scope() const
-{
-    return d->_M_scope;
-}
-
-void CodeModelItem::setScope(const QString &scope)
-{
-    d->_M_scope = scope;
-}
-
-void CodeModelItem::setFile(FileModelItem *file)
-{
-    d->_M_file = file;
-}
-
-FileModelItem *CodeModelItem::file() const
-{
-    return d->_M_file;
-}
-
-void CodeModelItem::startPosition(int *line, int *column)
-{
-    *line = d->_M_startLine;
-    *column = d->_M_startColumn;
-}
-
-void CodeModelItem::setStartPosition(int line, int column)
-{
-    d->_M_startLine = line;
-    d->_M_startColumn = column;
-}
-
-void CodeModelItem::endPosition(int *line, int *column)
-{
-    *line = d->_M_endLine;
-    *column = d->_M_endColumn;
-}
-
-void CodeModelItem::setEndPosition(int line, int column)
-{
-    d->_M_endLine = line;
-    d->_M_endColumn = column;
-}
-
-std::size_t CodeModelItem::creationId() const
-{
-    return d->_M_creation_id;
-}
-
-void CodeModelItem::setCreationId(std::size_t creation_id)
-{
-    d->_M_creation_id = creation_id;
-}
-
-CodeModel *CodeModelItem::model() const
-{ 
-    return d->_M_model;
-}
-
-// ---------------------------------------------------------------------------
-class ClassModelItemData
-{
-public:
-    ~ClassModelItemData() {
-        qDeleteAll(_M_templateParameters);
-    }
-    QStringList _M_baseClasses;
-    TemplateParameterList _M_templateParameters;
-    CodeModel::ClassType _M_classType;
-};
-
-ClassModelItem::ClassModelItem(CodeModel *model, int kind)
-: ScopeModelItem(model, kind)
-{
-    d = new ClassModelItemData();
-    d->_M_classType = CodeModel::Class;
-}
-
-ClassModelItem::~ClassModelItem()
-{
-    delete d;
-}
-
-QStringList ClassModelItem::baseClasses() const
-{
-    return d->_M_baseClasses;
-}
-
-void ClassModelItem::setBaseClasses(const QStringList &baseClasses)
-{
-    d->_M_baseClasses = baseClasses;
-}
-
-TemplateParameterList ClassModelItem::templateParameters() const
-{
-    return d->_M_templateParameters;
-}
-
-void ClassModelItem::setTemplateParameters(const TemplateParameterList &templateParameters)
-{
-    d->_M_templateParameters = templateParameters;
-}
-
-void ClassModelItem::addBaseClass(const QString &baseClass)
-{
-    d->_M_baseClasses.append(baseClass);
-}
-
-bool ClassModelItem::extendsClass(const QString &name) const
-{
-    return d->_M_baseClasses.contains(name);
-}
-
-void ClassModelItem::setClassType(CodeModel::ClassType type)
-{
-    d->_M_classType = type;
-}
-
-CodeModel::ClassType ClassModelItem::classType() const
-{
-    return d->_M_classType;
-}
-
-// ---------------------------------------------------------------------------
-class ScopeModelItemData
-{
-public:
-    ~ScopeModelItemData() {
-        qDeleteAll(_M_classes.values());
-        qDeleteAll(_M_enums.values());
-        qDeleteAll(_M_typeAliases.values());
-        qDeleteAll(_M_variables.values());
-        qDeleteAll(_M_functionDefinitions.values());
-        qDeleteAll(_M_functions.values());
-    }
-
-    QHash<QString, ClassModelItem*> _M_classes;
-    QHash<QString, EnumModelItem*> _M_enums;
-    QHash<QString, TypeAliasModelItem*> _M_typeAliases;
-    QHash<QString, VariableModelItem*> _M_variables;
-    QMultiHash<QString, FunctionDefinitionModelItem*> _M_functionDefinitions;
-    QMultiHash<QString, FunctionModelItem*> _M_functions;
-};
-
-ScopeModelItem::ScopeModelItem(CodeModel *model, int kind)
-    : CodeModelItem(model, kind) 
-{
-    d = new ScopeModelItemData;
-}
-
-ScopeModelItem::~ScopeModelItem()
-{
-    delete d;
-}
-
-void ScopeModelItem::addClass(ClassModelItem *item)
-{
-    d->_M_classes.insert(item->name(), item);
-}
-
-void ScopeModelItem::addFunction(FunctionModelItem *item)
-{
-    d->_M_functions.insert(item->name(), item);
-}
-
-void ScopeModelItem::addFunctionDefinition(FunctionDefinitionModelItem *item)
-{
-    d->_M_functionDefinitions.insert(item->name(), item);
-}
-
-void ScopeModelItem::addVariable(VariableModelItem *item)
-{
-    d->_M_variables.insert(item->name(), item);
-}
-
-void ScopeModelItem::addTypeAlias(TypeAliasModelItem *item)
-{
-    d->_M_typeAliases.insert(item->name(), item);
-}
-
-void ScopeModelItem::addEnum(EnumModelItem *item)
-{
-    d->_M_enums.insert(item->name(), item);
-}
-
-// ---------------------------------------------------------------------------
-class NamespaceModelItemData
-{
-public:
-    ~NamespaceModelItemData() {
-        qDeleteAll(_M_namespaces.values());
-    }
-
-    QHash<QString, NamespaceModelItem *> _M_namespaces;
-};
-
-NamespaceModelItem::NamespaceModelItem(CodeModel *model, int kind)
-: ScopeModelItem(model, kind)
-{
-    d = new NamespaceModelItemData();
-}
-
-NamespaceModelItem::~NamespaceModelItem()
-{
-    delete d;
-}
-
-NamespaceList NamespaceModelItem::namespaces() const
-{
-    return d->_M_namespaces.values();
-}
-void NamespaceModelItem::addNamespace(NamespaceModelItem *item)
-{
-    d->_M_namespaces.insert(item->name(), item);
-}
-
-// ---------------------------------------------------------------------------
-class ArgumentModelItemData 
-{
-public:
-    ~ArgumentModelItemData() {
-        delete _M_type;
-    }
-    TypeInfo *_M_type;
-    QString _M_defaultValueExpression;
-    bool _M_defaultValue;
-};
-
-ArgumentModelItem::ArgumentModelItem(CodeModel *model, int kind)
-: CodeModelItem(model, kind)
-{
-    d = new ArgumentModelItemData();
-    d->_M_defaultValue = false;
-}
-
-ArgumentModelItem::~ArgumentModelItem()
-{
-    delete d;
-}
-
-TypeInfo *ArgumentModelItem::type() const
-{
-    return d->_M_type;
-}
-
-void ArgumentModelItem::setType(TypeInfo *type)
-{
-    d->_M_type = type;
-}
-
-bool ArgumentModelItem::defaultValue() const
-{
-    return d->_M_defaultValue;
-}
-
-void ArgumentModelItem::setDefaultValue(bool defaultValue)
-{
-    d->_M_defaultValue = defaultValue;
-}
-
-QString ArgumentModelItem::defaultValueExpression() const
-{
-    return d->_M_defaultValueExpression;
-}
-
-void ArgumentModelItem::setDefaultValueExpression(const QString &expr)
-{
-    d->_M_defaultValueExpression = expr;
-}
-
-// ---------------------------------------------------------------------------
-class FunctionModelItemData
-{
-public:
-    ~FunctionModelItemData() {
-        qDeleteAll(_M_arguments);
-    }
-
-    ArgumentList _M_arguments;
-    CodeModel::FunctionType _M_functionType;
-    union
-    {
-        struct
-        {
-            uint _M_isVirtual: 1;
-            uint _M_isInline: 1;
-            uint _M_isAbstract: 1;
-            uint _M_isExplicit: 1;
-            uint _M_isVariadics: 1;
-        };
-        uint _M_flags;
-    };
-};
-
-FunctionModelItem::FunctionModelItem(CodeModel *model, int kind)
-: MemberModelItem(model, kind)
-{
-    d = new FunctionModelItemData();
-    d->_M_functionType = CodeModel::Normal;
-    d->_M_flags = 0;
-}
-
-FunctionModelItem::~FunctionModelItem()
-{
-    delete d;
-}
-
-bool FunctionModelItem::isSimilar(FunctionModelItem *other) const
-{
-    if (name() != other->name())
-        return false;
-
-    if (isConstant() != other->isConstant())
-        return false;
-
-    if (isVariadics() != other->isVariadics())
-        return false;
-
-    if (arguments().count() != other->arguments().count())
-        return false;
-
-    // ### check the template parameters
-
-    for (int i=0; i<arguments().count(); ++i)
-    {
-        ArgumentModelItem *arg1 = arguments().at(i);
-        ArgumentModelItem *arg2 = other->arguments().at(i);
-
-        TypeInfo *t1 = static_cast<TypeInfo *>(arg1->type());
-        TypeInfo *t2 = static_cast<TypeInfo *>(arg2->type());
-
-        if (*t1 != *t2)
-            return false;
-    }
-
-    return true;
-}
-
-ArgumentList FunctionModelItem::arguments() const
-{
-    return d->_M_arguments;
-}
-
-void FunctionModelItem::addArgument(ArgumentModelItem *item)
-{
-    d->_M_arguments.append(item);
-}
-
-CodeModel::FunctionType FunctionModelItem::functionType() const
-{
-    return d->_M_functionType;
-}
-
-void FunctionModelItem::setFunctionType(CodeModel::FunctionType functionType)
-{
-    d->_M_functionType = functionType;
-}
-
-bool FunctionModelItem::isVariadics() const
-{
-    return d->_M_isVariadics;
-}
-
-void FunctionModelItem::setVariadics(bool isVariadics)
-{
-    d->_M_isVariadics = isVariadics;
-}
-
-bool FunctionModelItem::isVirtual() const
-{
-    return d->_M_isVirtual;
-}
-
-void FunctionModelItem::setVirtual(bool isVirtual)
-{
-    d->_M_isVirtual = isVirtual;
-}
-
-bool FunctionModelItem::isInline() const
-{
-    return d->_M_isInline;
-}
-
-void FunctionModelItem::setInline(bool isInline)
-{
-    d->_M_isInline = isInline;
-}
-
-bool FunctionModelItem::isExplicit() const
-{
-    return d->_M_isExplicit;
-}
-
-void FunctionModelItem::setExplicit(bool isExplicit)
-{
-    d->_M_isExplicit = isExplicit;
-}
-
-bool FunctionModelItem::isAbstract() const
-{
-    return d->_M_isAbstract;
-}
-
-void FunctionModelItem::setAbstract(bool isAbstract)
-{
-    d->_M_isAbstract = isAbstract;
-}
-
-// ---------------------------------------------------------------------------
-class TypeAliasModelItemData
-{
-public:
-    ~TypeAliasModelItemData() {
-        delete _M_type;
-    }
-
-    TypeInfo *_M_type;
-};
-
-TypeAliasModelItem::TypeAliasModelItem(CodeModel *model, int kind)
-: CodeModelItem(model, kind)
-{
-    d = new TypeAliasModelItemData;
-}
-
-TypeAliasModelItem::~TypeAliasModelItem()
-{
-    delete d;
-}
-
-TypeInfo *TypeAliasModelItem::type() const
-{
-    return d->_M_type;
-}
-
-void TypeAliasModelItem::setType(TypeInfo *type)
-{
-    d->_M_type = type;
-}
-
-// ---------------------------------------------------------------------------
-class EnumModelItemData
-{
-public:
-    ~EnumModelItemData() {
-        qDeleteAll(_M_enumerators);
-    }
-    CodeModel::AccessPolicy _M_accessPolicy;
-    EnumeratorList _M_enumerators;
-};
-
-EnumModelItem::EnumModelItem(CodeModel *model, int kind)
-: CodeModelItem(model, kind)
-{
-    d = new EnumModelItemData;
-    d->_M_accessPolicy = CodeModel::Public;
-}
-
-EnumModelItem::~EnumModelItem()
-{
-    delete d;
-}
-
-CodeModel::AccessPolicy EnumModelItem::accessPolicy() const
-{
-    return d->_M_accessPolicy;
-}
-
-void EnumModelItem::setAccessPolicy(CodeModel::AccessPolicy accessPolicy)
-{
-    d->_M_accessPolicy = accessPolicy;
-}
-
-EnumeratorList EnumModelItem::enumerators() const
-{
-    return d->_M_enumerators;
-}
-
-void EnumModelItem::addEnumerator(EnumeratorModelItem *item)
-{
-    d->_M_enumerators.append(item);
-}
-
-// ---------------------------------------------------------------------------
-class EnumeratorModelItemData
-{
-public:
-    QString _M_value;
-};
-
-EnumeratorModelItem::EnumeratorModelItem(CodeModel *model, int kind)
-: CodeModelItem(model, kind)
-{
-    d = new EnumeratorModelItemData;
-}
-
-EnumeratorModelItem::~EnumeratorModelItem()
-{
-    delete d;
-}
-
-QString EnumeratorModelItem::value() const
-{
-    return d->_M_value;
-}
-
-void EnumeratorModelItem::setValue(const QString &value)
-{
-    d->_M_value = value;
-}
-
-// ---------------------------------------------------------------------------
-class TemplateParameterModelItemData
-{
-public:
-    ~TemplateParameterModelItemData() {
-        delete _M_type;
-    }
-
-    TypeInfo *_M_type;
-    bool _M_defaultValue;
-};
-
-TemplateParameterModelItem::TemplateParameterModelItem(CodeModel *model, int kind)
-: CodeModelItem(model, kind)
-{
-    d = new TemplateParameterModelItemData;
-    d->_M_defaultValue = false;
-    d->_M_type = 0;
-}
-
-TemplateParameterModelItem::TemplateParameterModelItem(const TemplateParameterModelItem& item)
-    : CodeModelItem(item)
-{
-    d = new TemplateParameterModelItemData;
-    *d = *(item.d);
-}
-
-TemplateParameterModelItem::~TemplateParameterModelItem()
-{
-    delete d;
-}
-
-TypeInfo *TemplateParameterModelItem::type() const
-{
-    return d->_M_type;
-}
-
-void TemplateParameterModelItem::setType(TypeInfo *type)
-{
-    d->_M_type = type;
-}
-
-bool TemplateParameterModelItem::defaultValue() const
-{
-    return d->_M_defaultValue;
-}
-
-void TemplateParameterModelItem::setDefaultValue(bool defaultValue)
-{
-    d->_M_defaultValue = defaultValue;
-}
-
-// ---------------------------------------------------------------------------
-FileModelItem::FileModelItem(CodeModel *model, int kind)
-: NamespaceModelItem(model, kind)
-{
-}
-
-FileModelItem::~FileModelItem()
-{
-}
-
-FunctionDefinitionModelItem::FunctionDefinitionModelItem(CodeModel *model, int kind)
-: FunctionModelItem(model, kind)
-{
-
-}
-
-FunctionDefinitionModelItem::~FunctionDefinitionModelItem()
-{
-
-}
-
-VariableModelItem::VariableModelItem(CodeModel *model, int kind)
-: MemberModelItem(model, kind)
-{
-
-}
-
-VariableModelItem::~VariableModelItem()
-{
-
-}
-
-// ---------------------------------------------------------------------------
-class MemberModelItemData
-{
-public:
-    ~MemberModelItemData() {
-        delete _M_type;
-        qDeleteAll(_M_templateParameters);
-    }
-    TemplateParameterList _M_templateParameters;
-    TypeInfo *_M_type;
-    CodeModel::AccessPolicy _M_accessPolicy;
-    union
-    {
-        struct
-        {
-            uint _M_isConstant: 1;
-            uint _M_isVolatile: 1;
-            uint _M_isStatic: 1;
-            uint _M_isAuto: 1;
-            uint _M_isFriend: 1;
-            uint _M_isRegister: 1;
-            uint _M_isExtern: 1;
-            uint _M_isMutable: 1;
-        };
-        uint _M_flags;
-    };
-};
-
-MemberModelItem::MemberModelItem(CodeModel *model, int kind)
-: CodeModelItem(model, kind)
-{
-    d = new MemberModelItemData();
-    d->_M_accessPolicy = CodeModel::Public;
-    d->_M_flags = 0;
-}
-
-MemberModelItem::~MemberModelItem()
-{
-    delete d;
-}
-
-TypeInfo *MemberModelItem::type() const
-{
-    return d->_M_type;
-}
-
-void MemberModelItem::setType(TypeInfo *type)
-{
-    d->_M_type = type;
-}
-
-CodeModel::AccessPolicy MemberModelItem::accessPolicy() const
-{
-    return d->_M_accessPolicy;
-}
-
-void MemberModelItem::setAccessPolicy(CodeModel::AccessPolicy accessPolicy)
-{
-    d->_M_accessPolicy = accessPolicy;
-}
-
-bool MemberModelItem::isStatic() const
-{
-    return d->_M_isStatic;
-}
-
-void MemberModelItem::setStatic(bool isStatic)
-{
-    d->_M_isStatic = isStatic;
-}
-
-bool MemberModelItem::isConstant() const
-{
-    return d->_M_isConstant;
-}
-
-void MemberModelItem::setConstant(bool isConstant)
-{
-    d->_M_isConstant = isConstant;
-}
-
-bool MemberModelItem::isVolatile() const
-{
-    return d->_M_isVolatile;
-}
-
-void MemberModelItem::setVolatile(bool isVolatile)
-{
-    d->_M_isVolatile = isVolatile;
-}
-
-bool MemberModelItem::isAuto() const
-{
-    return d->_M_isAuto;
-}
-
-void MemberModelItem::setAuto(bool isAuto)
-{
-    d->_M_isAuto = isAuto;
-}
-
-bool MemberModelItem::isFriend() const
-{
-    return d->_M_isFriend;
-}
-
-void MemberModelItem::setFriend(bool isFriend)
-{
-    d->_M_isFriend = isFriend;
-}
-
-bool MemberModelItem::isRegister() const
-{
-    return d->_M_isRegister;
-}
-
-void MemberModelItem::setRegister(bool isRegister)
-{
-    d->_M_isRegister = isRegister;
-}
-
-bool MemberModelItem::isExtern() const
-{
-    return d->_M_isExtern;
-}
-
-void MemberModelItem::setExtern(bool isExtern)
-{
-    d->_M_isExtern = isExtern;
-}
-
-bool MemberModelItem::isMutable() const
-{
-    return d->_M_isMutable;
-}
-
-void MemberModelItem::setMutable(bool isMutable)
-{
-    d->_M_isMutable = isMutable;
-}
-
-TemplateParameterList MemberModelItem::templateParameters() const
-{
-    return d->_M_templateParameters;
-}
-
-void MemberModelItem::setTemplateParameters(const TemplateParameterList &templateParameters)
-{
-    d->_M_templateParameters = templateParameters;
-}
-
-// kate: space-indent on; indent-width 2; replace-tabs on;
-
diff --git a/tests/manual/cppmodelmanager/codemodel/codemodelitems.h b/tests/manual/cppmodelmanager/codemodel/codemodelitems.h
deleted file mode 100644
index 6d2d02468fb7dd5cef6c0334c1ad1dac0ff87879..0000000000000000000000000000000000000000
--- a/tests/manual/cppmodelmanager/codemodel/codemodelitems.h
+++ /dev/null
@@ -1,527 +0,0 @@
-/***************************************************************************
-**
-** This file is part of Qt Creator
-**
-** Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
-**
-** Contact:  Qt Software Information (qt-info@nokia.com)
-**
-**
-** Non-Open Source Usage
-**
-** Licensees may use this file in accordance with the Qt Beta Version
-** License Agreement, Agreement version 2.2 provided with the Software or,
-** alternatively, in accordance with the terms contained in a written
-** agreement between you and Nokia.
-**
-** GNU General Public License Usage
-**
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License versions 2.0 or 3.0 as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL included in the packaging
-** of this file.  Please review the following information to ensure GNU
-** General Public Licensing requirements will be met:
-**
-** http://www.fsf.org/licensing/licenses/info/GPLv2.html and
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt GPL Exception
-** version 1.2, included in the file GPL_EXCEPTION.txt in this package.
-**
-***************************************************************************/
-/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
-
-/* This file is part of KDevelop
-Copyright (C) 2002-2005 Roberto Raggi <roberto@kdevelop.org>
-Copyright (C) 2005 Trolltech AS
-
-This library is free software; you can redistribute it and/or
-modify it under the terms of the GNU Library General Public
-License version 2 as published by the Free Software Foundation.
-
-This library is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-Library General Public License for more details.
-
-You should have received a copy of the GNU Library General Public License
-along with this library; see the file COPYING.LIB.  If not, write to
-the Free Software Foundation, Inc., 51 Franklin Steet, Fifth Floor,
-Boston, MA 02110-1301, USA.
-*/
-
-#ifndef CODEMODELITEMS_H
-#define CODEMODELITEMS_H
-
-#include <QtCore/QStringList>
-
-class CodeModelItem;
-class ArgumentModelItem;
-class ClassModelItem;
-class EnumModelItem;
-class EnumeratorModelItem;
-class FileModelItem;
-class FunctionDefinitionModelItem;
-class FunctionModelItem;
-class NamespaceModelItem;
-class TemplateParameterModelItem;
-class TypeAliasModelItem;
-class VariableModelItem;
-class TypeInfo;
-
-typedef QList<ArgumentModelItem*> ArgumentList;
-typedef QList<ClassModelItem*> ClassList;
-typedef QList<EnumModelItem*> EnumList;
-typedef QList<EnumeratorModelItem*> EnumeratorList;
-typedef QList<FileModelItem*> FileList;
-typedef QList<FunctionDefinitionModelItem*> FunctionDefinitionList;
-typedef QList<FunctionModelItem*> FunctionList;
-typedef QList<NamespaceModelItem*> NamespaceList;
-typedef QList<TemplateParameterModelItem*> TemplateParameterList;
-typedef QList<TypeAliasModelItem*> TypeAliasList;
-typedef QList<VariableModelItem*> VariableList;
-typedef QList<TypeInfo*> TypeInfoList;
-
-#define DECLARE_MODEL_NODE(name) \
-    enum { __node_kind = Kind_##name };
-
-
-template <class T> inline T model_cast(CodeModelItem *item) { return 0; }
-
-#define DECLARE_MODELITEM(name) \
-    template <> inline name##ModelItem *model_cast<##name##ModelItem *>(CodeModelItem *item) { \
-    if (item && item->kind() == CodeModelItem::Kind_##name) \
-        return static_cast<##name##ModelItem *>(item); \
-    return 0; }
-
-class CodeModel
-{
-public:
-    enum AccessPolicy
-    {
-        Public,
-        Protected,
-        Private
-    };
-
-    enum FunctionType
-    {
-        Normal,
-        Signal,
-        Slot
-    };
-
-    enum ClassType
-    {
-        Class,
-        Struct,
-        Union
-    };
-
-public:
-    virtual ~CodeModel();
-
-/*    virtual FileList files() const = 0;
-    virtual NamespaceModelItem *globalNamespace() const = 0; */
-};
-
-class TypeInfo
-{
-public:
-    TypeInfo(): flags (0) {}
-    virtual ~TypeInfo() { qDeleteAll(m_arguments); }
-
-    QString qualifiedName() const { return m_qualifiedName; }
-    void setQualifiedName(const QString &qualified_name) { m_qualifiedName = qualified_name; }
-
-    bool isConstant() const { return m_constant; }
-    void setConstant(bool is) { m_constant = is; }
-
-    bool isVolatile() const { return m_volatile; }
-    void setVolatile(bool is) { m_volatile = is; }
-
-    bool isReference() const { return m_reference; }
-    void setReference(bool is) { m_reference = is; }
-
-    int indirections() const { return m_indirections; }
-    void setIndirections(int indirections) { m_indirections = indirections; }
-
-    bool isFunctionPointer() const { return m_functionPointer; }
-    void setFunctionPointer(bool is) { m_functionPointer = is; }
-
-    QStringList arrayElements() const { return m_arrayElements; }
-    void setArrayElements(const QStringList &arrayElements) { m_arrayElements = arrayElements; }
-
-    TypeInfoList arguments() const { return m_arguments; }
-    void addArgument(TypeInfo *arg) { m_arguments.append(arg); }
-
-    bool operator==(const TypeInfo &other);
-    bool operator!=(const TypeInfo &other) { return !(*this==other); }
-
-private:
-    union
-    {
-        uint flags;
-
-        struct
-        {
-            uint m_constant: 1;
-            uint m_volatile: 1;
-            uint m_reference: 1;
-            uint m_functionPointer: 1;
-            uint m_indirections: 6;
-            uint m_padding: 22;
-        };
-    };
-
-    QString m_qualifiedName;
-    QStringList m_arrayElements;
-    TypeInfoList m_arguments;
-};
-
-class CodeModelItemData;
-class CodeModelItem
-{
-public:
-    enum Kind
-    {
-        /* These are bit-flags resembling inheritance */
-        Kind_Scope = 0x1,
-        Kind_Namespace = 0x2 | Kind_Scope,
-        Kind_Member = 0x4,
-        Kind_Function = 0x8 | Kind_Member,
-        KindMask = 0xf,
-
-        /* These are for classes that are not inherited from */
-        FirstKind = 0x8,
-        Kind_Argument = 1 << FirstKind,
-        Kind_Class = 2 << FirstKind | Kind_Scope,
-        Kind_Enum = 3 << FirstKind,
-        Kind_Enumerator = 4 << FirstKind,
-        Kind_File = 5 << FirstKind | Kind_Namespace,
-        Kind_FunctionDefinition = 6 << FirstKind | Kind_Function,
-        Kind_TemplateParameter = 7 << FirstKind,
-        Kind_TypeAlias = 8 << FirstKind,
-        Kind_Variable = 9 << FirstKind | Kind_Member
-    };
-
-    CodeModelItem(CodeModel *model, int kind);
-    CodeModelItem(const CodeModelItem &item);
-    virtual ~CodeModelItem();
-
-    int kind() const;
-
-    QString qualifiedName() const;
-
-    QString name() const;
-    void setName(const QString &name);
-
-    QString scope() const;
-    void setScope(const QString &scope);
-
-    void setFile(FileModelItem *file);
-    FileModelItem *file() const;
-
-    void startPosition(int *line, int *column);
-    void setStartPosition(int line, int column);
-
-    void endPosition(int *line, int *column);
-    void setEndPosition(int line, int column);
-
-    std::size_t creationId() const;
-    void setCreationId(std::size_t creation_id);
-
-    CodeModel *model() const;
-
-protected:
-    void setKind(int kind);
-
-private:
-    CodeModelItemData *d;
-};
-
-class ScopeModelItemData;
-class ScopeModelItem: public CodeModelItem
-{
-public:
-    DECLARE_MODEL_NODE(Scope)
-    ScopeModelItem(CodeModel *model, int kind = __node_kind);
-    virtual ~ScopeModelItem();
-
-    void addClass(ClassModelItem *item);
-    void addEnum(EnumModelItem *item);
-    void addFunction(FunctionModelItem *item);
-    void addFunctionDefinition(FunctionDefinitionModelItem *item);
-    void addTypeAlias(TypeAliasModelItem *item);
-    void addVariable(VariableModelItem *item);
-
-private:
-    ScopeModelItemData *d;
-};
-DECLARE_MODELITEM(Scope)
-
-class ClassModelItemData;
-class ClassModelItem: public ScopeModelItem
-{
-public:
-    DECLARE_MODEL_NODE(Class)
-    ClassModelItem(CodeModel *model, int kind = __node_kind);
-    virtual ~ClassModelItem();
-
-    QStringList baseClasses() const;
-
-    void setBaseClasses(const QStringList &baseClasses);
-    void addBaseClass(const QString &baseClass);
-
-    TemplateParameterList templateParameters() const;
-    void setTemplateParameters(const TemplateParameterList &templateParameters);
-
-    bool extendsClass(const QString &name) const;
-
-    void setClassType(CodeModel::ClassType type);
-    CodeModel::ClassType classType() const;
-
-private:
-    ClassModelItemData *d;
-};
-DECLARE_MODELITEM(Class)
-
-class NamespaceModelItemData;
-class NamespaceModelItem: public ScopeModelItem
-{
-public:
-    DECLARE_MODEL_NODE(Namespace)
-    NamespaceModelItem(CodeModel *model, int kind = __node_kind);
-    virtual ~NamespaceModelItem();
-
-    NamespaceList namespaces() const;
-    void addNamespace(NamespaceModelItem *item);
-    NamespaceModelItem *findNamespace(const QString &name) const;
-
-private:
-    NamespaceModelItemData *d;
-};
-DECLARE_MODELITEM(Namespace)
-
-class FileModelItem: public NamespaceModelItem
-{
-public:
-    DECLARE_MODEL_NODE(File)
-    FileModelItem(CodeModel *model, int kind = __node_kind);
-    virtual ~FileModelItem();
-};
-DECLARE_MODELITEM(File)
-
-class ArgumentModelItemData;
-class ArgumentModelItem: public CodeModelItem
-{
-public:
-    DECLARE_MODEL_NODE(Argument)
-    ArgumentModelItem(CodeModel *model, int kind = __node_kind);
-    virtual ~ArgumentModelItem();
-
-public:
-    TypeInfo *type() const;
-    void setType(TypeInfo *type);
-
-    bool defaultValue() const;
-    void setDefaultValue(bool defaultValue);
-
-    QString defaultValueExpression() const;
-    void setDefaultValueExpression(const QString &expr);
-
-private:
-    ArgumentModelItemData *d;
-};
-DECLARE_MODELITEM(Argument)
-
-class MemberModelItemData;
-class MemberModelItem: public CodeModelItem
-{
-public:
-    DECLARE_MODEL_NODE(Member)
-    MemberModelItem(CodeModel *model, int kind);
-    virtual ~MemberModelItem();
-
-    bool isConstant() const;
-    void setConstant(bool isConstant);
-
-    bool isVolatile() const;
-    void setVolatile(bool isVolatile);
-
-    bool isStatic() const;
-    void setStatic(bool isStatic);
-
-    bool isAuto() const;
-    void setAuto(bool isAuto);
-
-    bool isFriend() const;
-    void setFriend(bool isFriend);
-
-    bool isRegister() const;
-    void setRegister(bool isRegister);
-
-    bool isExtern() const;
-    void setExtern(bool isExtern);
-
-    bool isMutable() const;
-    void setMutable(bool isMutable);
-
-    CodeModel::AccessPolicy accessPolicy() const;
-    void setAccessPolicy(CodeModel::AccessPolicy accessPolicy);
-
-    TemplateParameterList templateParameters() const;
-    void setTemplateParameters(const TemplateParameterList &templateParameters);
-
-    TypeInfo *type() const;
-    void setType(TypeInfo *type);
-
-private:
-    MemberModelItemData *d;
-};
-DECLARE_MODELITEM(Member)
-
-class FunctionModelItemData;
-class FunctionModelItem: public MemberModelItem
-{
-public:
-    DECLARE_MODEL_NODE(Function)
-    FunctionModelItem(CodeModel *model, int kind = __node_kind);
-    virtual ~FunctionModelItem();
-
-    ArgumentList arguments() const;
-
-    void addArgument(ArgumentModelItem *item);
-
-    CodeModel::FunctionType functionType() const;
-    void setFunctionType(CodeModel::FunctionType functionType);
-
-    bool isVirtual() const;
-    void setVirtual(bool isVirtual);
-
-    bool isInline() const;
-    void setInline(bool isInline);
-
-    bool isExplicit() const;
-    void setExplicit(bool isExplicit);
-
-    bool isAbstract() const;
-    void setAbstract(bool isAbstract);
-
-    bool isVariadics() const;
-    void setVariadics(bool isVariadics);
-
-    bool isSimilar(FunctionModelItem *other) const;
-
-private:
-    FunctionModelItemData *d;
-};
-DECLARE_MODELITEM(Function)
-
-class FunctionDefinitionModelItem: public FunctionModelItem
-{
-public:
-    DECLARE_MODEL_NODE(FunctionDefinition)
-    FunctionDefinitionModelItem(CodeModel *model, int kind = __node_kind);
-    virtual ~FunctionDefinitionModelItem();
-};
-DECLARE_MODELITEM(FunctionDefinition)
-
-class VariableModelItem: public MemberModelItem
-{
-public:
-    DECLARE_MODEL_NODE(Variable)
-    VariableModelItem(CodeModel *model, int kind = __node_kind);
-    virtual ~VariableModelItem();
-};
-DECLARE_MODELITEM(Variable)
-
-class TypeAliasModelItemData;
-class TypeAliasModelItem: public CodeModelItem
-{
-public:
-    DECLARE_MODEL_NODE(TypeAlias)
-    TypeAliasModelItem(CodeModel *model, int kind = __node_kind);
-    virtual ~TypeAliasModelItem();
-
-    TypeInfo *type() const;
-    void setType(TypeInfo *type);
-
-private:
-    TypeAliasModelItemData *d;
-};
-DECLARE_MODELITEM(TypeAlias)
-
-class EnumModelItemData;
-class EnumModelItem: public CodeModelItem
-{
-public:
-    DECLARE_MODEL_NODE(Enum)
-    EnumModelItem(CodeModel *model, int kind = __node_kind);
-    virtual ~EnumModelItem();
-
-    CodeModel::AccessPolicy accessPolicy() const;
-    void setAccessPolicy(CodeModel::AccessPolicy accessPolicy);
-
-    EnumeratorList enumerators() const;
-    void addEnumerator(EnumeratorModelItem *item);
-
-private:
-    EnumModelItemData *d;
-};
-DECLARE_MODELITEM(Enum)
-
-class EnumeratorModelItemData;
-class EnumeratorModelItem: public CodeModelItem
-{
-public:
-    DECLARE_MODEL_NODE(Enumerator)
-    EnumeratorModelItem(CodeModel *model, int kind = __node_kind);
-    virtual ~EnumeratorModelItem();
-
-    QString value() const;
-    void setValue(const QString &value);
-
-private:
-    EnumeratorModelItemData *d;
-};
-DECLARE_MODELITEM(Enumerator)
-
-class TemplateParameterModelItemData;
-class TemplateParameterModelItem: public CodeModelItem
-{
-public:
-    DECLARE_MODEL_NODE(TemplateParameter)
-    TemplateParameterModelItem(CodeModel *model, int kind = __node_kind);
-    TemplateParameterModelItem(const TemplateParameterModelItem& item);
-    virtual ~TemplateParameterModelItem();
-
-    TypeInfo *type() const;
-    void setType(TypeInfo *type);
-
-    bool defaultValue() const;
-    void setDefaultValue(bool defaultValue);
-
-private:
-    TemplateParameterModelItemData *d;
-};
-DECLARE_MODELITEM(TemplateParameter)
-
-// ### todo, check language
-#define DECLARE_LANGUAGE_MODELITEM(name, language) \
-    template <> inline language##name##ModelItem *model_cast<##language##name##ModelItem *>(CodeModelItem *item) { \
-    if (item && item->kind() == CodeModelItem::Kind_##name) \
-        return static_cast<##language##name##ModelItem *>(item); \
-    return 0; }
-
-// ### todo, check language
-template <class T> inline T model_cast(CodeModel *item) { return 0; }
-
-#define DECLARE_LANGUAGE_CODEMODEL(language) \
-    template <> inline language##CodeModel *model_cast<##language##CodeModel *>(CodeModel *item) { \
-    return item ? static_cast<##language##CodeModel *>(item) : 0; }
-    
-#endif //CODEMODELITEMS_H
-
-// kate: space-indent on; indent-width 2; replace-tabs on;
diff --git a/tests/manual/cppmodelmanager/codemodel/compiler_utils.cpp b/tests/manual/cppmodelmanager/codemodel/compiler_utils.cpp
deleted file mode 100644
index ef4089841217d1835b415f1b0cf0e4d787e28677..0000000000000000000000000000000000000000
--- a/tests/manual/cppmodelmanager/codemodel/compiler_utils.cpp
+++ /dev/null
@@ -1,77 +0,0 @@
-/***************************************************************************
-**
-** This file is part of Qt Creator
-**
-** Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
-**
-** Contact:  Qt Software Information (qt-info@nokia.com)
-**
-**
-** Non-Open Source Usage
-**
-** Licensees may use this file in accordance with the Qt Beta Version
-** License Agreement, Agreement version 2.2 provided with the Software or,
-** alternatively, in accordance with the terms contained in a written
-** agreement between you and Nokia.
-**
-** GNU General Public License Usage
-**
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License versions 2.0 or 3.0 as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL included in the packaging
-** of this file.  Please review the following information to ensure GNU
-** General Public Licensing requirements will be met:
-**
-** http://www.fsf.org/licensing/licenses/info/GPLv2.html and
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt GPL Exception
-** version 1.2, included in the file GPL_EXCEPTION.txt in this package.
-**
-***************************************************************************/
-/* This file is part of KDevelop
-    Copyright (C) 2002-2005 Roberto Raggi <roberto@kdevelop.org>
-
-   This library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Library General Public
-   License version 2 as published by the Free Software Foundation.
-
-   This library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Library General Public License for more details.
-
-   You should have received a copy of the GNU Library General Public License
-   along with this library; see the file COPYING.LIB.  If not, write to
-   the Free Software Foundation, Inc., 51 Franklin Steet, Fifth Floor,
-   Boston, MA 02110-1301, USA.
-*/
-
-#include "compiler_utils.h"
-#include "type_compiler.h"
-#include "name_compiler.h"
-#include "declarator_compiler.h"
-#include "ast.h"
-#include "binder.h"
-
-TypeInfo *CompilerUtils::typeDescription(TypeSpecifierAST *type_specifier, DeclaratorAST *declarator, Binder *binder)
-{
-  TypeCompiler type_cc (binder);
-  DeclaratorCompiler decl_cc (binder);
-
-  type_cc.run (type_specifier);
-  decl_cc.run (declarator);
-
-  TypeInfo *typeInfo = new TypeInfo();
-  typeInfo->setQualifiedName (type_cc.qualifiedName ());
-  typeInfo->setConstant (type_cc.isConstant ());
-  typeInfo->setVolatile (type_cc.isVolatile ());
-  typeInfo->setReference (decl_cc.isReference ());
-  typeInfo->setIndirections (decl_cc.indirection ());
-  typeInfo->setArrayElements (decl_cc.arrayElements ());
-
-  return typeInfo;
-}
-
-// kate: space-indent on; indent-width 2; replace-tabs on;
diff --git a/tests/manual/cppmodelmanager/codemodel/compiler_utils.h b/tests/manual/cppmodelmanager/codemodel/compiler_utils.h
deleted file mode 100644
index 9ab16ac4b5a32a70b8a55643138c3605493d4fd2..0000000000000000000000000000000000000000
--- a/tests/manual/cppmodelmanager/codemodel/compiler_utils.h
+++ /dev/null
@@ -1,68 +0,0 @@
-/***************************************************************************
-**
-** This file is part of Qt Creator
-**
-** Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
-**
-** Contact:  Qt Software Information (qt-info@nokia.com)
-**
-**
-** Non-Open Source Usage
-**
-** Licensees may use this file in accordance with the Qt Beta Version
-** License Agreement, Agreement version 2.2 provided with the Software or,
-** alternatively, in accordance with the terms contained in a written
-** agreement between you and Nokia.
-**
-** GNU General Public License Usage
-**
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License versions 2.0 or 3.0 as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL included in the packaging
-** of this file.  Please review the following information to ensure GNU
-** General Public Licensing requirements will be met:
-**
-** http://www.fsf.org/licensing/licenses/info/GPLv2.html and
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt GPL Exception
-** version 1.2, included in the file GPL_EXCEPTION.txt in this package.
-**
-***************************************************************************/
-/* This file is part of KDevelop
-    Copyright (C) 2002-2005 Roberto Raggi <roberto@kdevelop.org>
-
-   This library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Library General Public
-   License version 2 as published by the Free Software Foundation.
-
-   This library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Library General Public License for more details.
-
-   You should have received a copy of the GNU Library General Public License
-   along with this library; see the file COPYING.LIB.  If not, write to
-   the Free Software Foundation, Inc., 51 Franklin Steet, Fifth Floor,
-   Boston, MA 02110-1301, USA.
-*/
-
-#ifndef COMPILER_UTILS_H
-#define COMPILER_UTILS_H
-
-struct TypeSpecifierAST;
-struct DeclaratorAST;
-class Binder;
-class TypeInfo;
-
-namespace CompilerUtils
-{
-
-TypeInfo *typeDescription(TypeSpecifierAST *type_specifier, DeclaratorAST *declarator, Binder *binder);
-
-} // namespace CompilerUtils
-
-#endif // COMPILER_UTILS_H
-
-// kate: space-indent on; indent-width 2; replace-tabs on;
diff --git a/tests/manual/cppmodelmanager/codemodel/declarator_compiler.cpp b/tests/manual/cppmodelmanager/codemodel/declarator_compiler.cpp
deleted file mode 100644
index 25ec729ccb38f0796e684774df6529220978e3b6..0000000000000000000000000000000000000000
--- a/tests/manual/cppmodelmanager/codemodel/declarator_compiler.cpp
+++ /dev/null
@@ -1,168 +0,0 @@
-/***************************************************************************
-**
-** This file is part of Qt Creator
-**
-** Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
-**
-** Contact:  Qt Software Information (qt-info@nokia.com)
-**
-**
-** Non-Open Source Usage
-**
-** Licensees may use this file in accordance with the Qt Beta Version
-** License Agreement, Agreement version 2.2 provided with the Software or,
-** alternatively, in accordance with the terms contained in a written
-** agreement between you and Nokia.
-**
-** GNU General Public License Usage
-**
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License versions 2.0 or 3.0 as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL included in the packaging
-** of this file.  Please review the following information to ensure GNU
-** General Public Licensing requirements will be met:
-**
-** http://www.fsf.org/licensing/licenses/info/GPLv2.html and
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt GPL Exception
-** version 1.2, included in the file GPL_EXCEPTION.txt in this package.
-**
-***************************************************************************/
-/* This file is part of KDevelop
-    Copyright (C) 2002-2005 Roberto Raggi <roberto@kdevelop.org>
-
-   This library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Library General Public
-   License version 2 as published by the Free Software Foundation.
-
-   This library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Library General Public License for more details.
-
-   You should have received a copy of the GNU Library General Public License
-   along with this library; see the file COPYING.LIB.  If not, write to
-   the Free Software Foundation, Inc., 51 Franklin Steet, Fifth Floor,
-   Boston, MA 02110-1301, USA.
-*/
-
-#include "declarator_compiler.h"
-#include "name_compiler.h"
-#include "type_compiler.h"
-#include "compiler_utils.h"
-#include "lexer.h"
-#include "binder.h"
-
-#include <qdebug.h>
-
-DeclaratorCompiler::DeclaratorCompiler(Binder *binder)
-  : _M_binder (binder), _M_token_stream (binder->tokenStream ())
-{
-}
-
-void DeclaratorCompiler::run(DeclaratorAST *node)
-{
-  _M_id.clear();
-  _M_parameters.clear();
-  _M_array.clear();
-  _M_function = false;
-  _M_reference = false;
-  _M_variadics = false;
-  _M_indirection = 0;
-
-  if (node)
-    {
-      NameCompiler name_cc(_M_binder);
-
-      DeclaratorAST *decl = node;
-      while (decl && decl->sub_declarator)
-        decl = decl->sub_declarator;
-
-      Q_ASSERT (decl != 0);
-
-      name_cc.run(decl->id);
-      _M_id = name_cc.qualifiedName();
-      _M_function = (node->parameter_declaration_clause != 0);
-      if (node->parameter_declaration_clause && node->parameter_declaration_clause->ellipsis)
-        _M_variadics = true;
-
-      visitNodes(this, node->ptr_ops);
-      visit(node->parameter_declaration_clause);
-
-      if (const ListNode<ExpressionAST*> *it = node->array_dimensions)
-        {
-          it->toFront();
-          const ListNode<ExpressionAST*> *end = it;
-
-          do
-            {
-              QString elt;
-              if (ExpressionAST *expr = it->element)
-                {
-                  const Token &start_token = _M_token_stream->token((int) expr->start_token);
-                  const Token &end_token = _M_token_stream->token((int) expr->end_token);
-
-                  elt += QString::fromUtf8(&start_token.text[start_token.position],
-                                           (int) (end_token.position - start_token.position)).trimmed();
-                }
-
-              _M_array.append (elt);
-
-              it = it->next;
-            }
-          while (it != end);
-        }
-    }
-}
-
-void DeclaratorCompiler::visitPtrOperator(PtrOperatorAST *node)
-{
-  std::size_t op =  _M_token_stream->kind(node->op);
-
-  switch (op)
-    {
-      case '&':
-        _M_reference = true;
-        break;
-      case '*':
-        ++_M_indirection;
-        break;
-
-      default:
-        break;
-    }
-
-  if (node->mem_ptr)
-    {
-#if defined(__GNUC__)
-#warning "ptr to mem -- not implemented"
-#endif
-    }
-}
-
-void DeclaratorCompiler::visitParameterDeclaration(ParameterDeclarationAST *node)
-{
-  Parameter p;
-
-  TypeCompiler type_cc(_M_binder);
-  DeclaratorCompiler decl_cc(_M_binder);
-
-  decl_cc.run(node->declarator);
-
-  p.name = decl_cc.id();
-  p.type = CompilerUtils::typeDescription(node->type_specifier, node->declarator, _M_binder);
-  if (node->expression != 0)
-    {
-      p.defaultValue = true;
-      const Token &start = _M_token_stream->token((int) node->expression->start_token);
-      const Token &end = _M_token_stream->token((int) node->expression->end_token);
-      int length = (int) (end.position - start.position);
-      p.defaultValueExpression = QString::fromUtf8(&start.text[start.position], length).trimmed();
-    }
-
-  _M_parameters.append(p);
-}
-
-// kate: space-indent on; indent-width 2; replace-tabs on;
diff --git a/tests/manual/cppmodelmanager/codemodel/declarator_compiler.h b/tests/manual/cppmodelmanager/codemodel/declarator_compiler.h
deleted file mode 100644
index b3e1625e16871a1dc1216096da944fa452f0c094..0000000000000000000000000000000000000000
--- a/tests/manual/cppmodelmanager/codemodel/declarator_compiler.h
+++ /dev/null
@@ -1,109 +0,0 @@
-/***************************************************************************
-**
-** This file is part of Qt Creator
-**
-** Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
-**
-** Contact:  Qt Software Information (qt-info@nokia.com)
-**
-**
-** Non-Open Source Usage
-**
-** Licensees may use this file in accordance with the Qt Beta Version
-** License Agreement, Agreement version 2.2 provided with the Software or,
-** alternatively, in accordance with the terms contained in a written
-** agreement between you and Nokia.
-**
-** GNU General Public License Usage
-**
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License versions 2.0 or 3.0 as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL included in the packaging
-** of this file.  Please review the following information to ensure GNU
-** General Public Licensing requirements will be met:
-**
-** http://www.fsf.org/licensing/licenses/info/GPLv2.html and
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt GPL Exception
-** version 1.2, included in the file GPL_EXCEPTION.txt in this package.
-**
-***************************************************************************/
-/* This file is part of KDevelop
-    Copyright (C) 2002-2005 Roberto Raggi <roberto@kdevelop.org>
-
-   This library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Library General Public
-   License version 2 as published by the Free Software Foundation.
-
-   This library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Library General Public License for more details.
-
-   You should have received a copy of the GNU Library General Public License
-   along with this library; see the file COPYING.LIB.  If not, write to
-   the Free Software Foundation, Inc., 51 Franklin Steet, Fifth Floor,
-   Boston, MA 02110-1301, USA.
-*/
-
-#ifndef DECLARATOR_COMPILER_H
-#define DECLARATOR_COMPILER_H
-
-#include "default_visitor.h"
-
-#include <QtCore/QString>
-#include <QtCore/QStringList>
-#include <QtCore/QList>
-
-class TokenStream;
-class Binder;
-class TypeInfo;
-
-class DeclaratorCompiler: protected DefaultVisitor
-{
-public:
-  struct Parameter
-  {
-    TypeInfo *type;
-    QString name;
-    QString defaultValueExpression;
-    bool defaultValue;
-
-    Parameter(): defaultValue(false) {}
-  };
-
-public:
-  DeclaratorCompiler(Binder *binder);
-
-  void run(DeclaratorAST *node);
-
-  inline QString id() const { return _M_id; }
-  inline QStringList arrayElements() const { return _M_array; }
-  inline bool isFunction() const { return _M_function; }
-  inline bool isVariadics() const { return _M_variadics; }
-  inline bool isReference() const { return _M_reference; }
-  inline int indirection() const { return _M_indirection; }
-  inline QList<Parameter> parameters() const { return _M_parameters; }
-
-protected:
-  virtual void visitPtrOperator(PtrOperatorAST *node);
-  virtual void visitParameterDeclaration(ParameterDeclarationAST *node);
-
-private:
-  Binder *_M_binder;
-  TokenStream *_M_token_stream;
-
-  bool _M_function;
-  bool _M_reference;
-  bool _M_variadics;
-  int _M_indirection;
-  QString _M_id;
-  QStringList _M_array;
-  QList<Parameter> _M_parameters;
-};
-
-#endif // DECLARATOR_COMPILER_H
-
-// kate: space-indent on; indent-width 2; replace-tabs on;
diff --git a/tests/manual/cppmodelmanager/codemodel/name_compiler.cpp b/tests/manual/cppmodelmanager/codemodel/name_compiler.cpp
deleted file mode 100644
index 4f725fd226cc8397870f94c4277e94079b91aaae..0000000000000000000000000000000000000000
--- a/tests/manual/cppmodelmanager/codemodel/name_compiler.cpp
+++ /dev/null
@@ -1,150 +0,0 @@
-/***************************************************************************
-**
-** This file is part of Qt Creator
-**
-** Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
-**
-** Contact:  Qt Software Information (qt-info@nokia.com)
-**
-**
-** Non-Open Source Usage
-**
-** Licensees may use this file in accordance with the Qt Beta Version
-** License Agreement, Agreement version 2.2 provided with the Software or,
-** alternatively, in accordance with the terms contained in a written
-** agreement between you and Nokia.
-**
-** GNU General Public License Usage
-**
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License versions 2.0 or 3.0 as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL included in the packaging
-** of this file.  Please review the following information to ensure GNU
-** General Public Licensing requirements will be met:
-**
-** http://www.fsf.org/licensing/licenses/info/GPLv2.html and
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt GPL Exception
-** version 1.2, included in the file GPL_EXCEPTION.txt in this package.
-**
-***************************************************************************/
-/* This file is part of KDevelop
-    Copyright (C) 2002-2005 Roberto Raggi <roberto@kdevelop.org>
-    Copyright (C) 2005 Trolltech
-
-   This library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Library General Public
-   License version 2 as published by the Free Software Foundation.
-
-   This library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Library General Public License for more details.
-
-   You should have received a copy of the GNU Library General Public License
-   along with this library; see the file COPYING.LIB.  If not, write to
-   the Free Software Foundation, Inc., 51 Franklin Steet, Fifth Floor,
-   Boston, MA 02110-1301, USA.
-*/
-
-#include "name_compiler.h"
-#include "type_compiler.h"
-#include "declarator_compiler.h"
-#include "lexer.h"
-#include "symbol.h"
-#include "binder.h"
-
-#include <QtCore/qdebug.h>
-
-NameCompiler::NameCompiler(Binder *binder)
-  : _M_binder (binder), _M_token_stream (binder->tokenStream ())
-{
-}
-
-QString NameCompiler::decode_operator(std::size_t index) const
-{
-  const Token &tk = _M_token_stream->token((int) index);
-  return QString::fromUtf8(&tk.text[tk.position], (int) tk.size);
-}
-
-void NameCompiler::internal_run(AST *node)
-{
-  _M_name.clear();
-  visit(node);
-}
-
-void NameCompiler::visitUnqualifiedName(UnqualifiedNameAST *node)
-{
-  QString tmp_name;
-
-  if (node->tilde)
-    tmp_name += QLatin1String("~");
-
-  if (node->id)
-    tmp_name += _M_token_stream->symbol(node->id)->as_string();
-
-  if (OperatorFunctionIdAST *op_id = node->operator_id)
-    {
-#if defined(__GNUC__)
-#warning "NameCompiler::visitUnqualifiedName() -- implement me"
-#endif
-
-      if (op_id->op && op_id->op->op)
-        {
-          tmp_name += QLatin1String("operator");
-          tmp_name += decode_operator(op_id->op->op);
-          if (op_id->op->close)
-            tmp_name += decode_operator(op_id->op->close);
-        }
-      else if (op_id->type_specifier)
-        {
-#if defined(__GNUC__)
-#warning "don't use an hardcoded string as cast' name"
-#endif
-          Token const &tk = _M_token_stream->token ((int) op_id->start_token);
-          Token const &end_tk = _M_token_stream->token ((int) op_id->end_token);
-          tmp_name += QString::fromLatin1 (&tk.text[tk.position],
-                                           (int) (end_tk.position - tk.position)).trimmed ();
-      }
-    }
-
-  if (!_M_name.isEmpty())
-      _M_name += QLatin1String("::");
-  _M_name += tmp_name;
-
-  if (node->template_arguments)
-    {
-      _M_name += QLatin1String("<");
-      visitNodes(this, node->template_arguments);
-      _M_name.truncate(_M_name.count() - 1); // remove the last ','
-      _M_name += QLatin1String(">");
-    }
-}
-
-void NameCompiler::visitTemplateArgument(TemplateArgumentAST *node)
-{
-  if (node->type_id && node->type_id->type_specifier)
-    {
-      TypeCompiler type_cc(_M_binder);
-      type_cc.run(node->type_id->type_specifier);
-
-      DeclaratorCompiler decl_cc(_M_binder);
-      decl_cc.run(node->type_id->declarator);
-
-      if (type_cc.isConstant())
-        _M_name += "const ";
-
-      _M_name += type_cc.qualifiedName ();
-
-      if (decl_cc.isReference())
-        _M_name += "&";
-      if (decl_cc.indirection())
-        _M_name += QString(decl_cc.indirection(), '*');
-
-      _M_name += QLatin1String(",");
-    }
-}
-
-// kate: space-indent on; indent-width 2; replace-tabs on;
diff --git a/tests/manual/cppmodelmanager/codemodel/name_compiler.h b/tests/manual/cppmodelmanager/codemodel/name_compiler.h
deleted file mode 100644
index 56cf27cfc080aa65a04aa9469b910d2c0589f993..0000000000000000000000000000000000000000
--- a/tests/manual/cppmodelmanager/codemodel/name_compiler.h
+++ /dev/null
@@ -1,85 +0,0 @@
-/***************************************************************************
-**
-** This file is part of Qt Creator
-**
-** Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
-**
-** Contact:  Qt Software Information (qt-info@nokia.com)
-**
-**
-** Non-Open Source Usage
-**
-** Licensees may use this file in accordance with the Qt Beta Version
-** License Agreement, Agreement version 2.2 provided with the Software or,
-** alternatively, in accordance with the terms contained in a written
-** agreement between you and Nokia.
-**
-** GNU General Public License Usage
-**
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License versions 2.0 or 3.0 as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL included in the packaging
-** of this file.  Please review the following information to ensure GNU
-** General Public Licensing requirements will be met:
-**
-** http://www.fsf.org/licensing/licenses/info/GPLv2.html and
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt GPL Exception
-** version 1.2, included in the file GPL_EXCEPTION.txt in this package.
-**
-***************************************************************************/
-/* This file is part of KDevelop
-    Copyright (C) 2002-2005 Roberto Raggi <roberto@kdevelop.org>
-
-   This library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Library General Public
-   License version 2 as published by the Free Software Foundation.
-
-   This library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Library General Public License for more details.
-
-   You should have received a copy of the GNU Library General Public License
-   along with this library; see the file COPYING.LIB.  If not, write to
-   the Free Software Foundation, Inc., 51 Franklin Steet, Fifth Floor,
-   Boston, MA 02110-1301, USA.
-*/
-
-#ifndef NAME_COMPILER_H
-#define NAME_COMPILER_H
-
-#include "default_visitor.h"
-#include <QtCore/QString>
-
-class TokenStream;
-class Binder;
-
-class NameCompiler: protected DefaultVisitor
-{
-public:
-  NameCompiler(Binder *binder);
-
-  void run(NameAST *node) { internal_run(node); }
-  void run(UnqualifiedNameAST *node) { internal_run(node); }
-
-  QString qualifiedName() const { return _M_name; }
-
-protected:
-  virtual void visitUnqualifiedName(UnqualifiedNameAST *node);
-  virtual void visitTemplateArgument(TemplateArgumentAST *node);
-
-  void internal_run(AST *node);
-  QString decode_operator(std::size_t index) const;
-
-private:
-  Binder *_M_binder;
-  TokenStream *_M_token_stream;
-  QString _M_name;
-};
-
-#endif // NAME_COMPILER_H
-
-// kate: space-indent on; indent-width 2; replace-tabs on;
diff --git a/tests/manual/cppmodelmanager/codemodel/type_compiler.cpp b/tests/manual/cppmodelmanager/codemodel/type_compiler.cpp
deleted file mode 100644
index 3d4c204a9e660531d60b36d7b483d7067911bcc0..0000000000000000000000000000000000000000
--- a/tests/manual/cppmodelmanager/codemodel/type_compiler.cpp
+++ /dev/null
@@ -1,169 +0,0 @@
-/***************************************************************************
-**
-** This file is part of Qt Creator
-**
-** Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
-**
-** Contact:  Qt Software Information (qt-info@nokia.com)
-**
-**
-** Non-Open Source Usage
-**
-** Licensees may use this file in accordance with the Qt Beta Version
-** License Agreement, Agreement version 2.2 provided with the Software or,
-** alternatively, in accordance with the terms contained in a written
-** agreement between you and Nokia.
-**
-** GNU General Public License Usage
-**
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License versions 2.0 or 3.0 as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL included in the packaging
-** of this file.  Please review the following information to ensure GNU
-** General Public Licensing requirements will be met:
-**
-** http://www.fsf.org/licensing/licenses/info/GPLv2.html and
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt GPL Exception
-** version 1.2, included in the file GPL_EXCEPTION.txt in this package.
-**
-***************************************************************************/
-/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
-
-/* This file is part of KDevelop
-    Copyright (C) 2002-2005 Roberto Raggi <roberto@kdevelop.org>
-    Copyright (C) 2005 Trolltech AS
-
-   This library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Library General Public
-   License version 2 as published by the Free Software Foundation.
-
-   This library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Library General Public License for more details.
-
-   You should have received a copy of the GNU Library General Public License
-   along with this library; see the file COPYING.LIB.  If not, write to
-   the Free Software Foundation, Inc., 51 Franklin Steet, Fifth Floor,
-   Boston, MA 02110-1301, USA.
-*/
-
-#include "type_compiler.h"
-#include "name_compiler.h"
-#include "lexer.h"
-#include "symbol.h"
-#include "tokens.h"
-#include "binder.h"
-
-#include <QtCore/QString>
-
-TypeCompiler::TypeCompiler(Binder *binder)
-  : _M_binder (binder), _M_token_stream(binder->tokenStream ())
-{
-}
-
-void TypeCompiler::run(TypeSpecifierAST *node)
-{
-  _M_type.clear();
-  _M_cv.clear();
-
-  visit(node);
-
-  if (node && node->cv)
-    {
-      const ListNode<std::size_t> *it = node->cv->toFront();
-      const ListNode<std::size_t> *end = it;
-      do
-        {
-          int kind = _M_token_stream->kind(it->element);
-          if (! _M_cv.contains(kind))
-            _M_cv.append(kind);
-
-          it = it->next;
-        }
-      while (it != end);
-    }
-}
-
-void TypeCompiler::visitClassSpecifier(ClassSpecifierAST *node)
-{
-  visit(node->name);
-}
-
-void TypeCompiler::visitEnumSpecifier(EnumSpecifierAST *node)
-{
-  visit(node->name);
-}
-
-void TypeCompiler::visitElaboratedTypeSpecifier(ElaboratedTypeSpecifierAST *node)
-{
-  visit(node->name);
-}
-
-void TypeCompiler::visitSimpleTypeSpecifier(SimpleTypeSpecifierAST *node)
-{
-  if (const ListNode<std::size_t> *it = node->integrals)
-    {
-      it = it->toFront();
-      const ListNode<std::size_t> *end = it;
-      QString current_item;
-      do
-        {
-          std::size_t token = it->element;
-          current_item += token_name(_M_token_stream->kind(token));
-          current_item += " ";
-          it = it->next;
-        }
-      while (it != end);
-      if (!_M_type.isEmpty())
-          _M_type += QLatin1String("::");
-      _M_type += current_item.trimmed();
-    }
-  else if (node->type_of)
-    {
-      // ### implement me
-
-      if (!_M_type.isEmpty())
-          _M_type += QLatin1String("::");
-      _M_type += QLatin1String("typeof<...>");
-    }
-
-  visit(node->name);
-}
-
-void TypeCompiler::visitName(NameAST *node)
-{
-  NameCompiler name_cc(_M_binder);
-  name_cc.run(node);
-  _M_type = name_cc.qualifiedName();
-}
-
-QStringList TypeCompiler::cvString() const
-{
-  QStringList lst;
-
-  foreach (int q, cv())
-    {
-      if (q == Token_const)
-        lst.append(QLatin1String("const"));
-      else if (q == Token_volatile)
-        lst.append(QLatin1String("volatile"));
-    }
-
-  return lst;
-}
-
-bool TypeCompiler::isConstant() const
-{
-  return _M_cv.contains(Token_const);
-}
-
-bool TypeCompiler::isVolatile() const
-{
-  return _M_cv.contains(Token_volatile);
-}
-
-// kate: space-indent on; indent-width 2; replace-tabs on;
diff --git a/tests/manual/cppmodelmanager/codemodel/type_compiler.h b/tests/manual/cppmodelmanager/codemodel/type_compiler.h
deleted file mode 100644
index 7b8ea25993b13b522d1e8b7e42fd7e2f523eacb0..0000000000000000000000000000000000000000
--- a/tests/manual/cppmodelmanager/codemodel/type_compiler.h
+++ /dev/null
@@ -1,95 +0,0 @@
-/***************************************************************************
-**
-** This file is part of Qt Creator
-**
-** Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
-**
-** Contact:  Qt Software Information (qt-info@nokia.com)
-**
-**
-** Non-Open Source Usage
-**
-** Licensees may use this file in accordance with the Qt Beta Version
-** License Agreement, Agreement version 2.2 provided with the Software or,
-** alternatively, in accordance with the terms contained in a written
-** agreement between you and Nokia.
-**
-** GNU General Public License Usage
-**
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License versions 2.0 or 3.0 as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL included in the packaging
-** of this file.  Please review the following information to ensure GNU
-** General Public Licensing requirements will be met:
-**
-** http://www.fsf.org/licensing/licenses/info/GPLv2.html and
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt GPL Exception
-** version 1.2, included in the file GPL_EXCEPTION.txt in this package.
-**
-***************************************************************************/
-/* This file is part of KDevelop
-    Copyright (C) 2002-2005 Roberto Raggi <roberto@kdevelop.org>
-
-   This library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Library General Public
-   License version 2 as published by the Free Software Foundation.
-
-   This library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Library General Public License for more details.
-
-   You should have received a copy of the GNU Library General Public License
-   along with this library; see the file COPYING.LIB.  If not, write to
-   the Free Software Foundation, Inc., 51 Franklin Steet, Fifth Floor,
-   Boston, MA 02110-1301, USA.
-*/
-
-#ifndef TYPE_COMPILER_H
-#define TYPE_COMPILER_H
-
-#include "default_visitor.h"
-
-#include <QtCore/QString>
-#include <QtCore/QStringList>
-#include <QtCore/QList>
-
-class TokenStream;
-class Binder;
-
-class TypeCompiler: protected DefaultVisitor
-{
-public:
-  TypeCompiler(Binder *binder);
-
-  inline QString qualifiedName() const { return _M_type; }
-  inline QList<int> cv() const { return _M_cv; }
-
-  bool isConstant() const;
-  bool isVolatile() const;
-
-  QStringList cvString() const;
-
-  void run(TypeSpecifierAST *node);
-
-protected:
-  virtual void visitClassSpecifier(ClassSpecifierAST *node);
-  virtual void visitEnumSpecifier(EnumSpecifierAST *node);
-  virtual void visitElaboratedTypeSpecifier(ElaboratedTypeSpecifierAST *node);
-  virtual void visitSimpleTypeSpecifier(SimpleTypeSpecifierAST *node);
-
-  virtual void visitName(NameAST *node);
-
-private:
-  Binder *_M_binder;
-  TokenStream *_M_token_stream;
-  QString _M_type;
-  QList<int> _M_cv;
-};
-
-#endif // TYPE_COMPILER_H
-
-// kate: space-indent on; indent-width 2; replace-tabs on;
diff --git a/tests/manual/cppmodelmanager/cppcodemodel.cpp b/tests/manual/cppmodelmanager/cppcodemodel.cpp
deleted file mode 100644
index 7836125716f894d7071627af711848d760dd134b..0000000000000000000000000000000000000000
--- a/tests/manual/cppmodelmanager/cppcodemodel.cpp
+++ /dev/null
@@ -1,204 +0,0 @@
-/***************************************************************************
-**
-** This file is part of Qt Creator
-**
-** Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
-**
-** Contact:  Qt Software Information (qt-info@nokia.com)
-**
-**
-** Non-Open Source Usage
-**
-** Licensees may use this file in accordance with the Qt Beta Version
-** License Agreement, Agreement version 2.2 provided with the Software or,
-** alternatively, in accordance with the terms contained in a written
-** agreement between you and Nokia.
-**
-** GNU General Public License Usage
-**
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License versions 2.0 or 3.0 as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL included in the packaging
-** of this file.  Please review the following information to ensure GNU
-** General Public Licensing requirements will be met:
-**
-** http://www.fsf.org/licensing/licenses/info/GPLv2.html and
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt GPL Exception
-** version 1.2, included in the file GPL_EXCEPTION.txt in this package.
-**
-***************************************************************************/
-#include <QtCore/QFile>
-#include <QtCore/QDir>
-#include <QtCore/QDebug>
-
-#include "cppcodemodelitems.h"
-#include "cpppartparser.h"
-#include "cppcodemodel.h"
-#include "cppcodemodelpart.h"
-
-CppCodeModel::CppCodeModel(const QByteArray &configuration, QObject *parent)
-    : QObject(parent)
-{
-    m_configuration = configuration;
-    m_parsefiles << QLatin1String("<configfile>");
-}
-
-CppCodeModel::~CppCodeModel()
-{
-    
-}
-
-void CppCodeModel::addIncludePath(const QString &path)
-{
-    QString newpath = QDir::cleanPath(path);
-    if (m_includedirs.contains(newpath))
-        return;
-
-    m_includedirs.insert(newpath, new CppCodeModelPart(newpath, this));
-}
-
-void CppCodeModel::removeIncludePath(const QString &path)
-{
-    QString newpath = QDir::cleanPath(path + QLatin1Char('/'));
-    if (!m_includedirs.contains(newpath))
-        return;
-
-    delete m_includedirs.take(newpath);
-}
-
-void CppCodeModel::update(const QStringList &files)
-{
-    m_parsefiles += m_parsefiles.fromList(files);
-
-    CppPartParser *parser = CppPartParser::instance(parent());
-    parser->parse(this);
-}
-
-QStringList CppCodeModel::needsParsing()
-{
-    QStringList result = m_parsefiles.toList();
-
-    if (m_parsefiles.contains(QLatin1String("<configfile>")))
-        result.prepend(QLatin1String("<configfile>"));
-
-    m_parsefiles.clear();
-    return result;
-}
-
-void CppCodeModel::resolvePart(const QString &abspath, CppCodeModelPart **part) const
-{
-    int length = 0;
-
-    QMap<QString, CppCodeModelPart *>::const_iterator i = m_includedirs.constBegin();
-    while (i != m_includedirs.constEnd()) {
-        if (abspath.startsWith(i.key()) && i.key().count() > length) {
-            length = i.key().count();
-            (*part) = i.value();
-        }
-        ++i;
-    }
-}
-
-void CppCodeModel::resolveGlobalPath(QString &file, CppCodeModelPart **part) const
-{
-    QString abspath;
-
-    (*part) = 0;
-    QMap<QString, CppCodeModelPart *>::const_iterator i = m_includedirs.constBegin();
-    while (i != m_includedirs.constEnd()) {
-        abspath = i.key() + QLatin1Char('/') + file;
-        QFileInfo fi(abspath);
-        if (fi.exists() && fi.isFile()) {
-            (*part) = i.value();
-            break;
-        }
-        ++i;
-    }
-
-    if (*part)
-        file = QDir::cleanPath(abspath);
-}
-
-void CppCodeModel::resolveLocalPath(QString &file, const QString &local, CppCodeModelPart **part) const
-{
-    (*part) = m_partcache.value(local, 0);
-    QFileInfo fi(local);
-    file = QDir::cleanPath(fi.absolutePath() + QLatin1Char('/') + file);
-}
-
-QByteArray *CppCodeModel::contents(QString &file, const QString &local)
-{
-    CppCodeModelPart *part = 0;
-
-    if (file == QLatin1String("<configfile>"))
-        return new QByteArray(m_configuration);
-
-    if (local.isEmpty()) {
-        resolveGlobalPath(file, &part);
-        if (!m_partcache.contains(file)) {
-            resolvePart(file, &part);
-            m_partcache.insert(file, part);
-        } else {
-            part = m_partcache.value(file, 0);
-        }
-    } else {
-        resolveLocalPath(file, local, &part);
-        m_partcache.insert(file, part);
-    }
-
-    if (!part) {
-        qDebug() << "Didn't find: " << file;
-        return 0;
-    }
-
-    return part->contents(file);
-}
-
-QHash<QString, pp_macro*> *CppCodeModel::macros()
-{
-    return &m_macros;
-}
-
-void CppCodeModel::store()
-{
-    QMap<QString, CppFileModelItem *>::const_iterator i = m_fileitems.constBegin();
-    while (i != m_fileitems.constEnd()) {
-        if (CppCodeModelPart *part = m_partcache.value(i.key()))
-            part->store(i.value());
-        ++i;
-    }
-    
-    m_partcache.clear();
-    m_fileitems.clear();
-}
-
-CppFileModelItem *CppCodeModel::fileItem(const QString &name)
-{
-    if (!m_partcache.contains(name))
-        return 0;
-
-    if (m_fileitems.contains(name))
-        return m_fileitems.value(name);
-
-    CppFileModelItem *item = new CppFileModelItem(this);
-    item->setPart(m_partcache.value(name));
-    item->setName(name);
-    item->setFile(item);
-    m_fileitems.insert(name, item);
-    return item;
-}
-
-bool CppCodeModel::hasScope(const QString &name) const
-{
-    QMap<QString, CppCodeModelPart *>::const_iterator i = m_includedirs.constBegin();
-    while (i != m_includedirs.constEnd()) {
-        if (i.value()->hasScope(name))
-            return true;
-        ++i;
-    }
-    return false;
-}
-
diff --git a/tests/manual/cppmodelmanager/cppcodemodel.h b/tests/manual/cppmodelmanager/cppcodemodel.h
deleted file mode 100644
index 7b79e8588a471f8289e9fd150d425db199128d81..0000000000000000000000000000000000000000
--- a/tests/manual/cppmodelmanager/cppcodemodel.h
+++ /dev/null
@@ -1,94 +0,0 @@
-/***************************************************************************
-**
-** This file is part of Qt Creator
-**
-** Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
-**
-** Contact:  Qt Software Information (qt-info@nokia.com)
-**
-**
-** Non-Open Source Usage
-**
-** Licensees may use this file in accordance with the Qt Beta Version
-** License Agreement, Agreement version 2.2 provided with the Software or,
-** alternatively, in accordance with the terms contained in a written
-** agreement between you and Nokia.
-**
-** GNU General Public License Usage
-**
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License versions 2.0 or 3.0 as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL included in the packaging
-** of this file.  Please review the following information to ensure GNU
-** General Public Licensing requirements will be met:
-**
-** http://www.fsf.org/licensing/licenses/info/GPLv2.html and
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt GPL Exception
-** version 1.2, included in the file GPL_EXCEPTION.txt in this package.
-**
-***************************************************************************/
-#ifndef CPPCODEMODEL_H
-#define CPPCODEMODEL_H
-
-#include <QtCore/QObject>
-#include <QtCore/QHash>
-#include <QtCore/QMap>
-#include <QtCore/QSet>
-#include <QtCore/QStringList>
-
-#include "cppcodemodelitems.h"
-
-class pp_macro;
-class CppCodeModelPart;
-class CppPartParser;
-class CppPartPP;
-
-class CppCodeModel : public QObject,
-    public CodeModel
-{
-    Q_OBJECT
-
-public:
-    CppCodeModel(const QByteArray &configuration, QObject *parent = 0);
-    ~CppCodeModel();
-
-    void addIncludePath(const QString &path);
-    void removeIncludePath(const QString &path);
-
-    void update(const QStringList &files);
-
-protected:
-    // returns the macros for this part
-    QStringList needsParsing();
-    QHash<QString, pp_macro*> *macros();
-    QByteArray *contents(QString &file, const QString &local = QString());
-    void store();
-
-    void resolvePart(const QString &abspath, CppCodeModelPart **part) const;
-    void resolveGlobalPath(QString &file, CppCodeModelPart **part) const;
-    void resolveLocalPath(QString &file, const QString &local, CppCodeModelPart **part) const;
-
-    // used by the parser
-    CppFileModelItem *fileItem(const QString &name);
-    bool hasScope(const QString &name) const;
-
-private:
-    QMap<QString, CppCodeModelPart *> m_partcache;
-    QMap<QString, CppFileModelItem *> m_fileitems;
-    QMap<QString, CppCodeModelPart *> m_includedirs;
-
-    QByteArray m_configuration;
-    QSet<QString> m_parsefiles;
-    QHash<QString, pp_macro*> m_macros;
-
-    friend class Binder;
-    friend class CodeModelFinder;
-    friend class CppPartParser;
-    friend class CppPartPP;
-};
-DECLARE_LANGUAGE_CODEMODEL(Cpp)
-
-#endif // CPPCODEMODELPART_H
diff --git a/tests/manual/cppmodelmanager/cppcodemodelitems.cpp b/tests/manual/cppmodelmanager/cppcodemodelitems.cpp
deleted file mode 100644
index d32a0fb49076d447a94957412afb72ff4153efe1..0000000000000000000000000000000000000000
--- a/tests/manual/cppmodelmanager/cppcodemodelitems.cpp
+++ /dev/null
@@ -1,122 +0,0 @@
-/***************************************************************************
-**
-** This file is part of Qt Creator
-**
-** Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
-**
-** Contact:  Qt Software Information (qt-info@nokia.com)
-**
-**
-** Non-Open Source Usage
-**
-** Licensees may use this file in accordance with the Qt Beta Version
-** License Agreement, Agreement version 2.2 provided with the Software or,
-** alternatively, in accordance with the terms contained in a written
-** agreement between you and Nokia.
-**
-** GNU General Public License Usage
-**
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License versions 2.0 or 3.0 as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL included in the packaging
-** of this file.  Please review the following information to ensure GNU
-** General Public Licensing requirements will be met:
-**
-** http://www.fsf.org/licensing/licenses/info/GPLv2.html and
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt GPL Exception
-** version 1.2, included in the file GPL_EXCEPTION.txt in this package.
-**
-***************************************************************************/
-/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
-
-/* This file is part of KDevelop
-Copyright (C) 2002-2005 Roberto Raggi <roberto@kdevelop.org>
-Copyright (C) 2005 Trolltech AS
-
-This library is free software; you can redistribute it and/or
-modify it under the terms of the GNU Library General Public
-License version 2 as published by the Free Software Foundation.
-
-This library is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-Library General Public License for more details.
-
-You should have received a copy of the GNU Library General Public License
-along with this library; see the file COPYING.LIB.  If not, write to
-the Free Software Foundation, Inc., 51 Franklin Steet, Fifth Floor,
-Boston, MA 02110-1301, USA.
-*/
-
-#include <QtCore/QHash>
-#include "cppcodemodelitems.h"
-#include "cppcodemodel.h"
-
-CppClassModelItem::CppClassModelItem(CppCodeModel *model)
-    : ClassModelItem(model) { }
-
-CppFileModelItem::CppFileModelItem(CppCodeModel *model)
-    : FileModelItem(model)
-{
-
-}
-
-CppFileModelItem::~CppFileModelItem()
-{
-    qDeleteAll(_M_externalscopes.values());
-}
-
-void CppFileModelItem::setPart(CppCodeModelPart *part)
-{
-    _M_part = part;
-}
-
-CppCodeModelPart *CppFileModelItem::part() const
-{
-    return _M_part;
-}
-
-ScopeModelItem *CppFileModelItem::findExternalScope(const QString &name) const
-{
-    return _M_externalscopes.value(name, 0);
-}
-
-void CppFileModelItem::addExternalScope(ScopeModelItem *item)
-{
-    _M_externalscopes.insert(item->qualifiedName(), item);
-}
-
-QList<ScopeModelItem* > CppFileModelItem::externalScopes() const
-{
-    return _M_externalscopes.values();
-}
-
-CppArgumentModelItem::CppArgumentModelItem(CppCodeModel *model)
-: ArgumentModelItem(model) { }
-
-CppFunctionDefinitionModelItem::CppFunctionDefinitionModelItem(CppCodeModel *model)
-: FunctionDefinitionModelItem(model) { }
-
-CppVariableModelItem::CppVariableModelItem(CppCodeModel *model)
-: VariableModelItem(model) { }
-
-CppTypeAliasModelItem::CppTypeAliasModelItem(CppCodeModel *model)
-: TypeAliasModelItem(model) { }
-
-CppEnumModelItem::CppEnumModelItem(CppCodeModel *model)
-: EnumModelItem(model) { }
-
-CppEnumeratorModelItem::CppEnumeratorModelItem(CppCodeModel *model)
-: EnumeratorModelItem(model) { }
-
-CppTemplateParameterModelItem::CppTemplateParameterModelItem(CppCodeModel *model)
-: TemplateParameterModelItem(model) { }
-
-CppTemplateParameterModelItem::CppTemplateParameterModelItem(const CppTemplateParameterModelItem &item)
-: TemplateParameterModelItem(item) { }
-
-// kate: space-indent on; indent-width 2; replace-tabs on;
-
diff --git a/tests/manual/cppmodelmanager/cppcodemodelitems.h b/tests/manual/cppmodelmanager/cppcodemodelitems.h
deleted file mode 100644
index 54494163696115c7424715ea30999e73c0017b9d..0000000000000000000000000000000000000000
--- a/tests/manual/cppmodelmanager/cppcodemodelitems.h
+++ /dev/null
@@ -1,138 +0,0 @@
-/***************************************************************************
-**
-** This file is part of Qt Creator
-**
-** Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
-**
-** Contact:  Qt Software Information (qt-info@nokia.com)
-**
-**
-** Non-Open Source Usage
-**
-** Licensees may use this file in accordance with the Qt Beta Version
-** License Agreement, Agreement version 2.2 provided with the Software or,
-** alternatively, in accordance with the terms contained in a written
-** agreement between you and Nokia.
-**
-** GNU General Public License Usage
-**
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License versions 2.0 or 3.0 as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL included in the packaging
-** of this file.  Please review the following information to ensure GNU
-** General Public Licensing requirements will be met:
-**
-** http://www.fsf.org/licensing/licenses/info/GPLv2.html and
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt GPL Exception
-** version 1.2, included in the file GPL_EXCEPTION.txt in this package.
-**
-***************************************************************************/
-/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
-
-/* This file is part of KDevelop
-Copyright (C) 2002-2005 Roberto Raggi <roberto@kdevelop.org>
-Copyright (C) 2005 Trolltech AS
-
-This library is free software; you can redistribute it and/or
-modify it under the terms of the GNU Library General Public
-License version 2 as published by the Free Software Foundation.
-
-This library is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-Library General Public License for more details.
-
-You should have received a copy of the GNU Library General Public License
-along with this library; see the file COPYING.LIB.  If not, write to
-the Free Software Foundation, Inc., 51 Franklin Steet, Fifth Floor,
-Boston, MA 02110-1301, USA.
-*/
-
-#ifndef CPPCODEMODELITEMS_H
-#define CPPCODEMODELITEMS_H
-
-class CppCodeModel;
-class CppCodeModelPart;
-#include "codemodel/codemodelitems.h"
-
-class CppClassModelItem: public ClassModelItem
-{
-public:
-    CppClassModelItem(CppCodeModel *model);
-};
-
-class CppFileModelItem: public FileModelItem
-{
-public:
-    CppFileModelItem(CppCodeModel *model);
-    ~CppFileModelItem();
-
-    void setPart(CppCodeModelPart *part);
-    CppCodeModelPart *part() const;
-    
-    ScopeModelItem *findExternalScope(const QString &name) const;
-    void addExternalScope(ScopeModelItem *item);
-    QList<ScopeModelItem *> externalScopes() const;
-
-private:
-    QHash<QString, ScopeModelItem *> _M_externalscopes;
-    CppCodeModelPart *_M_part;
-};
-DECLARE_LANGUAGE_MODELITEM(File, Cpp)
-
-class CppArgumentModelItem: public ArgumentModelItem
-{
-public:
-    CppArgumentModelItem(CppCodeModel *model);
-};
-DECLARE_LANGUAGE_MODELITEM(Argument, Cpp)
-
-class CppFunctionDefinitionModelItem : public FunctionDefinitionModelItem
-{
-public:
-    CppFunctionDefinitionModelItem(CppCodeModel *model);
-};
-DECLARE_LANGUAGE_MODELITEM(FunctionDefinition, Cpp)
-
-class CppVariableModelItem : public VariableModelItem
-{
-public:
-    CppVariableModelItem(CppCodeModel *model);
-};
-DECLARE_LANGUAGE_MODELITEM(Variable, Cpp)
-
-class CppTypeAliasModelItem : public TypeAliasModelItem
-{
-public:
-    CppTypeAliasModelItem(CppCodeModel *model);
-};
-DECLARE_LANGUAGE_MODELITEM(TypeAlias, Cpp)
-
-class CppEnumModelItem : public EnumModelItem
-{
-public:
-    CppEnumModelItem(CppCodeModel *model);
-};
-DECLARE_LANGUAGE_MODELITEM(Enum, Cpp)
-
-class CppEnumeratorModelItem : public EnumeratorModelItem
-{
-public:
-    CppEnumeratorModelItem(CppCodeModel *model);
-};
-DECLARE_LANGUAGE_MODELITEM(Enumerator, Cpp)
-
-class CppTemplateParameterModelItem : public TemplateParameterModelItem
-{
-public:
-    CppTemplateParameterModelItem(CppCodeModel *model);
-    CppTemplateParameterModelItem(const CppTemplateParameterModelItem &item);
-};
-DECLARE_LANGUAGE_MODELITEM(TemplateParameter, Cpp)
-
-#endif //CPPCODEMODELITEMS_H
-
-// kate: space-indent on; indent-width 2; replace-tabs on;
diff --git a/tests/manual/cppmodelmanager/cppcodemodelpart.cpp b/tests/manual/cppmodelmanager/cppcodemodelpart.cpp
deleted file mode 100644
index 4d8e277b6b7e7f2c19916842aeda638295d51919..0000000000000000000000000000000000000000
--- a/tests/manual/cppmodelmanager/cppcodemodelpart.cpp
+++ /dev/null
@@ -1,89 +0,0 @@
-/***************************************************************************
-**
-** This file is part of Qt Creator
-**
-** Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
-**
-** Contact:  Qt Software Information (qt-info@nokia.com)
-**
-**
-** Non-Open Source Usage
-**
-** Licensees may use this file in accordance with the Qt Beta Version
-** License Agreement, Agreement version 2.2 provided with the Software or,
-** alternatively, in accordance with the terms contained in a written
-** agreement between you and Nokia.
-**
-** GNU General Public License Usage
-**
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License versions 2.0 or 3.0 as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL included in the packaging
-** of this file.  Please review the following information to ensure GNU
-** General Public Licensing requirements will be met:
-**
-** http://www.fsf.org/licensing/licenses/info/GPLv2.html and
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt GPL Exception
-** version 1.2, included in the file GPL_EXCEPTION.txt in this package.
-**
-***************************************************************************/
-#include <QtCore/QFile>
-#include <QtCore/QDir>
-#include <QtCore/QFileInfoList>
-#include <QtCore/QFileInfo>
-#include <QtCore/QDebug>
-
-#include "cppcodemodelpart.h"
-#include "cpppartparser.h"
-#include "cppcodemodelitems.h"
-
-CppCodeModelPart::CppCodeModelPart(const QString &path, QObject *parent)
-    : QObject(parent)
-{
-    m_path = path;
-}
-
-CppCodeModelPart::~CppCodeModelPart()
-{
-
-}
-
-QString CppCodeModelPart::path() const
-{
-    return m_path;
-}
-
-void CppCodeModelPart::update()
-{
-
-}
-
-QByteArray *CppCodeModelPart::contents(const QString &file)
-{
-    QByteArray *result = new QByteArray();
-    if (!m_files.contains(file)) {
-        m_files.insert(file);
-        QFile f(file);
-        if (!f.open(QIODevice::ReadOnly))
-            return 0;
-        (*result) = f.readAll();
-        f.close();
-    }
-
-    return result;
-}
-
-void CppCodeModelPart::store(CppFileModelItem *item)
-{
-    qDebug() << "Deleting: " << item->name();
-    delete item;
-}
-
-bool CppCodeModelPart::hasScope(const QString &name) const
-{
-    // ### implement me
-    return true;
-}
diff --git a/tests/manual/cppmodelmanager/cppcodemodelpart.h b/tests/manual/cppmodelmanager/cppcodemodelpart.h
deleted file mode 100644
index 5c33f059a9c76780856c93361cf8f36fe81cefa6..0000000000000000000000000000000000000000
--- a/tests/manual/cppmodelmanager/cppcodemodelpart.h
+++ /dev/null
@@ -1,75 +0,0 @@
-/***************************************************************************
-**
-** This file is part of Qt Creator
-**
-** Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
-**
-** Contact:  Qt Software Information (qt-info@nokia.com)
-**
-**
-** Non-Open Source Usage
-**
-** Licensees may use this file in accordance with the Qt Beta Version
-** License Agreement, Agreement version 2.2 provided with the Software or,
-** alternatively, in accordance with the terms contained in a written
-** agreement between you and Nokia.
-**
-** GNU General Public License Usage
-**
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License versions 2.0 or 3.0 as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL included in the packaging
-** of this file.  Please review the following information to ensure GNU
-** General Public Licensing requirements will be met:
-**
-** http://www.fsf.org/licensing/licenses/info/GPLv2.html and
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt GPL Exception
-** version 1.2, included in the file GPL_EXCEPTION.txt in this package.
-**
-***************************************************************************/
-#ifndef CPPCODEMODELPART_H
-#define CPPCODEMODELPART_H
-
-#include <QtCore/QObject>
-#include <QtCore/QHash>
-#include <QtCore/QSet>
-#include <QtCore/QStringList>
-
-class CppCodeModel;
-class CppFileModelItem;
-
-class CppCodeModelPart : public QObject
-{
-    Q_OBJECT
-
-public:
-    CppCodeModelPart(const QString &path, QObject *parent = 0);
-    ~CppCodeModelPart();
-
-    QString path() const;
-    void update();
-
-protected:
-    // returns true if the given qualified name is known
-    bool hasScope(const QString &name) const;
-
-    // returns the contents of the file, this may be
-    // the current content of an open editor
-    // the byte array is deleted when no longer needed
-    QByteArray *contents(const QString &file);
-
-    // stores/replaces the parsed code model in the 
-    // database or memory
-    void store(CppFileModelItem *item);
-
-private:
-    QString m_path;
-    QSet<QString> m_files;
-
-    friend class CppCodeModel;
-};
-
-#endif // CPPCODEMODELPART_H
diff --git a/tests/manual/cppmodelmanager/cppmodelmanager.pro b/tests/manual/cppmodelmanager/cppmodelmanager.pro
deleted file mode 100644
index 714cc6c6a02e1ed491a7ed14e972300c4d696e46..0000000000000000000000000000000000000000
--- a/tests/manual/cppmodelmanager/cppmodelmanager.pro
+++ /dev/null
@@ -1,62 +0,0 @@
-# #####################################################################
-# Automatically generated by qmake (2.01a) ma 24. apr 11:14:33 2006
-# #####################################################################
-TEMPLATE = app
-TARGET = 
-QT += sql
-DEPENDPATH += .
-INCLUDEPATH += . \
-	codemodel
-include(../../../../cppparser/rxx.pri)|error("Can't find RXX")
-include(rpp/rpp.pri)
-SOURCES -= $$RXXPATH/codemodel.cpp \
-	$$RXXPATH/binder.cpp \
-	$$RXXPATH/codemodel_finder.cpp \
-	$$RXXPATH/compiler_utils.cpp \
-	$$RXXPATH/declarator_compiler.cpp \
-	$$RXXPATH/name_compiler.cpp \
-	$$RXXPATH/class_compiler.cpp \
-	$$RXXPATH/type_compiler.cpp
-
-HEADERS -= $$RXXPATH/codemodel.h \
-	$$RXXPATH/binder.h \
-	$$RXXPATH/codemodel_finder.h \
-	$$RXXPATH/compiler_utils.h \
-	$$RXXPATH/declarator_compiler.h \
-	$$RXXPATH/name_compiler.h \
-	$$RXXPATH/class_compiler.h \
-	$$RXXPATH/type_compiler.h \
-	$$RXXPATH/codemodel_fwd.h
-
-SOURCES += codemodel/codemodelitems.cpp \
-	codemodel/binder.cpp \
-	codemodel/codemodel_finder.cpp \
-	codemodel/compiler_utils.cpp \
-	codemodel/declarator_compiler.cpp \
-	codemodel/name_compiler.cpp \
-	codemodel/class_compiler.cpp \
-	codemodel/type_compiler.cpp
-
-HEADERS += codemodel/codemodelitems.h \
-	codemodel/binder.h \
-	codemodel/codemodel_finder.h \
-	codemodel/compiler_utils.h \
-	codemodel/declarator_compiler.h \
-	codemodel/name_compiler.h \
-	codemodel/class_compiler.h \
-	codemodel/type_compiler.h
-
-# Input
-SOURCES += main.cpp \
-    dbcodemodel.cpp \
-    cppcodemodel.cpp \
-    cppcodemodelitems.cpp \
-    cppcodemodelpart.cpp \
-    cpppartparser.cpp
-HEADERS += dbcodemodel.h \
-    cppcodemodelpart.h \
-    cppcodemodel.h \
-    cppcodemodelitems.h \
-    cpppartparser.h
-
-CONFIG += console
diff --git a/tests/manual/cppmodelmanager/cpppartparser.cpp b/tests/manual/cppmodelmanager/cpppartparser.cpp
deleted file mode 100644
index be7c26a6b1f3556b7ea027de16c85713eb37b473..0000000000000000000000000000000000000000
--- a/tests/manual/cppmodelmanager/cpppartparser.cpp
+++ /dev/null
@@ -1,204 +0,0 @@
-/***************************************************************************
-**
-** This file is part of Qt Creator
-**
-** Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
-**
-** Contact:  Qt Software Information (qt-info@nokia.com)
-**
-**
-** Non-Open Source Usage
-**
-** Licensees may use this file in accordance with the Qt Beta Version
-** License Agreement, Agreement version 2.2 provided with the Software or,
-** alternatively, in accordance with the terms contained in a written
-** agreement between you and Nokia.
-**
-** GNU General Public License Usage
-**
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License versions 2.0 or 3.0 as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL included in the packaging
-** of this file.  Please review the following information to ensure GNU
-** General Public Licensing requirements will be met:
-**
-** http://www.fsf.org/licensing/licenses/info/GPLv2.html and
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt GPL Exception
-** version 1.2, included in the file GPL_EXCEPTION.txt in this package.
-**
-***************************************************************************/
-#include <QtCore/QDebug>
-
-#include "cpppartparser.h"
-#include "cppcodemodel.h"
-
-#include "preprocessor.h"
-#include "pp-stream.h"
-#include "pp-engine.h"
-
-#include "parser.h"
-#include "control.h"
-
-#include "binder.h"
-
-CppPartParser *CppPartParser::m_instance = 0;
-
-// ****************************
-// CppStream
-// ****************************
-
-class CppStream : public Stream
-{
-public:
-    CppStream(QByteArray *array);
-    virtual ~CppStream();
-
-private:
-    QByteArray *m_array;
-};
-
-CppStream::CppStream(QByteArray *array)
-    : Stream(array)
-{
-    m_array = array;
-}
-
-CppStream::~CppStream()
-{
-    delete m_array;
-}
-
-// ****************************
-// CppPartPP
-// ****************************
-
-class CppPartPP : private Preprocessor
-{
-public:
-    QByteArray process(QString &fileName, CppCodeModel *model);
-
-protected:
-    Stream* sourceNeeded(QString& fileName, IncludeType type);
-
-private:
-    CppCodeModel *m_model;
-    pp *m_proc;
-};
-
-QByteArray CppPartPP::process(QString &fileName, CppCodeModel *model)
-{
-    QByteArray result;
-
-    m_model = model;
-    pp proc(this, (*model->macros()));
-    m_proc = &proc;
-    if (QByteArray *contents = m_model->contents(fileName)) {
-        result = proc.processFile(*(contents), fileName);
-        delete contents;
-    }
-
-    return result;
-}
-
-Stream* CppPartPP::sourceNeeded(QString& fileName, IncludeType type)
-{
-    QString localfile;
-    if (type == IncludeLocal)
-        localfile = m_proc->currentfile();
-
-    QByteArray *contents = m_model->contents(fileName, localfile);
-    if (!contents)
-        return 0;
-
-    return new CppStream(contents);
-}
-
-// ****************************
-// CppPartParser
-// ****************************
-
-CppPartParser::CppPartParser(QObject *parent)
-    : QThread(parent)
-{
-    m_cppPartPP = new CppPartPP();
-
-    m_cancelParsing = false;
-    m_currentModel = 0;
-}
-
-CppPartParser::~CppPartParser()
-{
-    delete m_cppPartPP;    
-}
-
-CppPartParser *CppPartParser::instance(QObject *parent)
-{
-    if (!m_instance)
-        m_instance = new CppPartParser(parent);
-
-    return m_instance;
-}
-
-void CppPartParser::parse(CppCodeModel *model)
-{
-    mutex.lock();
-    if (!m_modelQueue.contains(model))
-        m_modelQueue.enqueue(model);
-    mutex.unlock();
-
-    if (!isRunning()) {
-        m_cancelParsing = false;
-        start();
-        setPriority(QThread::LowPriority);
-    }
-}
-
-void CppPartParser::remove(CppCodeModel *model)
-{
-    mutex.lock();
-    if (m_modelQueue.contains(model))
-        m_modelQueue.removeAll(model);
-
-    if (m_currentModel == model) {
-        m_cancelParsing = true;
-        mutex.unlock();
-        wait();
-        m_cancelParsing = false;
-        start();
-        setPriority(QThread::LowPriority);
-    } else {
-        mutex.unlock();
-    }
-}
-
-void CppPartParser::run()
-{
-    while (!m_cancelParsing && !m_modelQueue.isEmpty()) {
-        mutex.lock();
-        m_currentModel = m_modelQueue.dequeue();
-        mutex.unlock();
-
-        QStringList files = m_currentModel->needsParsing();
-        for (int i=0; i<files.count() && !m_cancelParsing; ++i) {
-            QString resolvedName = files.at(i);
-            QByteArray ppcontent = m_cppPartPP->process(
-                resolvedName, m_currentModel);
-
-            Control control;
-            Parser p(&control);
-            pool __pool;
-
-            TranslationUnitAST *ast = p.parse(ppcontent, ppcontent.size(), &__pool);
-            qDebug() << p.problemCount();
-
-            Binder binder(m_currentModel, p.location());
-            binder.run(ast, resolvedName);
-
-            m_currentModel->store();
-        }
-    }
-}
-
diff --git a/tests/manual/cppmodelmanager/cpppartparser.h b/tests/manual/cppmodelmanager/cpppartparser.h
deleted file mode 100644
index 73142cd5fefe4dd304436273c6df3bd8a2a5d9b3..0000000000000000000000000000000000000000
--- a/tests/manual/cppmodelmanager/cpppartparser.h
+++ /dev/null
@@ -1,72 +0,0 @@
-/***************************************************************************
-**
-** This file is part of Qt Creator
-**
-** Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
-**
-** Contact:  Qt Software Information (qt-info@nokia.com)
-**
-**
-** Non-Open Source Usage
-**
-** Licensees may use this file in accordance with the Qt Beta Version
-** License Agreement, Agreement version 2.2 provided with the Software or,
-** alternatively, in accordance with the terms contained in a written
-** agreement between you and Nokia.
-**
-** GNU General Public License Usage
-**
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License versions 2.0 or 3.0 as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL included in the packaging
-** of this file.  Please review the following information to ensure GNU
-** General Public Licensing requirements will be met:
-**
-** http://www.fsf.org/licensing/licenses/info/GPLv2.html and
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt GPL Exception
-** version 1.2, included in the file GPL_EXCEPTION.txt in this package.
-**
-***************************************************************************/
-#ifndef CPPPARTPARSER_H
-#define CPPPARTPARSER_H
-
-#include <QtCore/QThread>
-#include <QtCore/QMutex>
-#include <QtCore/QQueue>
-
-class CppPartPP;
-class CppCodeModel;
-
-class CppPartParser : public QThread
-{
-    Q_OBJECT
-
-public:
-    ~CppPartParser();
-
-    static CppPartParser *instance(QObject *parent = 0);
-    void parse(CppCodeModel *model);
-    void remove(CppCodeModel *model);
-
-protected:
-    void run();
-    CppPartParser(QObject *parent = 0);
-
-private:
-    QMutex mutex;
-    
-    bool m_cancelParsing;
-    CppCodeModel *m_currentModel;
-
-    QQueue<CppCodeModel *> m_modelQueue;
-
-    static CppPartParser *m_instance;
-
-    CppPartPP *m_cppPartPP;
-    friend class CppPartPP;
-};
-
-#endif //CPPPARTPARSER_H
diff --git a/tests/manual/cppmodelmanager/dbcodemodel.cpp b/tests/manual/cppmodelmanager/dbcodemodel.cpp
deleted file mode 100644
index b92573ff1c38117ca219b1f17f92a65bd6209414..0000000000000000000000000000000000000000
--- a/tests/manual/cppmodelmanager/dbcodemodel.cpp
+++ /dev/null
@@ -1,147 +0,0 @@
-/***************************************************************************
-**
-** This file is part of Qt Creator
-**
-** Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
-**
-** Contact:  Qt Software Information (qt-info@nokia.com)
-**
-**
-** Non-Open Source Usage
-**
-** Licensees may use this file in accordance with the Qt Beta Version
-** License Agreement, Agreement version 2.2 provided with the Software or,
-** alternatively, in accordance with the terms contained in a written
-** agreement between you and Nokia.
-**
-** GNU General Public License Usage
-**
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License versions 2.0 or 3.0 as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL included in the packaging
-** of this file.  Please review the following information to ensure GNU
-** General Public Licensing requirements will be met:
-**
-** http://www.fsf.org/licensing/licenses/info/GPLv2.html and
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt GPL Exception
-** version 1.2, included in the file GPL_EXCEPTION.txt in this package.
-**
-***************************************************************************/
-#include <QtCore/QFile>
-
-#include "dbcodemodel.h"
-
-DBCodeModel::DBCodeModel(QObject *parent) 
-    : QObject(parent)
-{
-                
-}
-
-DBCodeModel::~DBCodeModel()
-{
-    
-}
-
-bool DBCodeModel::open(const QString &fileName)
-{
-    m_db = QSqlDatabase::addDatabase("QSQLITE", fileName);
-    
-    if (!QFile::exists(fileName)) {
-        m_db.setDatabaseName(fileName);
-        if (!m_db.open() || !create())
-            return false;
-    } else {
-        m_db.setDatabaseName(fileName);
-        if (!m_db.open()) // || !update(fileName))
-            return false;
-    }
-    
-    return true;
-}
-
-bool DBCodeModel::create()
-{
-    QSqlQuery query(m_db);
-
-    // table to store type information
-    query.exec("CREATE TABLE TYPEINFO ("
-               "id         INTEGER PRIMARY KEY, "
-               "typename   TEXT, "
-               "typeflags  INTEGER, "
-               ")");
-
-    // table to store position information
-    query.exec("CREATE TABLE POSITION ("
-               "id         INTEGER PRIMARY KEY, "
-               "sline      INTEGER, "
-               "scolumn    INTEGER, "
-               "eline      INTEGER, "
-               "ecolumn    INTEGER"
-               ")");
-    
-    // table to store files (global namespace), namespaces, unions, structs and classes
-    query.exec("CREATE TABLE SCOPE ("
-               "id         INTEGER PRIMARY KEY, "
-               "scopetype  INTEGER, "
-               "name       TEXT, "
-               "parent     INTEGER, "
-               "posid      INTEGER, "
-               "fileid     INTEGER"
-               ")");
-    
-    // table to store scope member information
-    // a scope member is a enum, function, variable or typealias
-    query.exec("CREATE TABLE SCOPEMEMBER ("
-               "id         INTEGER PRIMARY KEY, "
-               "membertype INTEGER, "
-               "name       TEXT, "
-               "scopeid    INTEGER, "
-               "flags      INTEGER, "
-               "typeid     INTEGER, "
-               "posid      INTEGER, "
-               "fileid     INTEGER"
-               ")");    
-    
-    // table to store arguments
-    // used if the membertype is a function
-    query.exec("CREATE TABLE ARGUMENT ("
-               "name       TEXT, "
-               "default    TEXT, "
-               "argnr      INTEGER, "
-               "typeid     INTEGER, "
-               "memberid   INTEGER"
-               ")");
-    
-    // table to store enumerators
-    // used if the membertype is an enum
-    query.exec("CREATE TABLE ENUMERATOR ("
-               "name       TEXT, "
-               "value      INTEGER, "
-               "memberid   INTEGER"
-               ")");    
-
-    // table to store arguments to types
-    // used if typeflags indicates that it has arguments (i.e. function pointers)
-    query.exec("CREATE TABLE TYPEARGUMENT ("
-               "parentid   INTEGER, "
-               "argnr      INTEGER, "
-               "typeid     INTEGER"
-               ")");
-    
-    // table to store the class hierarchy
-    query.exec("CREATE TABLE CLASSHIERARCHY ("
-               "scopeid  INTEGER, "
-               "basename   TEXT"
-               ")");
-    
-    // table to store all the modified timestamps used
-    // for updating the database
-    query.exec("CREATE TABLE MODIFIED ("
-               "fileid     INTEGER, "
-               "modified   INTEGER)");
-    
-    return true;
-}
diff --git a/tests/manual/cppmodelmanager/dbcodemodel.h b/tests/manual/cppmodelmanager/dbcodemodel.h
deleted file mode 100644
index ac2adb8fe8eb16a86de93fca1b8b68dbdd06de56..0000000000000000000000000000000000000000
--- a/tests/manual/cppmodelmanager/dbcodemodel.h
+++ /dev/null
@@ -1,55 +0,0 @@
-/***************************************************************************
-**
-** This file is part of Qt Creator
-**
-** Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
-**
-** Contact:  Qt Software Information (qt-info@nokia.com)
-**
-**
-** Non-Open Source Usage
-**
-** Licensees may use this file in accordance with the Qt Beta Version
-** License Agreement, Agreement version 2.2 provided with the Software or,
-** alternatively, in accordance with the terms contained in a written
-** agreement between you and Nokia.
-**
-** GNU General Public License Usage
-**
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License versions 2.0 or 3.0 as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL included in the packaging
-** of this file.  Please review the following information to ensure GNU
-** General Public Licensing requirements will be met:
-**
-** http://www.fsf.org/licensing/licenses/info/GPLv2.html and
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt GPL Exception
-** version 1.2, included in the file GPL_EXCEPTION.txt in this package.
-**
-***************************************************************************/
-#ifndef DBCODEMODEL_H
-#define DBCODEMODEL_H
-
-#include <QtSql>
-
-class DBCodeModel : public QObject
-{
-    Q_OBJECT
-
-public:
-    DBCodeModel(QObject *parent = 0);
-    ~DBCodeModel();
-    
-    bool open(const QString &fileName);
-    
-protected:
-    bool create();
-    
-private:
-    QSqlDatabase m_db;
-};
-
-#endif // DBCODEMODEL_H
diff --git a/tests/manual/cppmodelmanager/main.cpp b/tests/manual/cppmodelmanager/main.cpp
deleted file mode 100644
index e49c37345c649b01431ddd48d61a0b8d8bd12049..0000000000000000000000000000000000000000
--- a/tests/manual/cppmodelmanager/main.cpp
+++ /dev/null
@@ -1,81 +0,0 @@
-/***************************************************************************
-**
-** This file is part of Qt Creator
-**
-** Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
-**
-** Contact:  Qt Software Information (qt-info@nokia.com)
-**
-**
-** Non-Open Source Usage
-**
-** Licensees may use this file in accordance with the Qt Beta Version
-** License Agreement, Agreement version 2.2 provided with the Software or,
-** alternatively, in accordance with the terms contained in a written
-** agreement between you and Nokia.
-**
-** GNU General Public License Usage
-**
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License versions 2.0 or 3.0 as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL included in the packaging
-** of this file.  Please review the following information to ensure GNU
-** General Public Licensing requirements will be met:
-**
-** http://www.fsf.org/licensing/licenses/info/GPLv2.html and
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt GPL Exception
-** version 1.2, included in the file GPL_EXCEPTION.txt in this package.
-**
-***************************************************************************/
-#include <QtCore>
-
-#include "cppcodemodel.h"
-#include "preprocessor.h"
-
-int main(int argc, char *argv[])
-{
-    QCoreApplication app(argc, argv);
-
-    QFile f("C:\\depot\\research\\main\\cppparser\\rpp\\pp-qt-configuration");
-    f.open(QIODevice::ReadOnly);
-    CppCodeModel model(f.readAll());
-    f.close();
-
-    model.addIncludePath("C:\\depot\\qt\\4.1\\include\\");
-    model.addIncludePath("C:\\depot\\qt\\4.1\\include\\QtCore");
-    model.addIncludePath("C:\\depot\\qt\\4.1\\include\\QtGui");
-
-/*    model.addIncludePath("C:\\depot\\research\\main\\qworkbench\\tests\\manual\\cppmodelmanager\\tests"); */
-    model.update(QStringList() << "qwidget.h");
-
-//    return app.exec();
-    return 0;
-
-/*    Preprocessor pp;
-    pp.addIncludePaths(QStringList() << "C:/depot/qt/4.1/include/QtCore/");
-    pp.processFile("C:/depot/research/main/cppparser/rpp/pp-qt-configuration");
-    QString ppstuff = pp.processFile("test.h");
-
-    
-    Control control;
-    Parser p(&control);
-    pool __pool;
-
-    QByteArray byteArray = ppstuff.toUtf8();
-    TranslationUnitAST *ast = p.parse(byteArray, byteArray.size(), &__pool);
-    qDebug() << p.problemCount();
-
-    CodeModel model;
-    Binder binder(&model, p.location());
-    FileModelItem fileModel = binder.run(ast);
-    
-    qDebug() << "Count: " << model.files().count(); */
-    
-/*    DBCodeModel db;
-    db.open("c:/bin/test.cdb"); */
-
-
-}
diff --git a/tests/manual/cppmodelmanager/rpp/pp-engine.cpp b/tests/manual/cppmodelmanager/rpp/pp-engine.cpp
deleted file mode 100644
index 46858bffd9aca23bfc6541396dc93339bae481b8..0000000000000000000000000000000000000000
--- a/tests/manual/cppmodelmanager/rpp/pp-engine.cpp
+++ /dev/null
@@ -1,1117 +0,0 @@
-/***************************************************************************
-**
-** This file is part of Qt Creator
-**
-** Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
-**
-** Contact:  Qt Software Information (qt-info@nokia.com)
-**
-**
-** Non-Open Source Usage
-**
-** Licensees may use this file in accordance with the Qt Beta Version
-** License Agreement, Agreement version 2.2 provided with the Software or,
-** alternatively, in accordance with the terms contained in a written
-** agreement between you and Nokia.
-**
-** GNU General Public License Usage
-**
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License versions 2.0 or 3.0 as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL included in the packaging
-** of this file.  Please review the following information to ensure GNU
-** General Public Licensing requirements will be met:
-**
-** http://www.fsf.org/licensing/licenses/info/GPLv2.html and
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt GPL Exception
-** version 1.2, included in the file GPL_EXCEPTION.txt in this package.
-**
-***************************************************************************/
-/*
-  Copyright 2005 Roberto Raggi <roberto@kdevelop.org>
-  Copyright 2006 Hamish Rodda <rodda@kde.org>
-
-  Permission to use, copy, modify, distribute, and sell this software and its
-  documentation for any purpose is hereby granted without fee, provided that
-  the above copyright notice appear in all copies and that both that
-  copyright notice and this permission notice appear in supporting
-  documentation.
-
-  The above copyright notice and this permission notice shall be included in
-  all copies or substantial portions of the Software.
-
-  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
-  KDEVELOP TEAM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
-  AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
-  CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-*/
-
-#include "pp-engine.h"
-
-#include <QFile>
-
-#include <QtCore/QDebug>
-
-#include "pp-internal.h"
-#include "preprocessor.h"
-
-pp::pp(Preprocessor* preprocessor, QHash<QString, pp_macro*>& environment)
-  : m_environment(environment)
-  , expand(this)
-  , m_preprocessor(preprocessor)
-  , nextToken(0)
-  , haveNextToken(false)
-  , hideNext(false)
-{
-  iflevel = 0;
-  _M_skipping[iflevel] = 0;
-  _M_true_test[iflevel] = 0;
-}
-
-QList<pp::ErrorMessage> pp::errorMessages () const
-{
-  return _M_error_messages;
-}
-
-void pp::clearErrorMessages ()
-{
-  _M_error_messages.clear ();
-}
-
-void pp::reportError (const QString &fileName, int line, int column, const QString &message)
-{
-  ErrorMessage msg;
-  msg.setFileName (fileName);
-  msg.setLine (line);
-  msg.setColumn (column);
-  msg.setMessage (message);
-
-  _M_error_messages.append (msg);
-}
-
-QString pp::processFile(const QString& filename)
-{
-  QFile file(filename);
-  if (file.open(QIODevice::ReadOnly))
-  {
-    m_files.push(filename);
-
-    Stream is(&file);
-    QString result;
-
-    {
-      Stream rs(&result);
-      operator () (is, rs);
-    }
-
-    return result;
-  }
-
-  qWarning() << "file '" << filename << "' not found!" << endl;
-  return QString();
-}
-
-QString pp::processFile(QIODevice* device)
-{
-  Q_ASSERT(device);
-
-  QString result;
-  m_files.push("<internal>");
-
-  {
-    Stream is(device);
-    Stream rs(&result);
-    operator () (is, rs);
-  }
-
-  return result;
-}
-
-QString pp::processFile(const QByteArray& input)
-{
-  QString result;
-  m_files.push("<internal>");
-
-  {
-    Stream is(input);
-    Stream rs(&result);
-    operator () (is, rs);
-  }
-
-  return result;
-}
-
-QByteArray pp::processFile(const QByteArray& input, const QString &fileName)
-{
-  QByteArray result;
-  m_files.push(fileName);
-
-  {
-    Stream is(input);
-    Stream rs(&result);
-    operator () (is, rs);
-  }
-
-  return result;
-}
-
-QString pp::find_header_protection(Stream& input)
-{
-  while (!input.atEnd())
-  {
-    if (input.current().isSpace())
-    {
-      ++input;
-    }
-    else if (PPInternal::isComment(input))
-    {
-      skip_comment_or_divop (input, PPInternal::devnull());
-    }
-    else if (input == '#')
-    {
-      skip_blanks (++input, PPInternal::devnull());
-
-      if (!input.atEnd() && input == 'i')
-      {
-        QString directive = skip_identifier(input);
-
-        if (directive == "ifndef")
-        {
-          skip_blanks (input, PPInternal::devnull());
-
-          QString define = skip_identifier(input);
-
-          if (!define.isEmpty() && !input.atEnd())
-          {
-            input.reset();
-            return define;
-          }
-        }
-      }
-      break;
-
-    } else {
-      break;
-    }
-  }
-
-  input.reset();
-  return QString();
-}
-
-pp::PP_DIRECTIVE_TYPE pp::find_directive (const QString& directive) const
-{
-  static QHash<QString, PP_DIRECTIVE_TYPE> directiveHash;
-  if (directiveHash.isEmpty()) {
-    directiveHash.insert("if", PP_IF);
-    directiveHash.insert("elif", PP_ELIF);
-    directiveHash.insert("else", PP_ELSE);
-    directiveHash.insert("ifdef", PP_IFDEF);
-    directiveHash.insert("undef", PP_UNDEF);
-    directiveHash.insert("endif", PP_ENDIF);
-    directiveHash.insert("ifndef", PP_IFNDEF);
-    directiveHash.insert("define", PP_DEFINE);
-    directiveHash.insert("include", PP_INCLUDE);
-  }
-
-  if (directiveHash.contains(directive))
-    return directiveHash[directive];
-
-  return PP_UNKNOWN_DIRECTIVE;
-}
-
-void pp::handle_directive(const QString& directive, Stream& input, Stream& output)
-{
-  skip_blanks (input, output);
-
-  switch (find_directive(directive))
-  {
-    case PP_DEFINE:
-      if (! skipping ())
-        return handle_define(input);
-      break;
-
-    case PP_INCLUDE:
-      if (! skipping ())
-        return handle_include (input, output);
-      break;
-
-    case PP_UNDEF:
-      if (! skipping ())
-        return handle_undef(input);
-      break;
-
-    case PP_ELIF:
-      return handle_elif(input);
-
-    case PP_ELSE:
-      return handle_else();
-
-    case PP_ENDIF:
-      return handle_endif();
-
-    case PP_IF:
-      return handle_if(input);
-
-    case PP_IFDEF:
-      return handle_ifdef(false, input);
-
-    case PP_IFNDEF:
-      return handle_ifdef(true, input);
-
-    default:
-      break;
-  }
-}
-
-void pp::handle_include(Stream& input, Stream& output)
-{
-  Q_ASSERT(input == '<' || input == '"');
-  QChar quote((input == '"') ? '"' : '>');
-  ++input;
-
-  QString includeName;
-
-  while (!input.atEnd() && input != quote) {
-    Q_ASSERT(input != '\n');
-
-    includeName.append(input);
-    ++input;
-  }
-
-  Stream* include = m_preprocessor->sourceNeeded(includeName, 
-      quote == '"' ? Preprocessor::IncludeLocal : Preprocessor::IncludeGlobal);
-  if (include && !include->atEnd()) {
-    m_files.push(includeName);
-
-    output.mark(includeName, 0);
-
-    operator()(*include, output);
-
-    // restore the file name and sync the buffer
-    m_files.pop();
-    output.mark(m_files.top(), input.inputLineNumber());
-  }
-
-  delete include;
-}
-
-void pp::operator () (Stream& input, Stream& output)
-{
-#ifndef PP_NO_SMART_HEADER_PROTECTION
-  QString headerDefine = find_header_protection(input);
-  if (m_environment.contains(headerDefine))
-  {
-    //kDebug() << k_funcinfo << "found header protection: " << headerDefine << endl;
-    return;
-  }
-#endif
-
-  forever
-  {
-    if (skipping()) {
-      skip_blanks(input, PPInternal::devnull());
-
-    } else {
-      skip_blanks(input, output);
-    }
-
-    if (input.atEnd()) {
-      break;
-
-    } else if (input == '#') {
-      skip_blanks(++input, PPInternal::devnull());
-
-      QString directive = skip_identifier(input);
-
-      Q_ASSERT(directive.length() < 512);
-
-      skip_blanks(input, PPInternal::devnull());
-
-      QString skipped;
-      {
-        Stream ss(&skipped);
-        skip (input, ss);
-      }
-
-      Stream ss(&skipped);
-      handle_directive(directive, ss, output);
-
-    } else if (input == '\n') {
-      checkMarkNeeded(input, output);
-      output << input;
-      ++input;
-
-    } else if (skipping ()) {
-      skip (input, PPInternal::devnull());
-
-    } else {
-      checkMarkNeeded(input, output);
-      expand (input, output);
-    }
-  }
-}
-
-void pp::checkMarkNeeded(Stream& input, Stream& output)
-{
-  if (input.inputLineNumber() != output.outputLineNumber() && !output.isNull())
-    output.mark(m_files.top(), input.inputLineNumber());
-}
-
-void pp::handle_define (Stream& input)
-{
-  pp_macro* macro = new pp_macro();
-#if defined (PP_WITH_MACRO_POSITION)
-  macro->file = m_files.top();
-#endif
-  QString definition;
-
-  skip_blanks (input, PPInternal::devnull());
-  QString macro_name = skip_identifier(input);
-
-  if (!input.atEnd() && input == '(')
-  {
-    macro->function_like = true;
-
-    skip_blanks (++input, PPInternal::devnull()); // skip '('
-    QString formal = skip_identifier(input);
-    if (!formal.isEmpty())
-      macro->formals << formal;
-
-    skip_blanks(input, PPInternal::devnull());
-
-    if (input == '.') {
-      macro->variadics = true;
-
-      do {
-        ++input;
-
-      } while (input == '.');
-    }
-
-    while (!input.atEnd() && input == ',')
-    {
-      skip_blanks(++input, PPInternal::devnull());
-
-      QString formal = skip_identifier(input);
-      if (!formal.isEmpty())
-        macro->formals << formal;
-
-      skip_blanks (input, PPInternal::devnull());
-
-      if (input == '.') {
-        macro->variadics = true;
-
-        do {
-          ++input;
-
-        } while (input == '.');
-      }
-    }
-
-    Q_ASSERT(input == ')');
-    ++input;
-  }
-
-  skip_blanks (input, PPInternal::devnull());
-
-  while (!input.atEnd() && input != '\n')
-  {
-    if (input == '\\')
-    {
-      qint64 pos = input.pos();
-      skip_blanks (++input, PPInternal::devnull());
-
-      if (!input.atEnd() && input == '\n')
-      {
-        ++macro->lines;
-        skip_blanks(++input, PPInternal::devnull());
-        definition += ' ';
-        continue;
-
-      } else {
-        // Whoops, rewind :)
-        input.seek(pos);
-      }
-    }
-
-    definition += input;
-    ++input;
-  }
-
-  macro->definition = definition;
-
-  if (pp_macro* replacemacro = m_environment.value(macro_name, 0))
-      delete replacemacro;
-
-  m_environment.insert(macro_name, macro);
-}
-
-
-void pp::skip (Stream& input, Stream& output, bool outputText)
-{
-  pp_skip_string_literal skip_string_literal;
-  pp_skip_char_literal skip_char_literal;
-
-  while (!input.atEnd() && input != '\n')
-  {
-    if (input == '/')
-    {
-      skip_comment_or_divop (input, output, outputText);
-    }
-    else if (input == '"')
-    {
-      skip_string_literal (input, output);
-    }
-    else if (input == '\'')
-    {
-      skip_char_literal (input, output);
-    }
-    else if (input == '\\')
-    {
-      output << input;
-      skip_blanks (++input, output);
-
-      if (!input.atEnd() && input == '\n')
-      {
-        output << input;
-        ++input;
-      }
-    }
-    else
-    {
-      output << input;
-      ++input;
-    }
-  }
-}
-
-inline bool pp::test_if_level()
-{
-  bool result = !_M_skipping[iflevel++];
-  _M_skipping[iflevel] = _M_skipping[iflevel - 1];
-  _M_true_test[iflevel] = false;
-  return result;
-}
-
-inline int pp::skipping() const
-{ return _M_skipping[iflevel]; }
-
-
-long pp::eval_primary(Stream& input)
-{
-  bool expect_paren = false;
-  int token = next_token_accept(input);
-  long result = 0;
-
-  switch (token) {
-    case TOKEN_NUMBER:
-      return token_value;
-
-    case TOKEN_DEFINED:
-      token = next_token_accept(input);
-
-      if (token == '(')
-      {
-        expect_paren = true;
-        token = next_token_accept(input);
-      }
-
-      if (token != TOKEN_IDENTIFIER)
-      {
-        qWarning() << "expected ``identifier'' found:" << token << endl;
-        break;
-      }
-
-      result = m_environment.contains(token_text);
-
-      token = next_token(input); // skip '('
-
-      if (expect_paren) {
-        token = next_token(input);
-
-        if (token != ')')
-          qWarning() << "expected ``)''" << endl;
-        else
-          accept_token();
-      }
-      break;
-
-    case TOKEN_IDENTIFIER:
-      break;
-
-    case '!':
-      return !eval_primary(input);
-
-    case '(':
-      result = eval_constant_expression(input);
-      token = next_token(input);
-
-      if (token != ')')
-        qWarning() << "expected ``)'' = " << token << endl;
-      else
-        accept_token();
-
-      break;
-
-    default:
-      break;
-  }
-
-  return result;
-}
-
-long pp::eval_multiplicative(Stream& input)
-{
-  long result = eval_primary(input);
-
-  int token = next_token(input);
-
-  while (token == '*' || token == '/' || token == '%') {
-    accept_token();
-
-    long value = eval_primary(input);
-
-    if (token == '*') {
-      result *= value;
-
-    } else if (token == '/') {
-      if (value == 0) {
-        qWarning() << "division by zero" << endl;
-        result = 0;
-
-      } else {
-        result = result / value;
-      }
-
-    } else {
-      if (value == 0) {
-        qWarning() << "division by zero" << endl;
-        result = 0;
-
-      } else {
-        result %= value;
-      }
-    }
-
-    token = next_token(input);
-  }
-
-  return result;
-}
-
-long pp::eval_additive(Stream& input)
-{
-  long result = eval_multiplicative(input);
-
-  int token = next_token(input);
-
-  while (token == '+' || token == '-') {
-    accept_token();
-
-    long value = eval_multiplicative(input);
-
-    if (token == '+')
-      result += value;
-    else
-      result -= value;
-
-    token = next_token(input);
-  }
-
-  return result;
-}
-
-
-long pp::eval_shift(Stream& input)
-{
-  long result = eval_additive(input);
-
-  int token;
-  token = next_token(input);
-
-  while (token == TOKEN_LT_LT || token == TOKEN_GT_GT) {
-    accept_token();
-
-    long value = eval_additive(input);
-
-    if (token == TOKEN_LT_LT)
-      result <<= value;
-    else
-      result >>= value;
-
-    token = next_token(input);
-  }
-
-  return result;
-}
-
-
-long pp::eval_relational(Stream& input)
-{
-  long result = eval_shift(input);
-
-  int token = next_token(input);
-
-  while (token == '<'
-      || token == '>'
-      || token == TOKEN_LT_EQ
-      || token == TOKEN_GT_EQ)
-  {
-    accept_token();
-    long value = eval_shift(input);
-
-    switch (token)
-    {
-      default:
-        Q_ASSERT(0);
-        break;
-
-      case '<':
-        result = result < value;
-        break;
-
-      case '>':
-        result = result < value;
-        break;
-
-      case TOKEN_LT_EQ:
-        result = result <= value;
-        break;
-
-      case TOKEN_GT_EQ:
-        result = result >= value;
-        break;
-    }
-
-    token = next_token(input);
-  }
-
-  return result;
-}
-
-
-long pp::eval_equality(Stream& input)
-{
-  long result = eval_relational(input);
-
-  int token = next_token(input);
-
-  while (token == TOKEN_EQ_EQ || token == TOKEN_NOT_EQ) {
-    accept_token();
-    long value = eval_relational(input);
-
-    if (token == TOKEN_EQ_EQ)
-      result = result == value;
-    else
-      result = result != value;
-
-    token = next_token(input);
-  }
-
-  return result;
-}
-
-
-long pp::eval_and(Stream& input)
-{
-  long result = eval_equality(input);
-
-  int token = next_token(input);
-
-  while (token == '&') {
-    accept_token();
-    long value = eval_equality(input);
-    result = result & value;
-    token = next_token(input);
-  }
-
-  return result;
-}
-
-
-long pp::eval_xor(Stream& input)
-{
-  long result = eval_and(input);
-
-  int token;
-  token = next_token(input);
-
-  while (token == '^') {
-    accept_token();
-    long value = eval_and(input);
-    result = result ^ value;
-    token = next_token(input);
-  }
-
-  return result;
-}
-
-
-long pp::eval_or(Stream& input)
-{
-  long result = eval_xor(input);
-
-  int token = next_token(input);
-
-  while (token == '|') {
-    accept_token();
-    long value = eval_xor(input);
-    result = result | value;
-    token = next_token(input);
-  }
-
-  return result;
-}
-
-
-long pp::eval_logical_and(Stream& input)
-{
-  long result = eval_or(input);
-
-  int token = next_token(input);
-
-  while (token == TOKEN_AND_AND) {
-    accept_token();
-    long value = eval_or(input);
-    result = result && value;
-    token = next_token(input);
-  }
-
-  return result;
-}
-
-
-long pp::eval_logical_or(Stream& input)
-{
-  long result = eval_logical_and(input);
-
-  int token = next_token(input);
-
-  while (token == TOKEN_OR_OR) {
-    accept_token();
-    long value = eval_logical_and(input);
-    result = result || value;
-    token = next_token(input);
-  }
-
-  return result;
-}
-
-
-long pp::eval_constant_expression(Stream& input)
-{
-  long result = eval_logical_or(input);
-
-  int token = next_token(input);
-
-  if (token == '?')
-  {
-    accept_token();
-    long left_value = eval_constant_expression(input);
-    skip_blanks(input, PPInternal::devnull());
-
-    token = next_token_accept(input);
-    if (token == ':')
-    {
-      long right_value = eval_constant_expression(input);
-
-      result = result ? left_value : right_value;
-    }
-    else
-    {
-      qWarning() << "expected ``:'' = " << int (token) << endl;
-      result = left_value;
-    }
-  }
-
-  return result;
-}
-
-
-long pp::eval_expression(Stream& input)
-{
-  skip_blanks(input, PPInternal::devnull());
-  return eval_constant_expression(input);
-}
-
-
-void pp::handle_if (Stream& input)
-{
-  if (test_if_level())
-  {
-    pp_macro_expander expand_condition(this);
-    skip_blanks(input, PPInternal::devnull());
-    QString condition;
-    {
-      Stream cs(&condition);
-      expand_condition(input, cs);
-    }
-
-    Stream cs(&condition);
-    long result = eval_expression(cs);
-
-    _M_true_test[iflevel] = result;
-    _M_skipping[iflevel] = !result;
-  }
-}
-
-
-void pp::handle_else()
-{
-  if (iflevel == 0 && !skipping ())
-  {
-    qWarning() << "#else without #if" << endl;
-  }
-  else if (iflevel > 0 && _M_skipping[iflevel - 1])
-  {
-    _M_skipping[iflevel] = true;
-  }
-  else
-  {
-    _M_skipping[iflevel] = _M_true_test[iflevel];
-  }
-}
-
-
-void pp::handle_elif(Stream& input)
-{
-  Q_ASSERT(iflevel > 0);
-
-  if (iflevel == 0 && !skipping())
-  {
-    qWarning() << "#else without #if" << endl;
-  }
-  else if (!_M_true_test[iflevel] && !_M_skipping[iflevel - 1])
-  {
-    long result = eval_expression(input);
-    _M_true_test[iflevel] = result;
-    _M_skipping[iflevel] = !result;
-  }
-  else
-  {
-    _M_skipping[iflevel] = true;
-  }
-}
-
-
-void pp::handle_endif()
-{
-  if (iflevel == 0 && !skipping())
-  {
-    qWarning() << "#endif without #if" << endl;
-  }
-  else
-  {
-    _M_skipping[iflevel] = 0;
-    _M_true_test[iflevel] = 0;
-
-    --iflevel;
-  }
-}
-
-
-void pp::handle_ifdef (bool check_undefined, Stream& input)
-{
-  if (test_if_level())
-  {
-    QString macro_name = skip_identifier(input);
-    bool value = m_environment.contains(macro_name);
-
-    if (check_undefined)
-      value = !value;
-
-    _M_true_test[iflevel] = value;
-    _M_skipping[iflevel] = !value;
-  }
-}
-
-
-void pp::handle_undef(Stream& input)
-{
-  skip_blanks (input, PPInternal::devnull());
-
-  QString macro_name = skip_identifier(input);
-  Q_ASSERT(!macro_name.isEmpty());
-
-  delete m_environment.take(macro_name);
-}
-
-int pp::next_token (Stream& input)
-{
-  if (haveNextToken)
-    return nextToken;
-
-  skip_blanks(input, PPInternal::devnull());
-
-  if (input.atEnd())
-  {
-    return 0;
-  }
-
-  char ch = input.current().toLatin1();
-  char ch2 = input.peek().toLatin1();
-
-  nextToken = 0;
-
-  switch (ch) {
-    case '/':
-      if (ch2 == '/' || ch2 == '*')
-      {
-        skip_comment_or_divop(input, PPInternal::devnull(), false);
-        return next_token(input);
-      }
-      ++input;
-      nextToken = '/';
-      break;
-
-    case '<':
-      ++input;
-      if (ch2 == '<')
-      {
-        ++input;
-        nextToken = TOKEN_LT_LT;
-      }
-      else if (ch2 == '=')
-      {
-        ++input;
-        nextToken = TOKEN_LT_EQ;
-      }
-      else
-        nextToken = '<';
-
-      break;
-
-    case '>':
-      ++input;
-      if (ch2 == '>')
-      {
-        ++input;
-        nextToken = TOKEN_GT_GT;
-      }
-      else if (ch2 == '=')
-      {
-        ++input;
-        nextToken = TOKEN_GT_EQ;
-      }
-      else
-        nextToken = '>';
-
-      break;
-
-    case '!':
-      ++input;
-      if (ch2 == '=')
-      {
-        ++input;
-        nextToken = TOKEN_NOT_EQ;
-      }
-      else
-        nextToken = '!';
-
-      break;
-
-    case '=':
-      ++input;
-      if (ch2 == '=')
-      {
-        ++input;
-        nextToken = TOKEN_EQ_EQ;
-      }
-      else
-        nextToken = '=';
-
-      break;
-
-    case '|':
-      ++input;
-      if (ch2 == '|')
-      {
-        ++input;
-        nextToken = TOKEN_OR_OR;
-      }
-      else
-        nextToken = '|';
-
-      break;
-
-    case '&':
-      ++input;
-      if (ch2 == '&')
-      {
-        ++input;
-        nextToken = TOKEN_AND_AND;
-      }
-      else
-        nextToken = '&';
-
-      break;
-
-    default:
-      if (QChar(ch).isLetter() || ch == '_')
-      {
-        token_text = skip_identifier (input);
-
-        if (token_text == "defined")
-          nextToken = TOKEN_DEFINED;
-        else
-          nextToken = TOKEN_IDENTIFIER;
-      }
-      else if (QChar(ch).isNumber())
-      {
-        QString number;
-        {
-          Stream ns(&number);
-          skip_number(input, ns);
-        }
-        token_value = number.toLong();
-
-        nextToken = TOKEN_NUMBER;
-      }
-      else
-      {
-        nextToken = input.current().toLatin1();
-        ++input;
-      }
-  }
-
-  //kDebug() << "Next token '" << ch << ch2 << "' " << nextToken << " txt " << token_text << " val " << token_value << endl;
-
-  haveNextToken = true;
-  return nextToken;
-}
-
-int pp::next_token_accept (Stream& input)
-{
-  int result = next_token(input);
-  accept_token();
-  return result;
-}
-
-void pp::accept_token()
-{
-  haveNextToken = false;
-  nextToken = 0;
-}
-
-bool pp::hideNextMacro( ) const
-{
-  return hideNext;
-}
-
-void pp::setHideNextMacro( bool h )
-{
-  hideNext = h;
-}
-
-QHash< QString, pp_macro * > & pp::environment( )
-{
-  return m_environment;
-}
-
-// kate: indent-width 2;
diff --git a/tests/manual/cppmodelmanager/rpp/pp-engine.h b/tests/manual/cppmodelmanager/rpp/pp-engine.h
deleted file mode 100644
index a89ebe08bc67f16299855df5710ab00774039375..0000000000000000000000000000000000000000
--- a/tests/manual/cppmodelmanager/rpp/pp-engine.h
+++ /dev/null
@@ -1,232 +0,0 @@
-/***************************************************************************
-**
-** This file is part of Qt Creator
-**
-** Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
-**
-** Contact:  Qt Software Information (qt-info@nokia.com)
-**
-**
-** Non-Open Source Usage
-**
-** Licensees may use this file in accordance with the Qt Beta Version
-** License Agreement, Agreement version 2.2 provided with the Software or,
-** alternatively, in accordance with the terms contained in a written
-** agreement between you and Nokia.
-**
-** GNU General Public License Usage
-**
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License versions 2.0 or 3.0 as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL included in the packaging
-** of this file.  Please review the following information to ensure GNU
-** General Public Licensing requirements will be met:
-**
-** http://www.fsf.org/licensing/licenses/info/GPLv2.html and
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt GPL Exception
-** version 1.2, included in the file GPL_EXCEPTION.txt in this package.
-**
-***************************************************************************/
-/*
-  Copyright 2005 Roberto Raggi <roberto@kdevelop.org>
-
-  Permission to use, copy, modify, distribute, and sell this software and its
-  documentation for any purpose is hereby granted without fee, provided that
-  the above copyright notice appear in all copies and that both that
-  copyright notice and this permission notice appear in supporting
-  documentation.
-
-  The above copyright notice and this permission notice shall be included in
-  all copies or substantial portions of the Software.
-
-  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
-  KDEVELOP TEAM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
-  AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
-  CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-*/
-
-#ifndef PP_ENGINE_H
-#define PP_ENGINE_H
-
-#include <QHash>
-#include <QString>
-#include <QStack>
-
-#include "pp-macro.h"
-#include "pp-macro-expander.h"
-#include "pp-scanner.h"
-
-class Preprocessor;
-
-class pp
-{
-  QHash<QString, pp_macro*>& m_environment;
-  pp_macro_expander expand;
-  pp_skip_identifier skip_identifier;
-  pp_skip_comment_or_divop skip_comment_or_divop;
-  pp_skip_blanks skip_blanks;
-  pp_skip_number skip_number;
-  QStack<QString> m_files;
-  Preprocessor* m_preprocessor;
-
-  class ErrorMessage
-  {
-    int _M_line;
-    int _M_column;
-    QString _M_fileName;
-    QString _M_message;
-
-  public:
-    ErrorMessage ():
-      _M_line (0),
-      _M_column (0) {}
-
-    inline int line () const { return _M_line; }
-    inline void setLine (int line) { _M_line = line; }
-
-    inline int column () const { return _M_column; }
-    inline void setColumn (int column) { _M_column = column; }
-
-    inline QString fileName () const { return _M_fileName; }
-    inline void setFileName (const QString &fileName) { _M_fileName = fileName; }
-
-    inline QString message () const { return _M_message; }
-    inline void setMessage (const QString &message) { _M_message = message; }
-  };
-
-  QList<ErrorMessage> _M_error_messages;
-
-  enum { MAX_LEVEL = 512 };
-  int _M_skipping[MAX_LEVEL];
-  int _M_true_test[MAX_LEVEL];
-  int iflevel;
-  int nextToken;
-  bool haveNextToken;
-  bool hideNext;
-
-  long token_value;
-  QString token_text;
-
-  enum TOKEN_TYPE
-  {
-    TOKEN_NUMBER = 1000,
-    TOKEN_IDENTIFIER,
-    TOKEN_DEFINED,
-    TOKEN_LT_LT,
-    TOKEN_LT_EQ,
-    TOKEN_GT_GT,
-    TOKEN_GT_EQ,
-    TOKEN_EQ_EQ,
-    TOKEN_NOT_EQ,
-    TOKEN_OR_OR,
-    TOKEN_AND_AND,
-  };
-
-  enum PP_DIRECTIVE_TYPE
-  {
-    PP_UNKNOWN_DIRECTIVE,
-    PP_DEFINE,
-    PP_INCLUDE,
-    PP_ELIF,
-    PP_ELSE,
-    PP_ENDIF,
-    PP_IF,
-    PP_IFDEF,
-    PP_IFNDEF,
-    PP_UNDEF
-  };
-
-public:
-  pp(Preprocessor* preprocessor, QHash<QString, pp_macro*>& environment);
-
-  QList<ErrorMessage> errorMessages () const;
-  void clearErrorMessages ();
-
-  void reportError (const QString &fileName, int line, int column, const QString &message);
-
-  long eval_expression (Stream& input);
-
-  QString processFile(const QString& filename);
-  QString processFile(QIODevice* input);
-  QString processFile(const QByteArray& input);
-  QByteArray processFile(const QByteArray& input, const QString &fileName);
-
-  inline QString currentfile() const {
-      return m_files.top();
-  }
-
-  void operator () (Stream& input, Stream& output);
-
-  void checkMarkNeeded(Stream& input, Stream& output);
-
-  bool hideNextMacro() const;
-  void setHideNextMacro(bool hideNext);
-
-  QHash<QString, pp_macro*>& environment();
-
-private:
-  int skipping() const;
-  bool test_if_level();
-
-  PP_DIRECTIVE_TYPE find_directive (const QString& directive) const;
-
-  QString find_header_protection(Stream& input);
-
-  void skip(Stream& input, Stream& output, bool outputText = true);
-
-  long eval_primary(Stream& input);
-
-  long eval_multiplicative(Stream& input);
-
-  long eval_additive(Stream& input);
-
-  long eval_shift(Stream& input);
-
-  long eval_relational(Stream& input);
-
-  long eval_equality(Stream& input);
-
-  long eval_and(Stream& input);
-
-  long eval_xor(Stream& input);
-
-  long eval_or(Stream& input);
-
-  long eval_logical_and(Stream& input);
-
-  long eval_logical_or(Stream& input);
-
-  long eval_constant_expression(Stream& input);
-
-  void handle_directive(const QString& directive, Stream& input, Stream& output);
-
-  void handle_include(Stream& input, Stream& output);
-
-  void handle_define(Stream& input);
-
-  void handle_if(Stream& input);
-
-  void handle_else();
-
-  void handle_elif(Stream& input);
-
-  void handle_endif();
-
-  void handle_ifdef(bool check_undefined, Stream& input);
-
-  void handle_undef(Stream& input);
-
-  int next_token (Stream& input);
-  int next_token_accept (Stream& input);
-  void accept_token();
-};
-
-#endif // PP_ENGINE_H
-
-// kate: indent-width 2;
-
diff --git a/tests/manual/cppmodelmanager/rpp/pp-internal.cpp b/tests/manual/cppmodelmanager/rpp/pp-internal.cpp
deleted file mode 100644
index 51de673b0ddfb7aaeac7217eb38278cc4028eb70..0000000000000000000000000000000000000000
--- a/tests/manual/cppmodelmanager/rpp/pp-internal.cpp
+++ /dev/null
@@ -1,68 +0,0 @@
-/***************************************************************************
-**
-** This file is part of Qt Creator
-**
-** Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
-**
-** Contact:  Qt Software Information (qt-info@nokia.com)
-**
-**
-** Non-Open Source Usage
-**
-** Licensees may use this file in accordance with the Qt Beta Version
-** License Agreement, Agreement version 2.2 provided with the Software or,
-** alternatively, in accordance with the terms contained in a written
-** agreement between you and Nokia.
-**
-** GNU General Public License Usage
-**
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License versions 2.0 or 3.0 as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL included in the packaging
-** of this file.  Please review the following information to ensure GNU
-** General Public Licensing requirements will be met:
-**
-** http://www.fsf.org/licensing/licenses/info/GPLv2.html and
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt GPL Exception
-** version 1.2, included in the file GPL_EXCEPTION.txt in this package.
-**
-***************************************************************************/
-/*
-  Copyright 2005 Roberto Raggi <roberto@kdevelop.org>
-  Copyright 2006 Hamish Rodda <rodda@kde.org>
-
-  Permission to use, copy, modify, distribute, and sell this software and its
-  documentation for any purpose is hereby granted without fee, provided that
-  the above copyright notice appear in all copies and that both that
-  copyright notice and this permission notice appear in supporting
-  documentation.
-
-  The above copyright notice and this permission notice shall be included in
-  all copies or substantial portions of the Software.
-
-  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
-  KDEVELOP TEAM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
-  AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
-  CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-*/
-
-#include "pp-internal.h"
-
-bool PPInternal::isComment(Stream& input)
-{
-  QChar c1 = input;
-  QChar c2 = input.peek();
-
-  return c1 == '/' && (c2 == '/' || c2 == '*');
-}
-
-Stream& PPInternal::devnull()
-{
-  static Stream null;
-  return null;
-}
diff --git a/tests/manual/cppmodelmanager/rpp/pp-internal.h b/tests/manual/cppmodelmanager/rpp/pp-internal.h
deleted file mode 100644
index ebbf99c12048a2c35c16538da10c5c8fcb990290..0000000000000000000000000000000000000000
--- a/tests/manual/cppmodelmanager/rpp/pp-internal.h
+++ /dev/null
@@ -1,69 +0,0 @@
-/***************************************************************************
-**
-** This file is part of Qt Creator
-**
-** Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
-**
-** Contact:  Qt Software Information (qt-info@nokia.com)
-**
-**
-** Non-Open Source Usage
-**
-** Licensees may use this file in accordance with the Qt Beta Version
-** License Agreement, Agreement version 2.2 provided with the Software or,
-** alternatively, in accordance with the terms contained in a written
-** agreement between you and Nokia.
-**
-** GNU General Public License Usage
-**
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License versions 2.0 or 3.0 as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL included in the packaging
-** of this file.  Please review the following information to ensure GNU
-** General Public Licensing requirements will be met:
-**
-** http://www.fsf.org/licensing/licenses/info/GPLv2.html and
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt GPL Exception
-** version 1.2, included in the file GPL_EXCEPTION.txt in this package.
-**
-***************************************************************************/
-/*
-  Copyright 2005 Roberto Raggi <roberto@kdevelop.org>
-  Copyright 2006 Hamish Rodda <rodda@kde.org>
-
-  Permission to use, copy, modify, distribute, and sell this software and its
-  documentation for any purpose is hereby granted without fee, provided that
-  the above copyright notice appear in all copies and that both that
-  copyright notice and this permission notice appear in supporting
-  documentation.
-
-  The above copyright notice and this permission notice shall be included in
-  all copies or substantial portions of the Software.
-
-  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
-  KDEVELOP TEAM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
-  AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
-  CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-*/
-
-#ifndef PP_INTERNAL_H
-#define PP_INTERNAL_H
-
-#include "pp-stream.h"
-
-namespace PPInternal
-{
-
-bool isComment(Stream& input);
-
-Stream& devnull();
-
-}
-// _PP_internal
-
-#endif // PP_INTERNAL_H
diff --git a/tests/manual/cppmodelmanager/rpp/pp-macro-expander.cpp b/tests/manual/cppmodelmanager/rpp/pp-macro-expander.cpp
deleted file mode 100644
index c851c9257cd23fce6f7bcb031c6c2185cef65b19..0000000000000000000000000000000000000000
--- a/tests/manual/cppmodelmanager/rpp/pp-macro-expander.cpp
+++ /dev/null
@@ -1,287 +0,0 @@
-/***************************************************************************
-**
-** This file is part of Qt Creator
-**
-** Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
-**
-** Contact:  Qt Software Information (qt-info@nokia.com)
-**
-**
-** Non-Open Source Usage
-**
-** Licensees may use this file in accordance with the Qt Beta Version
-** License Agreement, Agreement version 2.2 provided with the Software or,
-** alternatively, in accordance with the terms contained in a written
-** agreement between you and Nokia.
-**
-** GNU General Public License Usage
-**
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License versions 2.0 or 3.0 as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL included in the packaging
-** of this file.  Please review the following information to ensure GNU
-** General Public Licensing requirements will be met:
-**
-** http://www.fsf.org/licensing/licenses/info/GPLv2.html and
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt GPL Exception
-** version 1.2, included in the file GPL_EXCEPTION.txt in this package.
-**
-***************************************************************************/
-/*
-  Copyright 2005 Roberto Raggi <roberto@kdevelop.org>
-  Copyright 2006 Hamish Rodda <rodda@kde.org>
-
-  Permission to use, copy, modify, distribute, and sell this software and its
-  documentation for any purpose is hereby granted without fee, provided that
-  the above copyright notice appear in all copies and that both that
-  copyright notice and this permission notice appear in supporting
-  documentation.
-
-  The above copyright notice and this permission notice shall be included in
-  all copies or substantial portions of the Software.
-
-  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
-  KDEVELOP TEAM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
-  AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
-  CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-*/
-
-#include "pp-macro-expander.h"
-
-#include <QtCore/QDebug>
-
-#include "pp-internal.h"
-#include "pp-engine.h"
-
-pp_frame::pp_frame(pp_macro* __expandingMacro, const QList<QString>& __actuals)
-  : expandingMacro(__expandingMacro)
-  , actuals(__actuals)
-{
-}
-
-QString pp_macro_expander::resolve_formal(const QString& name)
-{
-  Q_ASSERT(!name.isEmpty());
-
-  if (!m_frame)
-    return QString();
-
-  Q_ASSERT(m_frame->expandingMacro != 0);
-
-  const QStringList& formals = m_frame->expandingMacro->formals;
-
-  for (int index = 0; index < formals.size(); ++index) {
-    if (name == formals[index]) {
-      if (index < m_frame->actuals.size())
-        return m_frame->actuals[index];
-      else
-        Q_ASSERT(0); // internal error?
-    }
-  }
-
-  return QString();
-}
-
-pp_macro_expander::pp_macro_expander(pp* engine, pp_frame* frame)
-  : m_engine(engine)
-  , m_frame(frame)
-{
-}
-
-void pp_macro_expander::operator()(Stream& input, Stream& output)
-{
-  skip_blanks(input, output);
-
-  while (!input.atEnd())
-  {
-    if (input == '\n')
-    {
-      output << input;
-
-      skip_blanks(++input, output);
-
-      if (!input.atEnd() && input == '#')
-        break;
-    }
-    else if (input == '#')
-    {
-      skip_blanks(++input, output);
-
-      QString identifier = skip_identifier(input);
-      output << '\"';
-
-      Stream is(&identifier);
-      operator()(is, output);
-
-      output << '\"';
-    }
-    else if (input == '\"')
-    {
-      skip_string_literal(input, output);
-    }
-    else if (input == '\'')
-    {
-      skip_char_literal(input, output);
-    }
-    else if (PPInternal::isComment(input))
-    {
-      skip_comment_or_divop(input, output);
-    }
-    else if (input.current().isSpace())
-    {
-      do {
-        if (input == '\n' || !input.current().isSpace())
-          break;
-
-      } while (!(++input).atEnd());
-
-      output << ' ';
-    }
-    else if (input.current().isNumber())
-    {
-      skip_number (input, output);
-    }
-    else if (input.current().isLetter() || input == '_')
-    {
-      QString name = skip_identifier (input);
-
-      // search for the paste token
-      qint64 blankStart = input.pos();
-      skip_blanks (input, PPInternal::devnull());
-      if (!input.atEnd() && input == '#') {
-        ++input;
-
-        if (!input.atEnd() && input == '#')
-          skip_blanks(++input, PPInternal::devnull());
-        else
-          input.seek(blankStart);
-
-      } else {
-        input.seek(blankStart);
-      }
-
-      Q_ASSERT(name.length() >= 0 && name.length() < 512);
-
-      QString actual = resolve_formal(name);
-      if (!actual.isEmpty()) {
-        output << actual;
-        continue;
-      }
-
-      pp_macro* macro = m_engine->environment().value(name, 0);
-      if (! macro || macro->hidden || m_engine->hideNextMacro())
-      {
-        m_engine->setHideNextMacro(name == "defined");
-        output << name;
-        continue;
-      }
-
-      if (!macro->function_like)
-      {
-        pp_macro_expander expand_macro(m_engine);
-        macro->hidden = true;
-        Stream ms(&macro->definition, QIODevice::ReadOnly);
-        expand_macro(ms, output);
-        macro->hidden = false;
-        continue;
-      }
-
-      // function like macro
-      if (input.atEnd() || input != '(')
-      {
-        output << name;
-        continue;
-      }
-
-      QList<QString> actuals;
-      ++input; // skip '('
-
-      pp_macro_expander expand_actual(m_engine, m_frame);
-
-      qint64 before = input.pos();
-      {
-        actual.clear();
-
-        {
-          Stream as(&actual);
-          skip_argument_variadics(actuals, macro, input, as);
-        }
-
-        if (input.pos() != before)
-        {
-          QString newActual;
-          {
-            Stream as(&actual);
-            Stream nas(&newActual);
-            expand_actual(as, nas);
-          }
-          actuals.append(newActual);
-        }
-      }
-
-      // TODO: why separate from the above?
-      while (!input.atEnd() && input == ',')
-      {
-        actual.clear();
-        ++input; // skip ','
-
-        {
-          {
-            Stream as(&actual);
-            skip_argument_variadics(actuals, macro, input, as);
-          }
-
-          QString newActual;
-          {
-            Stream as(&actual);
-            Stream nas(&newActual);
-            expand_actual(as, nas);
-          }
-          actuals.append(newActual);
-        }
-      }
-
-      //Q_ASSERT(!input.atEnd() && input == ')');
-
-      ++input; // skip ')'
-
-#if 0 // ### enable me
-      assert ((macro->variadics && macro->formals.size () >= actuals.size ())
-                  || macro->formals.size() == actuals.size());
-#endif
-
-      pp_frame frame(macro, actuals);
-      pp_macro_expander expand_macro(m_engine, &frame);
-      macro->hidden = true;
-      Stream ms(&macro->definition, QIODevice::ReadOnly);
-      expand_macro(ms, output);
-      macro->hidden = false;
-
-    } else {
-      output << input;
-      ++input;
-    }
-  }
-}
-
-void pp_macro_expander::skip_argument_variadics (const QList<QString>& __actuals, pp_macro *__macro, Stream& input, Stream& output)
-{
-  qint64 first;
-
-  do {
-    first = input.pos();
-    skip_argument(input, output);
-
-  } while ( __macro->variadics
-            && first != input.pos()
-            && !input.atEnd()
-            && input == '.'
-            && (__actuals.size() + 1) == __macro->formals.size());
-}
-
-// kate: indent-width 2;
diff --git a/tests/manual/cppmodelmanager/rpp/pp-macro-expander.h b/tests/manual/cppmodelmanager/rpp/pp-macro-expander.h
deleted file mode 100644
index e61a4e2d2e211832196cbec8a9edc84c77f283c2..0000000000000000000000000000000000000000
--- a/tests/manual/cppmodelmanager/rpp/pp-macro-expander.h
+++ /dev/null
@@ -1,105 +0,0 @@
-/***************************************************************************
-**
-** This file is part of Qt Creator
-**
-** Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
-**
-** Contact:  Qt Software Information (qt-info@nokia.com)
-**
-**
-** Non-Open Source Usage
-**
-** Licensees may use this file in accordance with the Qt Beta Version
-** License Agreement, Agreement version 2.2 provided with the Software or,
-** alternatively, in accordance with the terms contained in a written
-** agreement between you and Nokia.
-**
-** GNU General Public License Usage
-**
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License versions 2.0 or 3.0 as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL included in the packaging
-** of this file.  Please review the following information to ensure GNU
-** General Public Licensing requirements will be met:
-**
-** http://www.fsf.org/licensing/licenses/info/GPLv2.html and
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt GPL Exception
-** version 1.2, included in the file GPL_EXCEPTION.txt in this package.
-**
-***************************************************************************/
-/*
-  Copyright 2005 Roberto Raggi <roberto@kdevelop.org>
-  Copyright 2006 Hamish Rodda <rodda@kde.org>
-
-  Permission to use, copy, modify, distribute, and sell this software and its
-  documentation for any purpose is hereby granted without fee, provided that
-  the above copyright notice appear in all copies and that both that
-  copyright notice and this permission notice appear in supporting
-  documentation.
-
-  The above copyright notice and this permission notice shall be included in
-  all copies or substantial portions of the Software.
-
-  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
-  KDEVELOP TEAM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
-  AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
-  CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-*/
-
-#ifndef PP_MACRO_EXPANDER_H
-#define PP_MACRO_EXPANDER_H
-
-#include <QList>
-#include <QHash>
-#include <QString>
-
-#include "pp-macro.h"
-#include "pp-stream.h"
-#include "pp-scanner.h"
-
-class pp;
-
-class pp_frame
-{
-public:
-  pp_frame (pp_macro* __expandingMacro, const QList<QString>& __actuals);
-
-  pp_macro* expandingMacro;
-  QList<QString> actuals;
-};
-
-class pp_macro_expander
-{
-public:
-  pp_macro_expander(pp* engine, pp_frame* frame = 0);
-
-  QString resolve_formal(const QString& name);
-
-  /// Expands text with the known macros. Continues until it finds a new text line
-  /// beginning with #, at which point control is returned.
-  void operator()(Stream& input, Stream& output);
-
-  void skip_argument_variadics (const QList<QString>& __actuals, pp_macro *__macro,
-                                Stream& input, Stream& output);
-
-private:
-  pp* m_engine;
-  pp_frame* m_frame;
-
-  pp_skip_number skip_number;
-  pp_skip_identifier skip_identifier;
-  pp_skip_string_literal skip_string_literal;
-  pp_skip_char_literal skip_char_literal;
-  pp_skip_argument skip_argument;
-  pp_skip_comment_or_divop skip_comment_or_divop;
-  pp_skip_blanks skip_blanks;
-};
-
-#endif // PP_MACRO_EXPANDER_H
-
-// kate: indent-width 2;
diff --git a/tests/manual/cppmodelmanager/rpp/pp-macro.cpp b/tests/manual/cppmodelmanager/rpp/pp-macro.cpp
deleted file mode 100644
index fb43f6c4fb08fbfd3061a40390946715649111c3..0000000000000000000000000000000000000000
--- a/tests/manual/cppmodelmanager/rpp/pp-macro.cpp
+++ /dev/null
@@ -1,62 +0,0 @@
-/***************************************************************************
-**
-** This file is part of Qt Creator
-**
-** Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
-**
-** Contact:  Qt Software Information (qt-info@nokia.com)
-**
-**
-** Non-Open Source Usage
-**
-** Licensees may use this file in accordance with the Qt Beta Version
-** License Agreement, Agreement version 2.2 provided with the Software or,
-** alternatively, in accordance with the terms contained in a written
-** agreement between you and Nokia.
-**
-** GNU General Public License Usage
-**
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License versions 2.0 or 3.0 as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL included in the packaging
-** of this file.  Please review the following information to ensure GNU
-** General Public Licensing requirements will be met:
-**
-** http://www.fsf.org/licensing/licenses/info/GPLv2.html and
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt GPL Exception
-** version 1.2, included in the file GPL_EXCEPTION.txt in this package.
-**
-***************************************************************************/
-/*
-  Copyright 2005 Roberto Raggi <roberto@kdevelop.org>
-  Copyright 2006 Hamish Rodda <rodda@kde.org>
-
-  Permission to use, copy, modify, distribute, and sell this software and its
-  documentation for any purpose is hereby granted without fee, provided that
-  the above copyright notice appear in all copies and that both that
-  copyright notice and this permission notice appear in supporting
-  documentation.
-
-  The above copyright notice and this permission notice shall be included in
-  all copies or substantial portions of the Software.
-
-  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
-  KDEVELOP TEAM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
-  AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
-  CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-*/
-
-#include "pp-macro.h"
-
-pp_macro::pp_macro( )
-  : lines(0)
-  , hidden(false)
-  , function_like(false)
-  , variadics(false)
-{
-}
diff --git a/tests/manual/cppmodelmanager/rpp/pp-macro.h b/tests/manual/cppmodelmanager/rpp/pp-macro.h
deleted file mode 100644
index 38e76bdb208aeacf272fb93ae625ac1fa9d2b620..0000000000000000000000000000000000000000
--- a/tests/manual/cppmodelmanager/rpp/pp-macro.h
+++ /dev/null
@@ -1,78 +0,0 @@
-/***************************************************************************
-**
-** This file is part of Qt Creator
-**
-** Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
-**
-** Contact:  Qt Software Information (qt-info@nokia.com)
-**
-**
-** Non-Open Source Usage
-**
-** Licensees may use this file in accordance with the Qt Beta Version
-** License Agreement, Agreement version 2.2 provided with the Software or,
-** alternatively, in accordance with the terms contained in a written
-** agreement between you and Nokia.
-**
-** GNU General Public License Usage
-**
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License versions 2.0 or 3.0 as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL included in the packaging
-** of this file.  Please review the following information to ensure GNU
-** General Public Licensing requirements will be met:
-**
-** http://www.fsf.org/licensing/licenses/info/GPLv2.html and
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt GPL Exception
-** version 1.2, included in the file GPL_EXCEPTION.txt in this package.
-**
-***************************************************************************/
-/*
-  Copyright 2005 Roberto Raggi <roberto@kdevelop.org>
-
-  Permission to use, copy, modify, distribute, and sell this software and its
-  documentation for any purpose is hereby granted without fee, provided that
-  the above copyright notice appear in all copies and that both that
-  copyright notice and this permission notice appear in supporting
-  documentation.
-
-  The above copyright notice and this permission notice shall be included in
-  all copies or substantial portions of the Software.
-
-  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
-  KDEVELOP TEAM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
-  AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
-  CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-*/
-
-#ifndef PP_MACRO_H
-#define PP_MACRO_H
-
-#include <QStringList>
-
-class pp_macro
-{
-public:
-  pp_macro();
-
-  QString definition;
-#if defined (PP_WITH_MACRO_POSITION)
-  QString file;
-#endif
-  QStringList formals;
-
-  int lines;
-
-  bool hidden: 1;
-  bool function_like: 1;
-  bool variadics: 1;
-};
-
-#endif // PP_MACRO_H
-
-// kate: indent-width 2;
diff --git a/tests/manual/cppmodelmanager/rpp/pp-scanner.cpp b/tests/manual/cppmodelmanager/rpp/pp-scanner.cpp
deleted file mode 100644
index 41ae0274e488b87654d78651858caf1f3996c42a..0000000000000000000000000000000000000000
--- a/tests/manual/cppmodelmanager/rpp/pp-scanner.cpp
+++ /dev/null
@@ -1,289 +0,0 @@
-/***************************************************************************
-**
-** This file is part of Qt Creator
-**
-** Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
-**
-** Contact:  Qt Software Information (qt-info@nokia.com)
-**
-**
-** Non-Open Source Usage
-**
-** Licensees may use this file in accordance with the Qt Beta Version
-** License Agreement, Agreement version 2.2 provided with the Software or,
-** alternatively, in accordance with the terms contained in a written
-** agreement between you and Nokia.
-**
-** GNU General Public License Usage
-**
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License versions 2.0 or 3.0 as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL included in the packaging
-** of this file.  Please review the following information to ensure GNU
-** General Public Licensing requirements will be met:
-**
-** http://www.fsf.org/licensing/licenses/info/GPLv2.html and
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt GPL Exception
-** version 1.2, included in the file GPL_EXCEPTION.txt in this package.
-**
-***************************************************************************/
-/*
-  Copyright 2005 Roberto Raggi <roberto@kdevelop.org>
-  Copyright 2006 Hamish Rodda <rodda@kde.org>
-
-  Permission to use, copy, modify, distribute, and sell this software and its
-  documentation for any purpose is hereby granted without fee, provided that
-  the above copyright notice appear in all copies and that both that
-  copyright notice and this permission notice appear in supporting
-  documentation.
-
-  The above copyright notice and this permission notice shall be included in
-  all copies or substantial portions of the Software.
-
-  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
-  KDEVELOP TEAM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
-  AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
-  CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-*/
-
-#include <QtCore/QDebug>
-#include "pp-scanner.h"
-
-void pp_skip_blanks::operator()(Stream& input, Stream& output)
-{
-  while (!input.atEnd()) {
-    if (input == '\\') {
-      ++input;
-      if (input != '\n') {
-        --input;
-        return;
-
-      } else {
-        ++input;
-        continue;
-      }
-    }
-
-    if (input == '\n' || !input.current().isSpace())
-      return;
-
-    output << input;
-    ++input;
-  }
-}
-
-void pp_skip_comment_or_divop::operator()(Stream& input, Stream& output, bool outputText)
-{
-  enum {
-    MAYBE_BEGIN,
-    BEGIN,
-    MAYBE_END,
-    END,
-    IN_COMMENT,
-    IN_CXX_COMMENT
-  } state (MAYBE_BEGIN);
-
-  while (!input.atEnd()) {
-    switch (state) {
-      case MAYBE_BEGIN:
-        if (input != '/')
-          return;
-
-        state = BEGIN;
-        break;
-
-      case BEGIN:
-        if (input == '*')
-          state = IN_COMMENT;
-        else if (input == '/')
-          state = IN_CXX_COMMENT;
-        else
-          return;
-        break;
-
-      case IN_COMMENT:
-        if (input == '*')
-          state = MAYBE_END;
-        break;
-
-      case IN_CXX_COMMENT:
-        if (input == '\n')
-          return;
-        break;
-
-      case MAYBE_END:
-        if (input == '/')
-          state = END;
-        else if (input != '*')
-          state = IN_COMMENT;
-        break;
-
-      case END:
-        return;
-    }
-
-    if (outputText)
-      output << input;
-    else if (input == '\n')
-      output << '\n';
-    else
-      output << ' ';
-    ++input;
-  }
-}
-
-QString pp_skip_identifier::operator()(Stream& input)
-{
-  QString identifier;
-
-  while (!input.atEnd()) {
-    if (!input.current().isLetterOrNumber() && input != '_')
-        break;
-
-    identifier.append(input);
-    ++input;
-  }
-
-  return identifier;
-}
-
-void pp_skip_number::operator()(Stream& input, Stream& output)
-{
-  while (!input.atEnd()) {
-    if (!input.current().isLetterOrNumber() && input != '_')
-        return;
-
-    output << input;
-    ++input;
-  }
-}
-
-void pp_skip_string_literal::operator()(Stream& input, Stream& output)
-{
-  enum {
-    BEGIN,
-    IN_STRING,
-    QUOTE,
-    END
-  } state (BEGIN);
-
-  while (!input.atEnd()) {
-    switch (state) {
-      case BEGIN:
-        if (input != '\"')
-          return;
-        state = IN_STRING;
-        break;
-
-      case IN_STRING:
-        Q_ASSERT(input != '\n');
-
-        if (input == '\"')
-          state = END;
-        else if (input == '\\')
-          state = QUOTE;
-        break;
-
-      case QUOTE:
-        state = IN_STRING;
-        break;
-
-      case END:
-        return;
-    }
-
-    output << input;
-    ++input;
-  }
-}
-
-void pp_skip_char_literal::operator()(Stream& input, Stream& output)
-{
-  enum {
-    BEGIN,
-    IN_STRING,
-    QUOTE,
-    END
-  } state (BEGIN);
-
-  while (!input.atEnd()) {
-    if (state == END)
-      break;
-
-    switch (state) {
-      case BEGIN:
-        if (input != '\'')
-          return;
-        state = IN_STRING;
-        break;
-
-      case IN_STRING:
-        Q_ASSERT(input != '\n');
-
-        if (input == '\'')
-          state = END;
-        else if (input == '\\')
-          state = QUOTE;
-        break;
-
-      case QUOTE:
-        state = IN_STRING;
-        break;
-
-      default:
-        Q_ASSERT(0);
-        break;
-    }
-
-    output << input;
-    ++input;
-  }
-}
-
-void pp_skip_argument::operator()(Stream& input, Stream& output)
-{
-  int depth = 0;
-
-  while (!input.atEnd()) {
-    if (!depth && (input == ')' || input == ',')) {
-      return;
-
-    } else if (input == '(') {
-      ++depth;
-
-    } else if (input == ')') {
-      --depth;
-
-    } else if (input == '\"') {
-      skip_string_literal(input, output);
-      continue;
-
-    } else if (input == '\'') {
-      skip_char_literal (input, output);
-      continue;
-
-    } else if (input == '/') {
-      skip_comment_or_divop (input, output);
-      continue;
-
-    } else if (input.current().isLetter() || input == '_') {
-      output << skip_identifier(input);
-      continue;
-
-    } else if (input.current().isNumber()) {
-      output << skip_number(input);
-      continue;
-
-    }
-
-    output << input;
-    ++input;
-  }
-
-  return;
-}
diff --git a/tests/manual/cppmodelmanager/rpp/pp-scanner.h b/tests/manual/cppmodelmanager/rpp/pp-scanner.h
deleted file mode 100644
index 99786dede1f57775d6b78a962d06f0bbf186dfc9..0000000000000000000000000000000000000000
--- a/tests/manual/cppmodelmanager/rpp/pp-scanner.h
+++ /dev/null
@@ -1,119 +0,0 @@
-/***************************************************************************
-**
-** This file is part of Qt Creator
-**
-** Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
-**
-** Contact:  Qt Software Information (qt-info@nokia.com)
-**
-**
-** Non-Open Source Usage
-**
-** Licensees may use this file in accordance with the Qt Beta Version
-** License Agreement, Agreement version 2.2 provided with the Software or,
-** alternatively, in accordance with the terms contained in a written
-** agreement between you and Nokia.
-**
-** GNU General Public License Usage
-**
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License versions 2.0 or 3.0 as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL included in the packaging
-** of this file.  Please review the following information to ensure GNU
-** General Public Licensing requirements will be met:
-**
-** http://www.fsf.org/licensing/licenses/info/GPLv2.html and
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt GPL Exception
-** version 1.2, included in the file GPL_EXCEPTION.txt in this package.
-**
-***************************************************************************/
-/*
-  Copyright 2005 Roberto Raggi <roberto@kdevelop.org>
-  Copyright 2006 Hamish Rodda <rodda@kde.org>
-
-  Permission to use, copy, modify, distribute, and sell this software and its
-  documentation for any purpose is hereby granted without fee, provided that
-  the above copyright notice appear in all copies and that both that
-  copyright notice and this permission notice appear in supporting
-  documentation.
-
-  The above copyright notice and this permission notice shall be included in
-  all copies or substantial portions of the Software.
-
-  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
-  KDEVELOP TEAM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
-  AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
-  CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-*/
-
-#ifndef PP_SCANNER_H
-#define PP_SCANNER_H
-
-#include <QString>
-
-#include "pp-stream.h"
-
-class pp_skip_blanks
-{
-public:
-  void operator()(Stream& input, Stream& output);
-};
-
-class pp_skip_comment_or_divop
-{
-public:
-  /**
-   * This scanner can either output equivalent blank space,
-   * or the actual text (the default).
-   */
-  void operator()(Stream& input, Stream& output, bool outputText = false);
-
-private:
-  bool m_outputText;
-};
-
-class pp_skip_identifier
-{
-public:
-  QString operator()(Stream& input);
-};
-
-class pp_skip_number
-{
-public:
-  void operator()(Stream& input, Stream& output);
-};
-
-class pp_skip_string_literal
-{
-public:
-  void operator()(Stream& input, Stream& output);
-};
-
-class pp_skip_char_literal
-{
-public:
-  void operator()(Stream& input, Stream& output);
-};
-
-class pp_skip_argument
-{
-public:
-  void operator()(Stream& input, Stream& output);
-
-private:
-  pp_skip_identifier skip_number;
-  pp_skip_identifier skip_identifier;
-  pp_skip_string_literal skip_string_literal;
-  pp_skip_char_literal skip_char_literal;
-  pp_skip_comment_or_divop skip_comment_or_divop;
-};
-
-#endif // PP_SCANNER_H
-
-// kate: indent-width 2;
diff --git a/tests/manual/cppmodelmanager/rpp/pp-stream.cpp b/tests/manual/cppmodelmanager/rpp/pp-stream.cpp
deleted file mode 100644
index f877b653d8f22182d68670bfa4726dde88fc3717..0000000000000000000000000000000000000000
--- a/tests/manual/cppmodelmanager/rpp/pp-stream.cpp
+++ /dev/null
@@ -1,266 +0,0 @@
-/***************************************************************************
-**
-** This file is part of Qt Creator
-**
-** Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
-**
-** Contact:  Qt Software Information (qt-info@nokia.com)
-**
-**
-** Non-Open Source Usage
-**
-** Licensees may use this file in accordance with the Qt Beta Version
-** License Agreement, Agreement version 2.2 provided with the Software or,
-** alternatively, in accordance with the terms contained in a written
-** agreement between you and Nokia.
-**
-** GNU General Public License Usage
-**
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License versions 2.0 or 3.0 as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL included in the packaging
-** of this file.  Please review the following information to ensure GNU
-** General Public Licensing requirements will be met:
-**
-** http://www.fsf.org/licensing/licenses/info/GPLv2.html and
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt GPL Exception
-** version 1.2, included in the file GPL_EXCEPTION.txt in this package.
-**
-***************************************************************************/
-/*
-  Copyright 2006 Hamish Rodda <rodda@kde.org>
-
-  Permission to use, copy, modify, distribute, and sell this software and its
-  documentation for any purpose is hereby granted without fee, provided that
-  the above copyright notice appear in all copies and that both that
-  copyright notice and this permission notice appear in supporting
-  documentation.
-
-  The above copyright notice and this permission notice shall be included in
-  all copies or substantial portions of the Software.
-
-  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
-  KDEVELOP TEAM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
-  AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
-  CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-*/
-
-#include "pp-stream.h"
-
-#include <QtCore/QDebug>
-
-class DevNullDevice : public QIODevice
-{
-protected:
-  virtual qint64 readData ( char *, qint64 ) { return 0; }
-  virtual qint64 writeData ( const char *, qint64 maxSize ) { return maxSize; }
-};
-
-Stream::Stream()
-  : QTextStream(new DevNullDevice)
-  , m_atEnd(false)
-  , m_isNull(true)
-  , m_pos(0)
-  , m_inputLine(0)
-  , m_outputLine(0)
-{
-}
-
-Stream::Stream( const QByteArray & array, QIODevice::OpenMode openMode )
-  : QTextStream(array, openMode)
-  , m_atEnd(!array.count())
-  , m_isNull(false)
-  , m_pos(0)
-  , m_inputLine(0)
-  , m_outputLine(0)
-{
-  operator>>(c);
-  //kDebug() << "'" << c << "' " << c.cell() << endl;
-}
-
-Stream::Stream( QByteArray * array, QIODevice::OpenMode openMode )
-  : QTextStream(array, openMode)
-  , m_atEnd(!array->count())
-  , m_isNull(false)
-  , m_pos(0)
-  , m_inputLine(0)
-  , m_outputLine(0)
-{
-  operator>>(c);
-  //kDebug() << "'" << c << "' " << c.cell() << endl;
-}
-
-Stream::Stream( QString * string, QIODevice::OpenMode openMode )
-  : QTextStream(string, openMode)
-  , m_atEnd(!string->count())
-  , m_isNull(false)
-  , m_pos(0)
-  , m_inputLine(0)
-  , m_outputLine(0)
-{
-  operator>>(c);
-  //if (!string->isEmpty())
-    //kDebug() << "'" << c << "' " << c.cell() << endl;
-}
-
-Stream::Stream( FILE * fileHandle, QIODevice::OpenMode openMode )
-  : QTextStream(fileHandle, openMode)
-  , m_atEnd(false)
-  , m_isNull(false)
-  , m_pos(0)
-  , m_inputLine(0)
-  , m_outputLine(0)
-{
-  operator>>(c);
-  //kDebug() << "'" << c << "' " << c.cell() << endl;
-}
-
-Stream::Stream( QIODevice * device )
-  : QTextStream(device)
-  , m_atEnd(false)
-  , m_isNull(false)
-  , m_pos(0)
-  , m_inputLine(0)
-  , m_outputLine(0)
-{
-  operator>>(c);
-  //kDebug() << "'" << c << "' " << c.cell() << endl;
-}
-
-Stream::~Stream()
-{
-  if (isNull())
-    delete device();
-}
-
-Stream & Stream::operator ++( )
-{
-  if (m_atEnd)
-    return *this;
-
-  if (c == '\n')
-     ++m_inputLine;
-
-  if (QTextStream::atEnd()) {
-    m_atEnd = true;
-    ++m_pos;
-    c = QChar();
-
-  } else {
-    operator>>(c);
-    //kDebug() << "'" << c << "' " << c.cell() << endl;
-    ++m_pos;
-  }
-  return *this;
-}
-
-Stream& Stream::operator--()
-{
-  seek(pos() - 2);
-  operator>>(c);
-  --m_pos;
-  return *this;
-}
-
-void Stream::rewind(qint64 offset)
-{
-  seek(pos() - offset);
-}
-
-bool Stream::atEnd() const
-{
-  return m_atEnd;
-}
-
-QChar Stream::peek() const
-{
-  Stream* s = const_cast<Stream*>(this);
-  int inputLine = m_inputLine;
-  ++(*s);
-  QChar ret = s->current();
-  s->rewind();
-  inputLine = m_inputLine;
-  return ret;
-}
-
-qint64 Stream::pos( ) const
-{
-  return m_pos;
-}
-
-void Stream::seek(qint64 offset)
-{
-  if (QTextStream::seek(offset)) {
-    m_pos = offset;
-    if (QTextStream::atEnd()) {
-      m_atEnd = true;
-    } else {
-      operator>>(c);
-      m_atEnd = false;
-    }
-  }
-}
-
-Stream& Stream::operator<< ( QChar c )
-{
-  if (!isNull()) {
-    if (c == '\n') {
-      ++m_outputLine;
-      //output.clear();
-    } else {
-      //output += c;
-    }
-    QTextStream::operator<<(c);
-  }
-  return *this;
-}
-
-Stream& Stream::operator<< ( const QString & string )
-{
-  if (!isNull()) {
-    m_outputLine += string.count('\n');
-    //output += c;
-    QTextStream::operator<<(string);
-  }
-  return *this;
-}
-
-int Stream::outputLineNumber() const
-{
-  return m_outputLine;
-}
-
-bool Stream::isNull() const
-{
-  return m_isNull;
-}
-
-int Stream::inputLineNumber() const
-{
-  return m_inputLine;
-}
-
-void Stream::setOutputLineNumber(int line)
-{
-  m_outputLine = line;
-}
-
-void Stream::mark(const QString& filename, int inputLineNumber)
-{
-  QTextStream::operator<<(QString("# %1 \"%2\"\n").arg(inputLineNumber).arg(filename.isEmpty() ? QString("<internal>") : filename));
-  setOutputLineNumber(inputLineNumber);
-}
-
-void Stream::reset( )
-{
-  QTextStream::seek(0);
-  m_inputLine = m_outputLine = m_pos = 0;
-  //output.clear();
-  m_atEnd = false;
-  operator>>(c);
-}
diff --git a/tests/manual/cppmodelmanager/rpp/pp-stream.h b/tests/manual/cppmodelmanager/rpp/pp-stream.h
deleted file mode 100644
index e792f21736000c120c3cebde1aace83f5aaf1459..0000000000000000000000000000000000000000
--- a/tests/manual/cppmodelmanager/rpp/pp-stream.h
+++ /dev/null
@@ -1,118 +0,0 @@
-/***************************************************************************
-**
-** This file is part of Qt Creator
-**
-** Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
-**
-** Contact:  Qt Software Information (qt-info@nokia.com)
-**
-**
-** Non-Open Source Usage
-**
-** Licensees may use this file in accordance with the Qt Beta Version
-** License Agreement, Agreement version 2.2 provided with the Software or,
-** alternatively, in accordance with the terms contained in a written
-** agreement between you and Nokia.
-**
-** GNU General Public License Usage
-**
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License versions 2.0 or 3.0 as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL included in the packaging
-** of this file.  Please review the following information to ensure GNU
-** General Public Licensing requirements will be met:
-**
-** http://www.fsf.org/licensing/licenses/info/GPLv2.html and
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt GPL Exception
-** version 1.2, included in the file GPL_EXCEPTION.txt in this package.
-**
-***************************************************************************/
-/*
-  Copyright 2006 Hamish Rodda <rodda@kde.org>
-
-  Permission to use, copy, modify, distribute, and sell this software and its
-  documentation for any purpose is hereby granted without fee, provided that
-  the above copyright notice appear in all copies and that both that
-  copyright notice and this permission notice appear in supporting
-  documentation.
-
-  The above copyright notice and this permission notice shall be included in
-  all copies or substantial portions of the Software.
-
-  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
-  KDEVELOP TEAM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
-  AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
-  CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-*/
-
-#ifndef STREAM_H
-#define STREAM_H
-
-#include <QTextStream>
-
-/**
- * Stream designed for character-at-a-time processing
- *
- * @author Hamish Rodda <rodda@kde.org>
- */
-class Stream : private QTextStream
-{
-  public:
-    Stream();
-    Stream( QIODevice * device );
-    Stream( FILE * fileHandle, QIODevice::OpenMode openMode = QIODevice::ReadWrite );
-    Stream( QString * string, QIODevice::OpenMode openMode = QIODevice::ReadWrite );
-    Stream( QByteArray * array, QIODevice::OpenMode openMode = QIODevice::ReadWrite );
-    Stream( const QByteArray & array, QIODevice::OpenMode openMode = QIODevice::ReadOnly );
-    ~Stream();
-
-    bool isNull() const;
-
-    bool atEnd() const;
-
-    qint64 pos() const;
-
-    QChar peek() const;
-
-    /// Move back \a offset chars in the stream
-    void rewind(qint64 offset = 1);
-
-    /// \warning the input and output lines are not updated when calling this function.
-    ///          if you're seek()ing over a line boundary, you'll need to fix the line
-    ///          numbers.
-    void seek(qint64 offset);
-
-    /// Start from the beginning again
-    void reset();
-
-    inline const QChar& current() const { return c; }
-    inline operator const QChar&() const { return c; }
-    Stream& operator++();
-    Stream& operator--();
-
-    int inputLineNumber() const;
-
-    int outputLineNumber() const;
-    void setOutputLineNumber(int line);
-    void mark(const QString& filename, int inputLineNumber);
-
-    Stream & operator<< ( QChar c );
-    Stream & operator<< ( const QString & string );
-
-  private:
-    Q_DISABLE_COPY(Stream)
-
-    QChar c;
-    bool m_atEnd;
-    bool m_isNull;
-    qint64 m_pos;
-    int m_inputLine, m_outputLine;
-    //QString output;
-};
-
-#endif
diff --git a/tests/manual/cppmodelmanager/rpp/preprocessor.cpp b/tests/manual/cppmodelmanager/rpp/preprocessor.cpp
deleted file mode 100644
index 5aee468b59e4424899173aed619396bea3e08da1..0000000000000000000000000000000000000000
--- a/tests/manual/cppmodelmanager/rpp/preprocessor.cpp
+++ /dev/null
@@ -1,161 +0,0 @@
-/***************************************************************************
-**
-** This file is part of Qt Creator
-**
-** Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
-**
-** Contact:  Qt Software Information (qt-info@nokia.com)
-**
-**
-** Non-Open Source Usage
-**
-** Licensees may use this file in accordance with the Qt Beta Version
-** License Agreement, Agreement version 2.2 provided with the Software or,
-** alternatively, in accordance with the terms contained in a written
-** agreement between you and Nokia.
-**
-** GNU General Public License Usage
-**
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License versions 2.0 or 3.0 as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL included in the packaging
-** of this file.  Please review the following information to ensure GNU
-** General Public Licensing requirements will be met:
-**
-** http://www.fsf.org/licensing/licenses/info/GPLv2.html and
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt GPL Exception
-** version 1.2, included in the file GPL_EXCEPTION.txt in this package.
-**
-***************************************************************************/
-/*
-  Copyright 2005 Harald Fernengel <harry@kdevelop.org>
-  Copyright 2006 Hamish Rodda <rodda@kde.org>
-
-  Permission to use, copy, modify, distribute, and sell this software and its
-  documentation for any purpose is hereby granted without fee, provided that
-  the above copyright notice appear in all copies and that both that
-  copyright notice and this permission notice appear in supporting
-  documentation.
-
-  The above copyright notice and this permission notice shall be included in
-  all copies or substantial portions of the Software.
-
-  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
-  KDEVELOP TEAM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
-  AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
-  CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-*/
-
-#include "preprocessor.h"
-
-#include <QFile>
-
-#include <QtCore/QDir>
-#include <QtCore/QDebug>
-#include <QtCore/QFileInfo>
-
-#include "pp-stream.h"
-#include "pp-engine.h"
-
-class PreprocessorPrivate
-{
-public:
-    QString result;
-    QHash<QString, pp_macro*> env;
-    QStringList includePaths;
-};
-
-QHash<QString, QStringList> includedFiles;
-
-Preprocessor::Preprocessor()
-{
-    d = new PreprocessorPrivate;
-    includedFiles.clear();
-}
-
-Preprocessor::~Preprocessor()
-{
-    qDeleteAll(d->env);
-    delete d;
-}
-
-QString Preprocessor::processFile(const QString& fileName)
-{
-    pp proc(this, d->env);
-
-    return proc.processFile(fileName);
-}
-
-QString Preprocessor::processString(const QByteArray &bytearray)
-{
-    pp proc(this, d->env);
-
-    return proc.processFile(bytearray);
-}
-
-void Preprocessor::addIncludePaths(const QStringList &includePaths)
-{
-    d->includePaths += includePaths;
-}
-
-QStringList Preprocessor::macroNames() const
-{
-    return d->env.keys();
-}
-
-QList<Preprocessor::MacroItem> Preprocessor::macros() const
-{
-    QList<MacroItem> items;
-
-    QHashIterator<QString, pp_macro*> it = d->env;
-    while (it.hasNext()) {
-        it.next();
-
-        MacroItem item;
-        item.name = it.key();
-        item.definition = it.value()->definition;
-        item.parameters = it.value()->formals;
-        item.isFunctionLike = it.value()->function_like;
-
-#ifdef PP_WITH_MACRO_POSITION
-        item.fileName = it.value()->file;
-#endif
-        items << item;
-    }
-
-    return items;
-}
-
-Stream * Preprocessor::sourceNeeded(QString &fileName, IncludeType type)
-{
-  Q_UNUSED(type)
-
-  if (!QFile::exists(fileName)) {
-    foreach (const QString& includePath, d->includePaths) {
-      QFileInfo fi(includePath + QLatin1Char('/') + fileName);
-      fileName = QDir::cleanPath(fi.absoluteFilePath());
-      if (QFile::exists(fileName))
-        goto found;
-    }
-
-    return 0L;
-  }
-
-  found:
-  QFile* f = new QFile(fileName);
-  if (!f->open(QIODevice::ReadOnly)) {
-    qWarning() << "Could not open successfully stat-ed file " << fileName << endl;
-    delete f;
-    return 0L;
-  }
-
-  // Hrm, hazardous?
-  f->deleteLater();
-
-  return new Stream(f);
-}
diff --git a/tests/manual/cppmodelmanager/rpp/preprocessor.h b/tests/manual/cppmodelmanager/rpp/preprocessor.h
deleted file mode 100644
index e30508a73b53ba1dd2d7e3d9856b8df7b64f1c1f..0000000000000000000000000000000000000000
--- a/tests/manual/cppmodelmanager/rpp/preprocessor.h
+++ /dev/null
@@ -1,119 +0,0 @@
-/***************************************************************************
-**
-** This file is part of Qt Creator
-**
-** Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
-**
-** Contact:  Qt Software Information (qt-info@nokia.com)
-**
-**
-** Non-Open Source Usage
-**
-** Licensees may use this file in accordance with the Qt Beta Version
-** License Agreement, Agreement version 2.2 provided with the Software or,
-** alternatively, in accordance with the terms contained in a written
-** agreement between you and Nokia.
-**
-** GNU General Public License Usage
-**
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License versions 2.0 or 3.0 as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL included in the packaging
-** of this file.  Please review the following information to ensure GNU
-** General Public Licensing requirements will be met:
-**
-** http://www.fsf.org/licensing/licenses/info/GPLv2.html and
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt GPL Exception
-** version 1.2, included in the file GPL_EXCEPTION.txt in this package.
-**
-***************************************************************************/
-/*
-  Copyright 2005 Harald Fernengel <harry@kdevelop.org>
-  Copyright 2006 Hamish Rodda <rodda@kde.org>
-
-  Permission to use, copy, modify, distribute, and sell this software and its
-  documentation for any purpose is hereby granted without fee, provided that
-  the above copyright notice appear in all copies and that both that
-  copyright notice and this permission notice appear in supporting
-  documentation.
-
-  The above copyright notice and this permission notice shall be included in
-  all copies or substantial portions of the Software.
-
-  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
-  KDEVELOP TEAM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
-  AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
-  CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-*/
-
-#ifndef PREPROCESSOR_H
-#define PREPROCESSOR_H
-
-#include <QtCore/qglobal.h>
-#include <QtCore/qstring.h>
-#include <QtCore/qstringlist.h>
-
-class QByteArray;
-class PreprocessorPrivate;
-class Stream;
-
-class Preprocessor
-{
-public:
-    enum IncludeType {
-      /// An include specified as being local (eg. "file.h")
-      IncludeLocal,
-      /// An include specified as being global (eg. &lt;file.h&gt;)
-      IncludeGlobal
-    };
-
-    Preprocessor();
-    virtual ~Preprocessor();
-
-    QString processFile(const QString &fileName);
-    QString processString(const QByteArray &str);
-
-    void addIncludePaths(const QStringList &includePaths);
-
-    /**
-     * This function is called by the preprocessor whenever
-     * it encounters an include directive.
-     *
-     * This class is permitted to modify \a fileName%; this
-     * value will be used when marking the file in the preprocessed
-     * output.
-     *
-     * \param fileName name of the source file to include
-     * \param type the way that the file was requested
-     *
-     * \return a Stream with the appropriate contents to allow
-     * the file to be #included.  Ownership of the Stream is yielded to 
-     * class pp at this point.
-     */
-    virtual Stream* sourceNeeded(QString& fileName, IncludeType type);
-
-    QStringList macroNames() const;
-
-    struct MacroItem
-    {
-        QString name;
-        QStringList parameters;
-        QString definition;
-        bool isFunctionLike;
-#ifdef PP_WITH_MACRO_POSITION
-        QString fileName;
-#endif
-    };
-    QList<MacroItem> macros() const;
-
-private:
-    Q_DISABLE_COPY(Preprocessor)
-    PreprocessorPrivate *d;
-};
-
-#endif
diff --git a/tests/manual/cppmodelmanager/rpp/rpp.pri b/tests/manual/cppmodelmanager/rpp/rpp.pri
deleted file mode 100644
index 542015edd6cf72a257e9a65272d559d4c4eebc98..0000000000000000000000000000000000000000
--- a/tests/manual/cppmodelmanager/rpp/rpp.pri
+++ /dev/null
@@ -1,20 +0,0 @@
-VPATH += $$PWD
-
-SOURCES += pp-engine.cpp \
-	pp-internal.cpp \
-	pp-macro-expander.cpp \
-	pp-macro.cpp \
-	pp-scanner.cpp \
-	pp-stream.cpp \
-	preprocessor.cpp
-
-HEADERS += pp-engine.h \
-	pp-internal.h \
-	pp-macro-expander.h \
-	pp-macro.h \
-	pp-scanner.h \
-	pp-stream.h \
-	preprocessor.h
-
-
-INCLUDEPATH += $$PWD
\ No newline at end of file