• Updated 2023-07-12: Hello, Guest! Welcome back, and be sure to check out this follow-up post about our outage a week or so ago.

C++ namespaces

uridium

Well-known member
$Greetings. :)

I'm trying to find a compiler for 68k that supports C++ namespaces and ideally also with namespace aliasing support. I've tried Symantec C++ v8r6 and CodeWarrior v11.

Anyone recommend one? (Happy to pay if it's not abandonware).

Current setup:

O/S: 7.6.1

System: LC-III

RAM: 36mb

VRAM: 768kb

CPU/FPU: 68030/68882@33mhz

Disk: SCSI2SD + 18gb external disk + DVD-RW.

Thanks in advance :)

 

Crutch

Well-known member
I really thought CodeWarrior did but it’s been forever. Have you tried MPW? If not I’m afraid there aren’t likely to be better options. 

 

uridium

Well-known member
Not really beyond wrapped by 3rd parties.

I know. CW11 I'd have thought would've supported it. Couldn't see any ISO C++ compiler options either.

Hrrm. Thanks though. Hopefully someone else with more $CLU than us rocks up. :)

 

ants

Well-known member
Retro68 supports C++ namespaces - if you're willing to compile on a modern Mac or PC...

 

mrpippy

Well-known member
CodeWarrior Pro 6 (released in 2000) was the last version to include a 68k toolchain, and I'm pretty sure it has C++ namespace support. The IDE/compilers themselves won't actually run on a 68k machine though, I believe CW Pro 4 (from 1998) was the last version that ran on 68k (and only 040 at that).

 

nglevin

Well-known member
I'm not sure anybody would want to compile a significant amount of C++ on a real 68k Mac, barring that C++ is more commonly taught than Pascal and C. The compile time overhead of the preprocessor and C++ templates will not make that a fun affair.

CodeWarrior Pro 4 was released in the same year as ISO C++98 became the first common, C++ standard. Hoping for a period-accurate ISO C++ compiler that runs on a 68k Mac is a bit of a stretch when it took over a good decade after that spec's release for compilers to become something resembling fully C++ ISO standard compliance.

Namespaces should be present in CodeWarrior, they have been a part of C++ since before the standard template library. Aliasing a namespace is maybe the one area where syntax might have changed, as it definitely did for C++17, but I didn't think that was a new feature.

 

uridium

Well-known member
Wait.. I'm using CodeWarrior 11 .. did they restart the naming sequence and start calling it "CodeWarror Pro" ? Nuts!

No, I'm not doing it as a learning exercise as I've been doing it as a day-job for a couple of decades.

It's just for fun.

@nglevin: That was my confusion, as some of the compilers I have on Ultrix that pre-date the STL have support for it.
 

I have a funny feeling I'm doing it wrong (tm) and using an older version thinking it's newer.

Thanks guys for the prodding so far. :)

 

nglevin

Well-known member
Wait.. I'm using CodeWarrior 11 .. did they restart the naming sequence and start calling it "CodeWarror Pro" ? Nuts!
Exactly right. CodeWarrior had two major releases a year, and the "Pro" suffix was a good way of avoiding the 20s.  :)

CodeWarrior Pro 4 is solid on a 68040, any later and they start gradually PPC only, Carbon only, Mac OS X only...

I don't recall if CWP4 works on a 68030, but there were versions of CodeWarrior sold that ran acceptably on 68020s as late as 1997. There should be something.

 
Top