T O P I C R E V I E W |
khb |
Posted - Aug 17 2006 : 04:18:27 AM I tried to change the signature of a member function while the corresponding *.h and *.cpp files were write protected. VA did not notice that. The files remained unchanged, but VA presented all references to that function and prompted me to modify them accordingly. Itstead, it should have shown an error message.
VC6, Win XP, no further add-ins.
Regards, Marcus. |
11 L A T E S T R E P L I E S (Newest First) |
khb |
Posted - Sep 17 2006 : 1:49:17 PM For sure, any solution you guys might come up with will be better than the current implementation
Thanks for all those bumpings
Regards, Marcus. |
feline |
Posted - Sep 16 2006 : 10:52:34 AM this case has been bumped quite a lot, mainly due to the rather nasty case in this thread:
http://forum.wholetomato.com/forum/topic.asp?TOPIC_ID=5291
i am not sure how it will be resolved though. |
khb |
Posted - Sep 13 2006 : 02:33:18 AM Is there a change of getting the priority for case 2153 bumped a little bit? I run into this problem quite often and it always confuses me...
I'm currently using build 1534.
Regards, Marcus. |
khb |
Posted - Aug 28 2006 : 02:56:11 AM I have both options turned off, too. I can simply modify read-only files in the IDE. But when I want to save/compile, then I get a warning that saving isn't possible. I would never use the second option you mentioned, because sometimes I start modifying a file and then notice that I have to check it out first. Of course, in most of these cases I don't want to kill the modifications I already made.
If I can give more information, please ask.
Regards, Marcus. |
feline |
Posted - Aug 26 2006 : 1:24:00 PM there are a couple of settings that might just be relevant here. firstly:
VA Options -> Text Editor -> C/C++ -> watch for externally modified headers and reparse when necessary
secondly: VC6 tools menu -> options -> editor tab -> automatic reload of externally modified files
i have both of these turned off on my test system.
what happens if you manually try to edit one of the read only files? does VC6 allow you to do so? it would make a degree of sense if the IDE knew the files were read only, but VA was not aware of this "flag", and so failed to modify them. |
khb |
Posted - Aug 22 2006 : 02:27:51 AM Our VCS is MKS Source Integrity and I'm sure that the IDE doesn't know anything about it. But I would expect that manually setting the read-only flag should result in the same bahavior. However, when I check out a file it gets modified (a comment containing the version number is changed). I don't know if this combination might cause the different behavior.
Regards, Marcus. |
feline |
Posted - Aug 21 2006 : 6:58:58 PM do you have any plugin's, or settings that would allow the IDE to know about your version control system? i know you can tell VS2005 about your version control system, and i half remember that VC6 can integrate with Source Safe.
since i have no version control installed on my test machine i simply set the read only flag on the files manually, via explorer. if the IDE knows that the files are under external control it may be applying additional restrictions.
the problem with change signature on the overloaded function is a known limitation. currently VA does not properly understand which overload is which. you see the same effect on alt-g, it lists all of the overloads rather than knowing which one you have called. this is on our list of things to look into, but i am not sure when it will be addressed.
case=2164 |
khb |
Posted - Aug 21 2006 : 03:40:35 AM Good question. The write protection is applied by our version control system. When I check out files, they loose their write protection; when I check them in again, they get write protected again. However, I can't remember if I had checked out and in again the affected files before I tried to modify them while they were not checked out. But I "was" able to reproduce it.
I just did another two tests. The files were write protected before starting the IDE. I opened the .h and .cpp file. I applied "Change Signature" to the declaration of a function and added a parameter (first run: "int i", second run "int i = 0"). In both cases the declaration was not changed, but the definition was. Then I reran both tests (on the already open files after doing an "undo") and it worked as it should. I guess I always get the hard nuts to crack.
However, when doing the tests I ran in another problem: I have two functions: BOOL SetItemText(int nItem, int nSubItem, const std::string& strText);
BOOL SetItemText(int nItem, int nSubItem, int iNumVal); If I try to apply "Change signature" on either function, the change signature window will always show the declaration of the the first function. So I have no chance to change the signature of the second function.
Regards, Marcus. |
feline |
Posted - Aug 20 2006 : 5:03:44 PM thats interesting. how did you write protect the files? were they write protected when you opened the workspace in VC6 or did you write protect them afterwards?
i am wondering why you got such a different effect to me. there could be two separate problems here. |
khb |
Posted - Aug 20 2006 : 04:41:55 AM Well, I also had the write protected .h and .cpp files open in the IDE when I was applying a "Change signature" to a function declared/defined in the two files. The files were not modified at all by VAX.
Regards, Marcus. |
feline |
Posted - Aug 19 2006 : 10:02:39 AM i am seeing the same thing here, in both VC6 and VS2003. for me VA applies the rename to the open files (i actually had them open in the IDE when i ran the rename) but the IDE gets upset when i try to save them.
case=2153 |