Whole Tomato Software Forums
Whole Tomato Software Forums
Main Site | Profile | Register | Active Topics | Members | Search | FAQ
 All Forums
 Visual Assist
 Technical Support
 VAX 1524: refactoring: move implementation/2

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
Uniwares Posted - Jun 20 2006 : 3:27:34 PM
When using macros for namespaces the "move implementation" somehow messes it up. I know that a tough one to solve

example:
#define BEGIN_MYNAMESPACE namespace x { namespace y {
#define END_MYNAMESPACE } }

Now, moving a function from the .h to the .cpp file will produce this:
(.h file)
BEGIN_MYNAMESPACE
  class test
  {
    ... some other functions
    void function1() { return; }
  }
END_MYNAMESPACE


(.cpp file)
BEGIN_MYNAMESPACE
    test::function0()...
    test::ctor() ...
    test::dtor()...
END_MYNAMESPACE
    void x::y::function1()
    {
      return;
    }


You can see that VAX correctly knows the full namespace, thus it expands it and prepends it to the function. But it takes it out of the real context.
2   L A T E S T    R E P L I E S    (Newest First)
support Posted - Aug 08 2006 : 01:20:33 AM
Fixed in build 1531.
feline Posted - Jun 20 2006 : 4:07:01 PM
VA does not currently place the new function into the namespace even without the macro's

i am not sure i want to think about how you go about making this work with macro's

case=1359

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