Bug #15981 2009-07-10 19:59

qwertz455

"Find declaration" not working with exceptions

Hi,

the two options "Find declaration" and "Find implementation" in right-click context-menu are not working correctly if used on a function declaration using the "throw" keyword:

Example:

void removeDirectory(const string& directory) throw (FileError);

"Find declaration" finds the implemenation, which is wrong.

"Find implementation" doesn't find anything at all.

Without the "throw"-keyword everything works normally.

I hope you can find the error and do a patch, as the "Find ..." function is really handy, if working correctly.

Best regards, ZenJu

Category
 
Group
 
Status
Open
Close date
 
Assigned to
 
ollydbg 2009-07-16 13:58

It works fine here in the new code completion branch.

qwertz455 2009-07-18 12:19

Maybe this bug occurs not under all circumstances.

However here are the steps to reproduce:

1. Download FreeFileSync source files:

http://sourceforge.net/projects/freefilesync/files/freefilesync/Sourcecode_v2.1.zip

2. Open the project file "FreeFileSync.cbp"

3. Navigate to Headers/library/shadow.h

4. Try to find definition of

Zstring makeShadowCopy(const Zstring& inputFile) throw(FileError); //returns filename on shadow copy

The described bug should occor.

Thanks, ZenJu