Bug#2235: marked as done (Namespace support in kdevelop Beta4.1)

Stephan Kulow owner at bugs.kde.org
Sun Mar 12 09:33:03 UTC 2000


Your message dated Sun, 12 Mar 2000 09:48:10 +0100
with message-id <38CB59CA.25DCF7B9 at kdevelop.de>
and subject line (no subject)
has caused the attached bug report to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what I'm
talking about this indicates a serious mail system misconfiguration
somewhere.  Please contact me immediately.)

Stephan Kulow
(administrator, KDE bugs database)

Received: (at submit) by bugs.kde.org; 2 Nov 1999 22:22:24 +0000
>From eric_oursel at bigfoot.com Tue Nov  2 23:22:24 1999
Received: from mailhub1.isdnet.net ([195.154.209.21]:38660 "EHLO
        mailhub1.isdnet.net") by max.tat.physik.uni-tuebingen.de with ESMTP
	id <S741407AbPKBWWO>; Tue, 2 Nov 1999 23:22:14 +0100
Received: from bigfoot.com (ppp28-stquentin.isdnet.net [194.149.176.155])
	by mailhub1.isdnet.net (8.9.3/8.9.3) with ESMTP id XAA42855
	for <submit at bugs.kde.org>; Tue, 2 Nov 1999 23:17:53 +0100 (CET)
Sender: eoursel at mailhub1.isdnet.net
Message-ID: <381F6498.1C84A410 at bigfoot.com>
Date:   Tue, 02 Nov 1999 22:24:24 +0000
From:   Eric OURSEL <eric_oursel at bigfoot.com>
X-Mailer: Mozilla 4.61 [en] (X11; I; Linux 2.2.13-7mdk i586)
X-Accept-Language: en
MIME-Version: 1.0
To:     submit at bugs.kde.org
Subject: Namespace support in kdevelop Beta4.1
Content-Type: multipart/mixed;
 boundary="------------815E35FBBE9750920C738B76"
Return-Path: <eric_oursel at bigfoot.com>
X-Orcpt: rfc822;submit at bugs.kde.org

This is a multi-part message in MIME format.
--------------815E35FBBE9750920C738B76
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

Package: kdevelop
Version: Beta4.1

I found bugs in the namespace support inside kdevelop beta4.1. It is
impossible to access the DEFINITION of a method defined in a class
inside a namespace. 

You will find attached a patch which solves the problem. 

Best regards.
--------------815E35FBBE9750920C738B76
Content-Type: text/plain; charset=us-ascii;
 name="ClassParser.cc_patch"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
 filename="ClassParser.cc_patch"

--- kdevelop-1.0beta4.1/kdevelop/classparser/ClassParser.cc	Sun Oct 24 17:46:46 1999
+++ ../kdevelop-1.0beta4.1/kdevelop/classparser/ClassParser.cc	Tue Nov  2 23:03:13 1999
@@ -277,7 +277,6 @@
     getNextLexem();
 }
 
-
 void CClassParser::parseNamespace()
 {
   getNextLexem();
@@ -312,13 +311,18 @@
   getNextLexem();
 
   while(lexem != 0 && lexem != '}') {
-    parseTopLevelLexem();
+    if( isGenericLexem() )
+      parseGenericLexem( &store.globalContainer );
+    else
+      parseTopLevelLexem();
+    getNextLexem();
   }
 
   namespace_stack.pop_back();
 }
 
 
+
 /*---------------------------------------- CClassParser::parseUnion()
  * parseUnion()
  *   Parse an union.
@@ -1044,8 +1048,20 @@
   // Skip forward declarations.
   if( lexem != ';' )
   { 
+    // patch E.OURSEL
+   QString fully_qualified_name;
+
+    for( list<QString>::const_iterator i = namespace_stack.begin();
+	 i != namespace_stack.end();
+	 ++i
+	 ) {
+      fully_qualified_name += *i;
+      fully_qualified_name += QString("::");
+    }
+    fully_qualified_name += className;
+    // patch E.OURSEL
     // Try to move the values to the declared method.
-    aClass = store.getClassByName( className );
+    aClass = store.getClassByName( fully_qualified_name );
     if( aClass != NULL)
     {
       pm = aClass->getMethod( aMethod );

--------------815E35FBBE9750920C738B76--





More information about the KDevelop-devel mailing list