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
 Feature Requests
 Parsing Alternate Path Delimiters
 New Topic  Reply to Topic
 Printer Friendly
Author Previous Topic Topic Next Topic  

shanew
New Member

4 Posts

Posted - Aug 14 2006 :  5:46:38 PM  Show Profile  Reply with Quote
I use VAX to do some windows and some linux development. To do the linux development I have a drive mapped to a linux computer which contains the linux c/c++ and system headers. I add this directory to my "Other Include Files" so this way VAX will parse those headers and help me out when developing on linux.

My suggestion comes in when I include STL headers such as <map> that header file in linux includes several other headers one of which actually defines std::map, the problem is linux path delimeters are / and not \\ like windows, so they include something like <bits/stl_map.h> for example. It should be a very simple fix to have your parser check any includes and convert forward slashes / to backward slashes \\, doing that should solve this problem. Other than this one small bit this really helps out doing linux dev on a windows box.

Thanks

Edited by - shanew on Aug 14 2006 5:47:54 PM

support
Whole Tomato Software

5566 Posts

Posted - Aug 14 2006 :  5:50:03 PM  Show Profile  Reply with Quote
Are you suggesting VA X "auto fix" all include statements in your project?
Go to Top of Page

feline
Whole Tomato Software

United Kingdom
19024 Posts

Posted - Aug 14 2006 :  6:21:09 PM  Show Profile  Reply with Quote
i do half of my development work under UNIX, so often have

#include "dir/fred.h"

intermixed with

#include "dir\\jane.h"

in my code, and both VA and the IDE seem quite happy to find the include files and to compile the resulting code. if you open the Linux map header and use alt-g on the include lines what happens? it is possible that VA does not know how to find the files, since it has not been given the correct directories to search.

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

shanew
New Member

4 Posts

Posted - Aug 14 2006 :  6:54:18 PM  Show Profile  Reply with Quote
Ok after testing this a bit more the problem isn't the forward slashes, those are interpreted correctly without problems. Something with the directories must be screwing this up, I'll have to investigate further.

Edited by - shanew on Aug 14 2006 7:01:03 PM
Go to Top of Page

shanew
New Member

4 Posts

Posted - Aug 14 2006 :  7:12:54 PM  Show Profile  Reply with Quote
Ok I can Alt-G on this line: #include <map> and i get to the map header file in the linux system includes dir (which I mapped and put in the custom directories in VAX). Inside that file it has the following:

#ifndef _GLIBCXX_MAP
#define _GLIBCXX_MAP 1

#pragma GCC system_header

#include <bits/stl_tree.h>
#include <bits/stl_map.h>
#include <bits/stl_multimap.h>

#ifdef _GLIBCXX_DEBUG
# include <debug/map>
#endif

#endif

For some reason if I use Alt-G on the #include <bits/stl_map.h> nothing happens... however, if I copy that line into my source it does work. Is there something in the include messing it up?
Go to Top of Page

feline
Whole Tomato Software

United Kingdom
19024 Posts

Posted - Aug 15 2006 :  6:23:22 PM  Show Profile  Reply with Quote
off the top of my head, none of those lines should cause any problems. what happens if you copy all of this code into your source, and then try alt-g?

my gut instinct is to say it is something about the directory the current file is sitting in, but i cannot justify that theory. it would make sense if you had #include "file", but not for angle bracket includes. most strange.

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

shanew
New Member

4 Posts

Posted - Aug 16 2006 :  09:53:54 AM  Show Profile  Reply with Quote
Well I tried pasting the whole thing into a cpp file and then trying Alt-G on the #include <bits/stl_map.h> line and it works if this line is in the cpp file.

As you said this is quite strange. The only way I can get VAX to help me out w/ any of the STL classes (when doing linux dev from windows anyway) is to directly include the header file (like: #include <bits/stl_map.h>) which seems like a bad way to solve this.
Go to Top of Page

feline
Whole Tomato Software

United Kingdom
19024 Posts

Posted - Aug 16 2006 :  6:31:06 PM  Show Profile  Reply with Quote
i am assuming you have created a project in the IDE to hold the source you are editing for linux. if not you should, so that VA knows about all of your files. the easiest solution is probably to add the STL headers to this dummy project, so that VA can find them.

zen is the art of being at one with the two'ness
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