News for hackers. Stuff that matters.

daveedvdv

Re:EDG C++ front-end goes public on Thursday October 01, 2026 @08:30AM (#49920780)
Several of our customers instrument the AST to add security-probing and/or other dynamic-analysis features. NVCC uses it to separate out "device" constructs.
Re:EDG C++ front-end goes public on Thursday October 01, 2026 @08:26AM (#49920737)
That last bit is out of date (we didn't work much on keeping the web site up-to-date): The front end is mostly C++23-complete (modules notably lagging), and we have several C++26 feature in as well.
Re:EDG C++ front-end goes public on Thursday October 01, 2026 @08:21AM (#49920688)
I estimate there were very roughly 50 customers in the end. (I was an EDG engineer and didn't work on admin stuff — so it might be off, but not much. I'm estimating based on support tickets origins.) That's down from maybe double that at our max (again, my estimate). I heard of fairly few customers switching to Clang or other projects (Intel being the most notable exception). Most of our customers we "lost" were due to mergers/acquisitions (i.e., two customers suddenly became just one).
Re:EDG C++ front-end goes public on Thursday October 01, 2026 @08:07AM (#49920583)
Sorry, but that's nonsense. We've supported plenty of features. We've also occasionally been the first to implement them. In recent years, we spearheaded reflection, supported, first-implemented a bunch of constant-evaluation features (consteval etc.), and supported and first-shipped C++23 "explicit this".
Re:EDG C++ front-end goes public on Wednesday September 30, 2026 @09:13PM (#49916497)
It warms my heart to hear it!
Re:EDG C++ front-end goes public on Wednesday September 30, 2026 @08:28PM (#49916249)
EDG started with two people. When John Spicer joined in 1992, they grew to three. I joined when Mike Anderson retired from software development in 1999, so we were still just three. Mike Miller joined in 2004 to make it four. Mike Herrick in 2007 to make it five. We were briefly seven in the early 2020s, and then fell back to six when Ellen Herrick stepped down. The three youngest of us moved to NVIDIA about a year ago.

Steve Adamczyk, the founder, told me that he created the company to be able to enjoy his work rather than to grow it into something that would rob him of that joy (I hope I paraphrase it right): He is an awesome human!

Re:EDG C++ front-end goes public on Wednesday September 30, 2026 @08:20PM (#49916171)
No, MSVC is its own front end (the older continuously maintained C++ front end, in fact). However, Visual Studio's C++ IntelliSense uses the EDG front end.
Re:EDG C++ front-end goes public on Wednesday September 30, 2026 @08:19PM (#49916164)
It allowed you to put the _definitions_ of your function templates in your ".cpp" files instead of your header files.
Re:EDG C++ front-end goes public on Wednesday September 30, 2026 @08:17PM (#49916147)
No, we only parse the language, do full semantic analysis, and optionally lower the representation to something that roughly matches C-language semantics. (That lowering can do some minimal inlining if needed, but that's a historical thing.)

We have two "back ends": c_gen_be.c generates C code from the lower IL ("intermediate language"; EDG's term for the AST) and cp_gen_be.c generates C++ code from the unlowered IL.

Re:EDG C++ front-end goes public on Wednesday September 30, 2026 @08:09PM (#49916088)
I'm one of the former EDG engineers...

I'd say: - A single executable can emulate pretty much all versions of MSVC, GCC, and Clang. (E.g., pass the option --gnu_version=80300 and it emulates GCC 8.3.0, including a large number of bugs/idiosynchrasies.) - An optimized binary is pretty small. - It builds quite quickly. (A complete "from scratch" build on a modern solid workstation will take just a few seconds.) - It has some interesting source-to-source transformation capabilities (via cp_gen_be.c). ...

Re:EDG C++ front-end goes public on Wednesday September 30, 2026 @08:01PM (#49916040)
Oh, you had him as a teacher? That's awesome. I met him and his family 25+ years ago while they were vacationing in California... and they were all great! He was also at the Morristown WG21 meeting, where C++98 was voted out (in November 1997). (I co-moderated comp.lang.c++.moderated with John. For several years he was the person that kept it alive.)