Hi Sergei, The reason I'm asking is that, while I'm generally cautious about new C++ features, there are some features in C++11 which I'm pretty happy about. For example, class enumerations and nullptr ( http://www.cprogramming.com/c++11/c++11-nullptr-strongly-typed-enum-class.ht... ). I'm trying to anticipate whether or not a patch would be rejected if it contained those constructs. - Christian On Mon, Feb 18, 2013 at 4:08 PM, Sergei Golubchik <serg@askmonty.org> wrote:
Hi, Christian!
On Feb 18, Christian Convey wrote:
While we're on the topic, how does MariaDB decide which language features are mature enough to use in the software?
For example, do you look at a list of supported operating systems, and for those operating systems, look at whether or not the supplied version of g++ supports a given language feature well enough?
No, the answer is much simpler than that - we don't.
That is, this question doesn't get asked very often. In MySQL times we've decided on STL. That was once. After I was in MySQL for more than ten years.
In MariaDB we've never got around to this at all. Yet.
But if we will - yes, this feature needs to be supported by all gcc (g++) versions that are installed on all Linux distributions (and FreeBSD, etc) that we provide binaries for. And by Intel compilers. And by Visual Studio versions that we use. And also we consider the drawbacks of using the feature, for example it might be very expensive at runtime, or makes the executable binary much larger, or may be it's very difficult to use correctly (but easy to misuse), whatever. Anyway, there's nothing magical here, just a common sense.
Regards, Sergei