Whole Tomato Software Forums
Whole Tomato Software Forums
Main Site | Profile | Register | Active Topics | Members | Search | FAQ
User name:
Password:
Save Password
Forgot your password?

 All Forums
 Visual Assist
 Technical Support
 Move impl to source on inlined constructor
 New Topic  Reply to Topic
 Printer Friendly
Author Previous Topic Topic Next Topic  

andre.horst
Tomato Guru

Germany
150 Posts

Posted - Nov 05 2008 :  05:17:47 AM  Show Profile  Reply with Quote
Latest VAX, VS2008 SP1, C++, WinXP SP2

"Moving implementation to source" on a inlined constructor does not remove the "inline" keyword.

write down in your header:


class foo
{
public:
  inline foo()
  {
     // some code
  }
}

Now move cursor to constructor "foo" and "Move implementation to source", that results in


class foo
{
public:
  inline foo();
}

accord
Whole Tomato Software

United Kingdom
3287 Posts

Posted - Nov 08 2008 :  09:13:39 AM  Show Profile  Reply with Quote
Interesting: I pasted your example into a header, but everything working as expected (inline keyword removed both from header and cpp file) using VS2008 SP1 and VAX 1649.

Can you try to create a new win32 test project and then create a new header which have a cpp-pair and paste your example into the header file? I am curious if your problem will appear here or not. Your project may have something that confuse our parser.
Go to Top of Page

andre.horst
Tomato Guru

Germany
150 Posts

Posted - Nov 10 2008 :  03:15:31 AM  Show Profile  Reply with Quote


I tried the example too and it worked as expected. Than i tried following that was more "real"

class CTestInl
{
public:
	inline CTestInl(void)
	: m_i(0)
	{
		int i = 0 ;
	}
	~CTestInl(void);

private:
	int m_i ;
};

Now "Move implementation" of constructor to source file and get wondered what happend
Go to Top of Page

accord
Whole Tomato Software

United Kingdom
3287 Posts

Posted - Nov 12 2008 :  3:32:17 PM  Show Profile  Reply with Quote
Good work!
I am seeing the same effect here. Thank you for the clear description!

case=20884

The problem was caused by the initializer list.
Go to Top of Page
  Previous Topic Topic Next Topic  
 New Topic  Reply to Topic
 Printer Friendly
Jump To:
© 2023 Whole Tomato Software, LLC Go To Top Of Page
Snitz Forums 2000