Hello,
the class browser seems to be confused when encounter throwable
exceptions declarations on methods prototypes. Take as example the
following code piece:
[myexception.h]
#include <string>
#include <stdexcept>
using std::string;
using std::runtime_error;
namespace my
{
class MyException : public runtime_error
{
public:
MyException(const string& msg);
};
}
[myexception.cpp]
#include "myexception.h"
using my::MyException;
MyException::MyException(const string& msg)
:runtime_error(msg)
{
}
[myclass.h]
namespace my
{
class MyClass
{
public:
MyClass();
~MyClass();
void my_method(int something) const throw(MyException);
};
}
[myclass.cpp]
#include "myclass.h"
using my::MyException;
using my::MyClass;
MyClass::MyClass()
{
}
MyClass::~MyClass()
{
}
void
MyClass::my_method(int something) const throw(MyException)
{
int remind_me;
if (something !=3D 0)
throw MyException("Hey! You must pass 0 as argument!");
}
Ok, in the class browser i see:
+MyException
+MyClass
| |- ~MyClass()
| |- MyClass()
|
|- remind_me : int
1 - Below the MyClass node "my_method" does not appear;
2 - The "remind_me" variable declared into "my_method" appear as a global o=
ne;
3 - This happen for all methods with a throwable exception declaration;
4 - The project compile and link as expected, without warnings or errors.
Have someone any ideas about how to fix it?
Thank you,
--
Gaetano Sferra
|