break with "too many }'s" and "got EOF" when C++11 enum class is used
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
pmccabe (Ubuntu) |
New
|
Undecided
|
Unassigned |
Bug Description
Whenever an enum uses the C++11 feature of "enum class", the parsing of the file is interrupted (remaining of file is not processed, at least on longer file some functions are not documented)
Sample test (file aa.hpp):
namespace Foo
{
class Bar
{
public:
Bar() {}
~Bar() {}
enum class foobar
{
YES, NO, FILE_NOT_FOUND
};
void hello();
};
}
Output: (pmccabe aa.hpp)
1 1 0 7 1 aa.hpp(7): Foo::Bar::Bar
1 1 0 8 1 aa.hpp(8): Foo::Bar::~Bar
"aa.hpp", line 12: too many }'s
"aa.hpp", line 16: unexpected EOF
$ lsb_release -rd
Description: Ubuntu 12.10
Release: 12.10
$ apt-cache policy pmccabe
pmccabe:
Installed: 2.6
Candidate: 2.6
Version table:
*** 2.6 0
500 http://
100 /var/lib/
What I would have expected to happen: successful processing of the file, as when the "enum class" is replaced by "enum"
Thanks for the report! Solved upstream with the 2.8 release, see https:/ /gitlab. com/pmccabe/ pmccabe/ -/commit/ dee9f7e06fe6b07 2a890ad2240ac23 df8c7c97c4