Where Is IntelliSense For "goto" statements?
-
We probably need to switch things, at least I think that's the case.
CQ de W5ALT
Walt Fair, Jr., P. E. Comport Computing Specializing in Technical Engineering Software
It would be fun if we do drag this thing for a while.
It's time for a new sig. Seriously.
-
It would be fun if we do drag this thing for a while.
It's time for a new sig. Seriously.
In the event that we can't, we'd better delegate someone to release the thread.
-
I don't use goto statements to exit a loop. Why is Dave thumbing his nose about using "goto"? If you decompile the .Net Framework, their developers still use "goto" statements. By the way, my original question has yet to be answered.
The mind is like a parachute. It doesn’t work unless it’s open.
a goto in some decompilation output does not prove there was a goto in the original source; it could be the decompiler did not recognize the original (looping) construct. In the end, every construct that changes the program flow is bound to get translated in an elementary jump/goto/branch/call/return instruction. :)
Luc Pattyn [Forum Guidelines] [Why QA sucks] [My Articles] Nil Volentibus Arduum
Please use <PRE> tags for code snippets, they preserve indentation, and improve readability.
-
I don't use the: "goto" statement very often but I have started using it more frequently. Does anyone know why Visual Studio does not implement IntelliSense for goto statements? For example: // VS code editor does not show IntelliSense with //available "Label_" when entering this goto statement if (condition == true) goto Label_ExitCode; //... Label_ExitCode: //...
The mind is like a parachute. It doesn’t work unless it’s open.
What language?
-
In the event that we can't, we'd better delegate someone to release the thread.
We could always repeat until the next topic comes up.
CQ de W5ALT
Walt Fair, Jr., P. E. Comport Computing Specializing in Technical Engineering Software
-
What language?
C# Have you noticed that no one has even remotely answered the original question?
The mind is like a parachute. It doesn’t work unless it’s open.
-
a goto in some decompilation output does not prove there was a goto in the original source; it could be the decompiler did not recognize the original (looping) construct. In the end, every construct that changes the program flow is bound to get translated in an elementary jump/goto/branch/call/return instruction. :)
Luc Pattyn [Forum Guidelines] [Why QA sucks] [My Articles] Nil Volentibus Arduum
Please use <PRE> tags for code snippets, they preserve indentation, and improve readability.
Point well taken.
The mind is like a parachute. It doesn’t work unless it’s open.
-
We could always repeat until the next topic comes up.
CQ de W5ALT
Walt Fair, Jr., P. E. Comport Computing Specializing in Technical Engineering Software
-
You could always try to override the topic.
-
You could always try to override the topic.
-
a goto in some decompilation output does not prove there was a goto in the original source; it could be the decompiler did not recognize the original (looping) construct. In the end, every construct that changes the program flow is bound to get translated in an elementary jump/goto/branch/call/return instruction. :)
Luc Pattyn [Forum Guidelines] [Why QA sucks] [My Articles] Nil Volentibus Arduum
Please use <PRE> tags for code snippets, they preserve indentation, and improve readability.
Luc Pattyn wrote:
translated in an elementary jump/goto/branch/call/return instruction
Good for the goose, good for the gander. There are instances where nothing else works, but they tend to be when you are implementing threads (not using them, implementing them). And when you are using VB. Wait, you are a VB programmer, why do you want to get rid of the only errorarrow in your quiver? Damn, that was a good line. :sigh: Except I wrote it after I read Dave Kreskowiak's signature, not yours, so it doesn't apply here. Well, I hope someone else can re-use it later. :)
Opacity, the new Transparency.
-
I don't use the: "goto" statement very often but I have started using it more frequently. Does anyone know why Visual Studio does not implement IntelliSense for goto statements? For example: // VS code editor does not show IntelliSense with //available "Label_" when entering this goto statement if (condition == true) goto Label_ExitCode; //... Label_ExitCode: //...
The mind is like a parachute. It doesn’t work unless it’s open.
Richard Blythe wrote:
Does anyone know why Visual Studio does not implement IntelliSense for goto statements?
Probably so newbies will not use it until they get to the point of understanding it's consequences. I took the lemonade in the 90s that discredited that particular set of structures and have not used a goto in more that 12 years. I do not regret the decision!
Never underestimate the power of human stupidity RAH
-
C# Have you noticed that no one has even remotely answered the original question?
The mind is like a parachute. It doesn’t work unless it’s open.
I was waiting for someone else to make a serious answer. I suspect it's because a label doesn't exist like a function or variable does. They don't allocate memory. Are they in the name/symbol table (or whatever)?
-
Richard Blythe wrote:
Does anyone know why Visual Studio does not implement IntelliSense for goto statements?
Probably so newbies will not use it until they get to the point of understanding it's consequences. I took the lemonade in the 90s that discredited that particular set of structures and have not used a goto in more that 12 years. I do not regret the decision!
Never underestimate the power of human stupidity RAH
It's more a language concern; modern languages have more robust sets of flow control constructs and so don't require it. I still have to use it DCL.
-
It's more a language concern; modern languages have more robust sets of flow control constructs and so don't require it. I still have to use it DCL.
PIEBALDconsult wrote:
modern languages have more robust sets of flow control
Absolutely, I can't understand why it has not been, what's that word, deprecated. For the life of me I can't think of a reason for it to be there, I wonder if GoSub is still in there as well.
Never underestimate the power of human stupidity RAH
-
PIEBALDconsult wrote:
modern languages have more robust sets of flow control
Absolutely, I can't understand why it has not been, what's that word, deprecated. For the life of me I can't think of a reason for it to be there, I wonder if GoSub is still in there as well.
Never underestimate the power of human stupidity RAH
Somewhere in this thread, it has been assumed that I'm a VB guy. I write C#, read C#, eat C#. (Okay, maybe not that die hard) :) I've been trying to dig up a good example of me using the "goto" statement. However, in most cases, I would probably get a pile of contradictory replys. I guess I should take the nearest exit on this "goto" road. :laugh:
The mind is like a parachute. It doesn’t work unless it’s open.
-
Somewhere in this thread, it has been assumed that I'm a VB guy. I write C#, read C#, eat C#. (Okay, maybe not that die hard) :) I've been trying to dig up a good example of me using the "goto" statement. However, in most cases, I would probably get a pile of contradictory replys. I guess I should take the nearest exit on this "goto" road. :laugh:
The mind is like a parachute. It doesn’t work unless it’s open.
Richard Blythe wrote:
I've been trying to dig up a good example of me using the "goto" statement.
I haven't used goto's, but my understanding is that they can be helpful in error handling, e.g. goto HandleError. It allows you to write code after such goto statements in such a way that it can assume that no error has occurred, thus simplifying things. One could argue that this is what exceptions are for. But the same reasoning that says that goto's are bad would seem to apply to exceptions, maybe even more so. Using goto to jump ahead within a function to execute some error handling code would seem less confusing than throwing the control flow completely out of the current context to who knows where.
-
Thanks for your informative post. :laugh:
The mind is like a parachute. It doesn’t work unless it’s open.
Ctrl-Space will drop down all available keywords/symbols (but it won't show just the labels). Maybe they never considered this a big enough priority since not many people use gotos these days.
Regards, Nish
Blog: blog.voidnish.com Most recent article: An MVVM friendly approach to adding system menu entries in a WPF application
-
Somewhere in this thread, it has been assumed that I'm a VB guy. I write C#, read C#, eat C#. (Okay, maybe not that die hard) :) I've been trying to dig up a good example of me using the "goto" statement. However, in most cases, I would probably get a pile of contradictory replys. I guess I should take the nearest exit on this "goto" road. :laugh:
The mind is like a parachute. It doesn’t work unless it’s open.
Richard Blythe wrote:
I've been trying to dig up a good example of me using the "goto" statement. However, in most cases, I would probably get a pile of contradictory replys.
Here's one case where "some people" think it's okay:
private static void Foo(int x)
{
Console.WriteLine(String.Concat("Option: ", x));switch (x) { case 0: Console.WriteLine("English"); goto case 1; case 1: Console.WriteLine("Spanish"); break; default: Console.WriteLine("English"); break; } Console.WriteLine();
}
And here's the refactored goto-less version:
private static void AltFoo(int x)
{
Console.WriteLine(String.Concat("Option: ", x));switch (x) { case 0: DisplayEnglish(); DisplaySpanish(); break; case 1: DisplaySpanish(); break; default: DisplayEnglish(); break; } Console.WriteLine();
}
private static void DisplaySpanish()
{
Console.WriteLine("Spanish");
}private static void DisplayEnglish()
{
Console.WriteLine("English");
}Regards, Nish
Blog: blog.voidnish.com Most recent article: An MVVM friendly approach to adding system menu entries in a WPF application
-
Somewhere in this thread, it has been assumed that I'm a VB guy. I write C#, read C#, eat C#. (Okay, maybe not that die hard) :) I've been trying to dig up a good example of me using the "goto" statement. However, in most cases, I would probably get a pile of contradictory replys. I guess I should take the nearest exit on this "goto" road. :laugh:
The mind is like a parachute. It doesn’t work unless it’s open.
Richard Blythe wrote:
Somewhere in this thread, it has been assumed that I'm a VB guy
I think goto started life in basic which morphed into VB so the assumption seems reasonable to me. There are a lot of us around that code in both VB and C#, most seem to have a preference to C# but VB is so very common. I moved our teams to C# because all the best examples are in that flavour (and I needed to learn something new/different about then anyway).
Never underestimate the power of human stupidity RAH