MSVC and CE

The eagle-eyed among you may have noticed a change in the way compiling using Microsoft Visual Studio compilers works on Compiler Explorer. Short version: we have gained execution support (yay), but lost library support (boo). We’re working on the latter.

So, what happened? In order to explain, here’s some background:

Background

Compiler Explorer runs on Linux infrastructure. My day job for the last two decades has meant developing on, and for, Linux or Linux-based systems. As a result, CE itself uses Linux. When folks originally asked for Windows compiler support, I put it off for a while. A few years after, a friend helped me just about coerce and fudge a few versions of MSVC to run under WINE, but it’s not perfect and to this day causes us issues.

Filed under: Coding
Posted at 20:00:00 BST on 11th July 2024.

Compiler Explorer, LLC

It’s been over a year since I updated my blog; and I’ve been making some pretty fundamental changes to the infrastructure I host it all on. So this is more of a test post than a hugely informative one.

That said; the reason I’be been making those changes is because, a couple of weeks ago I formed “Compiler Explorer LLC” as an Illinois-based corporation.

Does this mean Compiler Explorer is going to be a business now?!

Filed under: Personal Coding Blog
Posted at 00:00:00 GMT on 18th March 2024.

Happy 10th Birthday Compiler Explorer!

Today is Compiler Explorer’s 10th Birthday:

commit 15ea5e164b55c2b5ee0d3b432e3984b8f361afd2
Author: Matt Godbolt <matt@godbolt.org>
Date:   Tue May 22 21:07:40 2012 -0500

    Initial import of GCC-Explorer

Ten years ago I got permission to open source a little tool called GCC Explorer. I’d developed it over a week or so of spare time at my then-employer DRW in node.js, and the rest, as they say, is history.

Filed under: Personal Coding Blog
Posted at 15:45:00 BST on 22nd June 2022.

C++ and passing by value

I was recently responding to some code review feedback and it occurred to me I could write it up for this blog. Which also means I start 2021 with a blog post, not something I’ve done in ages.

The question was around why I passed an non-trivial object by value to a function. The recipient function was going to copy the object, and the short version is “clang tidy complains if you don’t pass by value and move”.

For the longer version, consider this super simple example:

Filed under: Coding
Posted at 17:35:00 GMT on 2nd January 2021.

CppCon 2019 Trip Report

I’m on my way back from the 2019 CppCon conference and my head is buzzing with ideas! What an amazing experience!

The venue

This was the first year CppCon was based out of a new venue, the Gaylord Rockies in Aurora, Colorado. First up: the Gaylord is huge! It was clear we had outgrown the previous venue in Bellevue, but there’s plenty of room to expand at the new venue. This changed the feel of the conference a little: I literally didn’t leave the hotel from Sunday evening through to Friday evening.

Most of the attendees also stayed in the hotel, which meant more opportunities to bump into other attendees. Food was good, but not exceptional, but, boy it was expensive! They know they have a captive audience!

Filed under: Coding
Posted at 00:00:00 BST on 22nd September 2019.

Compiler Explorer's new state storage

Hello! As of today’s update, Compiler Explorer now has its own storage solution for when you click “Share” and pick “Short” from the dropdown. We used to store all the state in the URL itself, then we used goo.gl to shorten it. When Stack Overflow banned goo.gl, we rewrote goo.gl URLs to be godbolt.org/g/blah, where blah was the bit from goo.gl. So, your data was still stored with Google.

That’s all changed! Now short URLs are derived from data stored on the Compiler Explorer website itself. This has some very important changes:

If you have any issues with the new system please get in contact as soon as possible. You can email me, or tweet at me, or direct message me on the Cpplang Slack.

Filed under: Coding
Posted at 18:00:00 BST on 18th August 2018.

A European Vacation

It’s been oh-so-quiet here! I’ve been away on a long European holiday, visiting Iceland, United Kingdom, France and the Czech Republic. I’ve had a great time, but haven’t had as much time as I’d like otherwise to work on Compiler Explorer.

Me, explaining something
Explaining some of my views on C++

While in the Czech Republic, visiting the unimaginibly beautiful Prague, I was invited to speak at Avast, the anti-virus company. They have an amazing office and working environment: a music room (and studio), couches everywhere, great food, pinball machines, golf putting courses…you name it! Lovely folks too. In particular, huge thanks to Hana Dusíková for inviting me, and arranging everything and generally making it a pleasure to speak there. She’s now running a regular C++ meet up, which if you’re in Prague you should sign up for straight away!

Filed under: Blog Coding
Posted at 00:00:00 BST on 16th July 2018.

C++Now - trip report

As I’ve mentioned previously, I’m currently on a break between jobs. With my copious spare time I decided – rather late in the day – to head to C++Now, a C++ Conference held yearly in Aspen, Colorado. Several C++ folks had recommended that I come to it: it’s a smaller and more intimate conference than CppCon.

I was not disappointed! Firstly, Aspen is a beautiful place to hold a conference, although the thin air at 9,000 feet up takes a bit of getting used to.

The Aspen Center of Physics
The conference rooms used for C++Now nestle in a beautiful meadow.

Filed under: Blog Coding
Posted at 22:30:00 BST on 14th May 2018.

About Matt Godbolt

Matt Godbolt is a C++ developer working in Chicago for Aquatic. Follow him on Mastodon.