Just for some context, the MPW C compiler that produced those messages was actually not developed internally at Apple, but was rather done by Green Hills Software [1] under contract as mentioned on the wikipedia page [2] and its source [3] which is funnily enough about this exact same topic.
I forget what happened to the Green Hills folks, but the official MPW C compiler was an offshoot of the MPW Pascal compiler, and was written by Roger Lawrence at Apple in about a year (around 1987-1988) largely as a reaction to what he thought was a terrible contract.
The Green Hills folks were likewise upset at Roger's effort. "Anyone who says they can write a compiler in a year should be fired." Roger himself held the same opinion, a couple of years later :-)
I sat next to Roger while he wrote that thing, he was in the next cubie over (I was working on the MPW linker and some other tools). He types really fast.
I think my first real push with MPW was using it as an environment to host the AT&T C++ compiler, which at that time was still a bunch of preprocessor macros written by Bjarne himself.
I was introduced to MPW when I started at Apple in 1995. I started on Quickdraw GX (if anyone remembers that).
Not specifically related to MPW, more about the times, a clean compile of the Quickdraw GX framework took something like eight hours. (Fortunately incremental builds were much quicker.) Nonetheless, it was common to kick off a clean build as you were leaving the office for the night.
Funny to think about that compiler compiling all night as I had dinner, watched a little cable TV, got some sleep....
I was a cfront beta site using MPW; for people that don't know, that was the self-compiling C++ from C, before the first AT&T C++ compiler, in the late 1980s.
As long as it doesn’t contravene the Apple Style Guide:
“Humor can enhance documentation by adding to a reader’s enjoyment and by helping to lighten the tone. Humor usually works best in examples, where it’s less likely to distract the reader. Be careful that your humor is in good taste—one reader’s joke can be another reader’s insult—and keep in mind that humor may not translate well in localized text.”
> This label is the target of a goto from outside of the block containing this label AND this block has an automatic variable with an initializer
I get this issue a lot on modern compilers, when trying to write switch/macro-based coroutines (https://www.chiark.greenend.org.uk/~sgtatham/coroutines.html) in C++. Does anyone have a workaround? (I hope it doesn't involve C++20 coroutines... I still don't understand them.)
If your variable is a class without a trivial default constructor, then you're out of luck. Otherwise, the workaround is to not initialize the variable, and to instead assign to it immediately after declaring it (e.g., replace "int x = 42;" with "int x; x = 42;").
I remember when I compiled a "hello world" with some new OO framework, possibly MacApp, and it was something like 400K, to do nothing, and I thought that was outrageous and obviously much too bloated for real software.
[+] [-] Veserv|4 years ago|reply
[1] https://en.m.wikipedia.org/wiki/Green_Hills_Software
[2] https://en.m.wikipedia.org/wiki/Macintosh_Programmer%27s_Wor...
[3] https://web.archive.org/web/20140528005901/http://lists.appl...
[+] [-] kabdib|4 years ago|reply
The Green Hills folks were likewise upset at Roger's effort. "Anyone who says they can write a compiler in a year should be fired." Roger himself held the same opinion, a couple of years later :-)
I sat next to Roger while he wrote that thing, he was in the next cubie over (I was working on the MPW linker and some other tools). He types really fast.
[+] [-] dls2016|4 years ago|reply
I did find this press release, but it really just raises more questions than answers anything. https://www.prnewswire.com/news-releases/ubm-electronics-and...
[+] [-] watersb|4 years ago|reply
I had forgotten about these.
I think my first real push with MPW was using it as an environment to host the AT&T C++ compiler, which at that time was still a bunch of preprocessor macros written by Bjarne himself.
[+] [-] JKCalhoun|4 years ago|reply
Not specifically related to MPW, more about the times, a clean compile of the Quickdraw GX framework took something like eight hours. (Fortunately incremental builds were much quicker.) Nonetheless, it was common to kick off a clean build as you were leaving the office for the night.
Funny to think about that compiler compiling all night as I had dinner, watched a little cable TV, got some sleep....
[+] [-] mistrial9|4 years ago|reply
[+] [-] scroot|4 years ago|reply
[+] [-] unfocussed_mike|4 years ago|reply
A very underrated, idiosyncratic, clever development environment, somehow more reminiscent of Poplog than anything else I've used.
[+] [-] mastax|4 years ago|reply
[+] [-] Austin_Conlon|4 years ago|reply
“Humor can enhance documentation by adding to a reader’s enjoyment and by helping to lighten the tone. Humor usually works best in examples, where it’s less likely to distract the reader. Be careful that your humor is in good taste—one reader’s joke can be another reader’s insult—and keep in mind that humor may not translate well in localized text.”
https://help.apple.com/applestyleguide/#/apsg9dac5903
[+] [-] threeseed|4 years ago|reply
I want it to give helpful, accurate advice as succinctly as possible.
[+] [-] memco|4 years ago|reply
[+] [-] nojito|4 years ago|reply
https://www.theiphonewiki.com/wiki/TigrisAni_15A93720r
[+] [-] imoverclocked|4 years ago|reply
[+] [-] nyanpasu64|4 years ago|reply
I get this issue a lot on modern compilers, when trying to write switch/macro-based coroutines (https://www.chiark.greenend.org.uk/~sgtatham/coroutines.html) in C++. Does anyone have a workaround? (I hope it doesn't involve C++20 coroutines... I still don't understand them.)
[+] [-] josephcsible|4 years ago|reply
[+] [-] secabeen|4 years ago|reply
Not possible any more!!!
[+] [-] Infernal|4 years ago|reply
EDIT: Sibling beat me by a couple minutes. DO great minds really think alike?
[+] [-] abrowne|4 years ago|reply
[+] [-] Someone|4 years ago|reply
[+] [-] smoldesu|4 years ago|reply
[+] [-] rjsw|4 years ago|reply
[+] [-] elahieh|4 years ago|reply
https://groups.google.com/g/rec.humor.funny/c/knG5ONlInXM/m/...
[+] [-] fghorow|4 years ago|reply
Object Pascal.
MacApp.
Ahh, memories. (Some of them are even _good_ memories! ;-) )
[+] [-] vba616|4 years ago|reply
[+] [-] unknown|4 years ago|reply
[deleted]