Uploaded image for project: 'Request For Comments'
  1. Request For Comments
  2. RFC-332

Use the C++14 standard

    XMLWordPrintable

    Details

    • Type: RFC
    • Status: Implemented
    • Resolution: Done
    • Component/s: DM
    • Labels:
      None

      Description

      With the implementation of RFC-303 it is now technically possible to enable full support for C++14 and use it as the default standard.
      This RFC proposes to update the DM C++ Style Guide to reflect this.

      Note that this requires at minimum devtoolset-4 on both CentOS 6 and CentOS 7, and this RFC recommends mandating devtoolset-6 unless there is a clear reason to adopt devtoolset-4 instead.

        Attachments

          Issue Links

            Activity

            Hide
            tjenness Tim Jenness added a comment -

            The next question is timing. Do we make this change this cycle? Or do we make a 14.0 release (whatever the number is) and then switch? Do Qserv team go on a different timescale?

            Show
            tjenness Tim Jenness added a comment - The next question is timing. Do we make this change this cycle? Or do we make a 14.0 release (whatever the number is) and then switch? Do Qserv team go on a different timescale?
            Hide
            pschella Pim Schellart [X] (Inactive) added a comment - - edited

            I don't think it will be a major change (except for compiling with a different compiler).
            Feature wise C++14 is basically identical to C++11 with some smoothing over the rough edges (which is why we want it).
            Thus I expect only minor changes will happen over time and it will be quite a while before we lose backward compatibility with C++11 compliant compilers.
            So personally I don't think we need to wait. But other people might have a different opinion.

            Show
            pschella Pim Schellart [X] (Inactive) added a comment - - edited I don't think it will be a major change (except for compiling with a different compiler). Feature wise C++14 is basically identical to C++11 with some smoothing over the rough edges (which is why we want it). Thus I expect only minor changes will happen over time and it will be quite a while before we lose backward compatibility with C++11 compliant compilers. So personally I don't think we need to wait. But other people might have a different opinion.
            Hide
            gpdf Gregory Dubois-Felsmann added a comment -

            In a previous C++ project, we ended up buying a copy of the (then current) final public version of the language standard, under an agreement through which we made it available internally to logged-in collaborators, and we ended up referring to it surprisingly often. Sometimes when just ourselves trying to understand some very obscure corner of things, and sometimes, more importantly, when filing bugs against compilers. It was occasionally quite useful to have the real thing and not just a "final working draft" or some such free version.

            Show
            gpdf Gregory Dubois-Felsmann added a comment - In a previous C++ project, we ended up buying a copy of the (then current) final public version of the language standard, under an agreement through which we made it available internally to logged-in collaborators, and we ended up referring to it surprisingly often. Sometimes when just ourselves trying to understand some very obscure corner of things, and sometimes, more importantly, when filing bugs against compilers. It was occasionally quite useful to have the real thing and not just a "final working draft" or some such free version.
            Hide
            fritzm Fritz Mueller added a comment - - edited

            Tim Jenness This will be a relatively minor change for qserv – we can go concurrently with the rest of the project when / as soon as the CI slaves workers are updated.

            Show
            fritzm Fritz Mueller added a comment - - edited Tim Jenness This will be a relatively minor change for qserv – we can go concurrently with the rest of the project when / as soon as the CI slaves workers are updated.
            Hide
            pschella Pim Schellart [X] (Inactive) added a comment -

            I see no objections, so marking this as adopted.
            Will be implemented on DM-10342 subject to final veto by Kian-Tat Lim.

            Show
            pschella Pim Schellart [X] (Inactive) added a comment - I see no objections, so marking this as adopted. Will be implemented on DM-10342 subject to final veto by Kian-Tat Lim .

              People

              Assignee:
              pschella Pim Schellart [X] (Inactive)
              Reporter:
              pschella Pim Schellart [X] (Inactive)
              Watchers:
              Fred Moolekamp, Fritz Mueller, Gregory Dubois-Felsmann, John Parejko, John Swinbank, Kian-Tat Lim, Krzysztof Findeisen, Nate Lust, Pim Schellart [X] (Inactive), Russell Owen, Tim Jenness
              Votes:
              1 Vote for this issue
              Watchers:
              11 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved:
                Planned End: