One thing I noticed in include/alloc_exceptions.h is that you do not specify public or private inheritence for some of the classes. For example, the shm_page_exception inherits from the base class alloc_exception but you only have:
class shm_page_exception : alloc_exception {
...
};
The default level of inheritence for a class, when not specified, is private. I've been changing this to public, so that exceptions can be caught by catching std::exception.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
One thing I noticed in include/alloc_exceptions.h is that you do not specify public or private inheritence for some of the classes. For example, the shm_page_exception inherits from the base class alloc_exception but you only have:
class shm_page_exception : alloc_exception {
...
};
The default level of inheritence for a class, when not specified, is private. I've been changing this to public, so that exceptions can be caught by catching std::exception.
All should be public inheritence now. Fixed in CVS.
Marc