Comment by Ryan Mulder (rjmyst3) - Wednesday, 22 October 2008, 00:13 GMT+1 — Edit — Delete
what do you suggest?

Comment by Jon (rioch) - Wednesday, 22 October 2008, 08:40 GMT+1 — Edit — Delete
You've got a few options:

Do not allow a hyphen in the file name;
Comment by Jon (rioch) - Wednesday, 22 October 2008, 08:44 GMT+1 — Edit — Delete
Woops...didn't mean to post that.

Anyway, options are:

Do not allow hyphen in file name;
Allow hyphen in file name, but swap the hyphen for an underscore _ in the include directive
Provide a separate field/configuration for coding standards (i.e. pointer start with m_p).
Option 3 would be nice, but that adds huge new features and will be time consuming. For now, I'd go with the second option. Underscore seems to be an unwritten coding standard for include directives.

Comment by Ryan Mulder (rjmyst3) - Wednesday, 22 October 2008, 13:25 GMT+1 — Edit — Delete
The include directive needs to be exact for the preprocessor to find your file - we cannot change the filename for the include directive.

This is a simple garbage-in = garbage-out situation. If you don't want a hyphen in your filename, don't put one there. It doesn't need to be any more complicated than that.

Comment by Jon (rioch) - Wednesday, 22 October 2008, 13:35 GMT+1 — Edit — Delete
Sorry, I meant include guard. When I create the inherited classes, if I specify the file as foo-file, the files foo-file.h and foo-file.cpp are created, which is great. The problem is that in foo-file.h, the following (more or less) include guard is created:

#ifndef __foo-file_h__
#define __foo-file_h__

...

#endif
On the g++ compiler (and perhaps others), having a - in the include guard causes a compile error.

Apologies for using the wrong terminology.

Comment by Ryan Mulder (rjmyst3) - Wednesday, 22 October 2008, 14:03 GMT+1 — Edit — Delete
I think we can help you here. I like your second choice for its simplicity.