Bug 111341 - c++ parser runs on the active file, even if it isn't a c++ file
Summary: c++ parser runs on the active file, even if it isn't a c++ file
Status: RESOLVED FIXED
Alias: None
Product: kdevelop
Classification: Unclassified
Component: Problem reporter (show other bugs)
Version: 3.2.0
Platform: openSUSE RPMs Linux
: NOR normal (vote)
Target Milestone: ---
Assignee: kdevelop-bugs-null
URL:
Keywords:
: 91634 111479 (view as bug list)
Depends on:
Blocks:
 
Reported: 2005-08-23 12:31 UTC by Luke Tucker
Modified: 2006-12-29 10:54 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Luke Tucker 2005-08-23 12:31:35 UTC
Version:           3.2 (using KDE KDE 3.4.0)
Installed from:    SuSE RPMs
Compiler:          gcc 3.3.5 
OS:                Linux

If you use multiple inheritance in a CORBA idl interface defenition, KDevelop mistakenly highlights it as an error. For example:

// -- Includes
#include "IGEN/IGENviewModel.idl"
#include "IGPR/IGPRviewModel.idl"

interface IOBQviewModel: IGENviewModel, IGPRviewModel  // <--ERROR HIGHLIGHTED HERE
{
  // EXCEPTIONS

  // METHODS

  // update used entries on the display
  oneway void updateUsedEntries( in unsigned short entries );  // <-- AND HERE
}


However the following is fine and reports no errors:

// -- Includes
#include "IGEN/IGENviewModel.idl"

interface IOBQviewModel: IGENviewModel
{
  // EXCEPTIONS

  // METHODS

  // update used entries on the display
  oneway void updateUsedEntries( in unsigned short entries );
}

Both examples are vaild interface descriptions (omniORB).
Comment 1 Jens Dagerbo 2005-12-12 14:29:58 UTC
KDevelop's parser doesn't support IDL. It tries to parser it as a C++ file and (obviously) finds problems.

The bug here is that non-C/C++ files are parsed at all.
Comment 2 Jens Dagerbo 2006-04-16 00:05:52 UTC
*** Bug 111479 has been marked as a duplicate of this bug. ***
Comment 3 Jens Dagerbo 2006-12-19 20:00:14 UTC
*** Bug 91634 has been marked as a duplicate of this bug. ***
Comment 4 Jens Dagerbo 2006-12-29 10:54:16 UTC
SVN commit 617453 by dagerbo:

This patch does a few related things:
#removes a lot of unused and weird stuff from problemreporter
#all parser activation decisions are moved back into cppsupport where it belongs, problemreporter is just UI
#fixes flickering problem tabs
#fixes a case where  already open documents don't get a problem icon marker
#fixes sorting so it happens numerically, no lexographically
#afaik fixes repeated entries. if this still happens, I don't think problem reporter is responsible
#afaik fixes the remaining cases where the parser could be invoked against non-c/c++ files

BUG: 111341
BUG: 117621
BUG: 131716
BUG: 135958


 M  +53 -14    cppsupportpart.cpp  
 M  +9 -4      cppsupportpart.h  
 M  +44 -144   problemreporter.cpp  
 M  +7 -16     problemreporter.h