Whole Tomato Software Forums
Whole Tomato Software Forums
Main Site | Profile | Register | Active Topics | Members | Search | FAQ
 All Forums
 Visual Assist
 Technical Support
 1714: C++ Create implementation, enum namespace.

You must be registered to post a reply.
Click here to register.

Screensize:
UserName:
Password:
Format: BoldItalicizeUnderlineStrikethrough Align leftCenterAlign right Insert horizontal ruleUpload and insert imageInsert hyperlinkInsert email addressInsert codeInsert quoted textInsert listInsert Emoji
   
Message:

Forum code is on.
Html is off.

 
Check to subscribe to this topic.
   

T O P I C    R E V I E W
drzoom Posted - Jan 26 2009 : 05:19:22 AM
Hi, there is a bug which is quite old. But it starting annoying me :-)


class A {
public:
enum Foo { X, Y, Z };
};

class B {
public:
Foo foo();
}


If you create an implementation for foo(), you expect this code:


A::Foo B::foo()
{
}


or this (IMO better)


B::Foo B::foo()
{
}


but you get this:


Foo B::foo()
{
}


Which is definitely wrong. :-) Easy fix?

But I have to state that "create implementation" is working well for template classes! Respect!
2   L A T E S T    R E P L I E S    (Newest First)
sean Posted - Feb 02 2016 : 7:58:50 PM
case=1247 is fixed in build 2089.
feline Posted - Jan 26 2009 : 2:10:47 PM
I am seeing the same effect here. Thank you for the clear description.

case=1247

This has actually been fixed quite a while ago, but as this code proves, it is only fixed for some situations. This suggests it is not quite such an easy fix.

If the enum is defined inside the class then the enum return type is qualified correctly.

© 2023 Whole Tomato Software, LLC Go To Top Of Page
Snitz Forums 2000