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
 VA Refactoring forgets type.
 New Topic  Reply to Topic
 Printer Friendly
Author Previous Topic Topic Next Topic  

mark_nefedov
New Member

Russia
4 Posts

Posted - Sep 26 2019 :  11:16:30 AM  Show Profile  Reply with Quote
I wasn't able to find where should I send bug reports. so I'll post it here.
https://youtu.be/iISfqQ8sqpM
When performing "Move implementation to source file" VA takes only the namespace/class first name before "::" split.

feline
Whole Tomato Software

United Kingdom
16105 Posts

Posted - Sep 27 2019 :  08:52:39 AM  Show Profile  Reply with Quote
This is a good place to report bugs and ask questions. You can also email support, as explained on this page:

https://www.wholetomato.com/support/contact

Which IDE and version of VA are you using? Is this problem specific to the "vk" namespace, or does it happen with all namespaces?

Based on the video I have produced the following, simple test case. The header file contains the following code:

namespace vkFeline
{
	class CommandPoolFeline
	{
	public:
		CommandPoolFeline() = default;
	};
}

namespace zortaFeline::RenderingFeline
{
	vkFeline::CommandPoolFeline GetCommandPool(const int que_family_index, int logical_device)
	{
		return vkFeline::CommandPoolFeline();
	}
}

when I trigger Move Implementation to Source File on the "GetCommandPool" function the matching cpp file ends up with the code:

vkFeline::CommandPoolFeline zortaFeline::RenderingFeline::GetCommandPool(const int que_family_index, int logical_device)
{
	return vkFeline::CommandPoolFeline();
}

no sign of the problem you are seeing. I am testing this using VS2017 and VA 2341.2 with a standard C++ solution.

Can you please try the same test code on your system? I have renamed the namespaces and classes, so you should not have any problems testing this code on your system.

zen is the art of being at one with the two'ness
Go to Top of Page

mark_nefedov
New Member

Russia
4 Posts

Posted - Sep 27 2019 :  10:08:55 AM  Show Profile  Reply with Quote
Thanks for the reply!

Your code works fine, there is something specific with Vulkan c++ bindings.

https://youtu.be/wVk8Rqfbu3Q

My system info:
License: nefedov.m.v@edu.mirea.ru (Non-renewable Academic license) Support ends 2020.02.12
VA_X.dll file version 10.9.2341.2 built 2019.08.05
DevEnv.exe version 16.3.29324.140 Community
msenv.dll version 16.0.29318.209
Comctl32.dll version 6.10.18362.356
Windows 10 10.0 1903 Build 18362.356
16 processors (x86-64, WOW64)
Language info: 1252, 0x409

Edited by - mark_nefedov on Sep 27 2019 10:33:55 AM
Go to Top of Page

feline
Whole Tomato Software

United Kingdom
16105 Posts

Posted - Sep 28 2019 :  07:57:29 AM  Show Profile  Reply with Quote
If you place the caret into the namespace "vk" and press Alt-G, what, if anything, happens?

I have found Vulkan C++ here:

https://github.com/KhronosGroup/Vulkan-Hpp

is this what you are using? I have tried just downloading this and including the main header file, which reproduces the problem you are seeing. However, since Alt-G on "vk" does not do anything, this isn't actually a useful or valid test.

zen is the art of being at one with the two'ness
Go to Top of Page

mark_nefedov
New Member

Russia
4 Posts

Posted - Sep 28 2019 :  09:49:40 AM  Show Profile  Reply with Quote
I'm using hpp that comes with SDK package 1.1.121.0 if I place the caret on the vk namespace it takes me to the "namespace VULKAN_HPP_NAMESPACE".
https://imgur.com/a/Sccv1kg
if I replace vk with VULKAN_HPP_NAMESPACE in the function signature, everything works just fine.

Edited by - mark_nefedov on Sep 28 2019 09:52:49 AM
Go to Top of Page

feline
Whole Tomato Software

United Kingdom
16105 Posts

Posted - Sep 28 2019 :  4:37:15 PM  Show Profile  Reply with Quote
Can you please make a new, blank text file called "va_stdafx.h" and place this in the same directory as your .SLN, the root directory of your solution.

Now edit the file and make sure it contains the single line of code:

#define VULKAN_HPP_NAMESPACE vk

and ends with a blank line. VA automatically looks for this special helper file, which is used to tell the parser any particular, solution specific things we need to tell it.

Since VA looks for the file directly there is no need to add it to the solution, and it should not be part of your solution.

Now load the IDE, go into the VA options dialog, and press the button:

VA Options -> Performance -> Rebuild symbol databases

this will take effect when you next restart your IDE. This fixes the Move Implementation to Source File problem for me here, doing the same basic test that you used in your latest screen shot, so this should fix the problem for you as well.

zen is the art of being at one with the two'ness
Go to Top of Page

mark_nefedov
New Member

Russia
4 Posts

Posted - Sep 29 2019 :  07:47:59 AM  Show Profile  Reply with Quote
That helped! thank you!
Go to Top of Page
  Previous Topic Topic Next Topic  
 New Topic  Reply to Topic
 Printer Friendly
Jump To:
© 2019 Whole Tomato Software, LLC Go To Top Of Page
Snitz Forums 2000