Fix imperial cylinder sizes in equipment tab

Linus Torvalds torvalds at
Fri Jan 3 08:54:32 UTC 2014

On Fri, Jan 3, 2014 at 4:31 AM, Thiago Macieira <thiago at> wrote:
> If you want to pass a default argument of type pressure_t, then that struct
> requires a constructor for it to work in C++98.

Yeah, and that totally destroys the point of using "pressure_t" in the
first place (it's there purely for type safety, exactly so that you
can *not* use a plain integer by mistake).

But using overloading like you suggested later would be an option, at
the cost of some syntactic noise (but quite frankly, for things like
this I'd prefer just default argument values, even if we have to peel
the type).

> However, C++11 does have a new feature called "uniform initialisation" which
> is probably what Linus is referring to. That would allow:

Yeah, also called "that's how they damn well should have done it in
the first place". The "uniform" is the fancy name for "oops, that's
how we do initializers in normal context, maybe we should do it the
same way here too".

> Turning C++11 on for Subsurface would destroy support for OS X less than 10.6
> since only GCC 4.2 can compile for it.

I don't know if people try to use mingw (stable), but iirc that's also
limited to some old version of gcc. So I don't think C++11 is an
option for a few more years.


More information about the subsurface mailing list