Correct, it wouldnt really matter anymore. But it reminds me of cobbling together a pointer from 8 bit values (because earlier C compiler was not able to dereference the construct with a baseline PIC as target).while(1) is better than goto in C/C++ because it's easier to read, which makes the code easier to maintain. Code within the while() should be clearly enclosed by curly braces { } and intended, unless your loop consists of only a single line. So it's obvious at a glance exactly what code is included within the loop. With a goto you have to go digging around looking for the target label. And if the intern wrote the code, the loop might contain a bazillian lines of code instead of a handful of function calls.
If the constant "1" suddenly becomes non-true in C/C++, then the while(1) will be the least of your worries.
Normally my main loop is with a screen page or two, and I dont use a lot of goto. But there are some instances where it looks more naturally to me. I dislike switch constructs stretching over pages (think of PASCAL language horrors here).
So I use tables whereever Id line up the same function calls many times.
I think from now on I will use the goto variant instead of while(1), even if theres not really a potential for confusion.
A few goto instructions are no problem at all, when their scope is within a short range.
Ive also had a case where the computation for the condition is only possible after processing most of the loop, need to resort to flags (more than one). With a goto, I simply reuse part of the code above, instead of duplicating it again (need to run the actual code first before arriving at the tet condition result).
Its far less lines using a goto and less complicated.
I agree other constructs such as while should be given priority.