build: force a c++ standard to be specified #9831

pull theuni wants to merge 1 commits into bitcoin:master from theuni:no-default-std changing 2 files +8 −2
  1. theuni commented at 6:33 AM on February 23, 2017: member

    @laanwj suggested this here #9753 (comment).

    Newer compilers may switch to newer standards by default. For example, gcc6 uses std=gnu++14 by default.

    Note that this makes testing c++14 impractical. Until we're ready to investigate that transition, I don't think that's a problem.

    I'll attempt to upstream the macro changes post-merge.

  2. build: force a c++ standard to be specified
    Newer compilers may switch to newer standards by default. For example, gcc6
    uses std=gnu++14 by default.
    9829c54de2
  3. laanwj commented at 7:16 AM on February 23, 2017: member

    Yes - the rationale for this is that we want to avoid c++14 use to creep into the source code before we've decided we want c++14. I think it's too soon for that. It'd be nice to not bump our minimum clang/g++ requirements for a while.

  4. laanwj added the label Build system on Feb 23, 2017
  5. sipa commented at 8:25 AM on February 23, 2017: member

    Concept ACK

  6. laanwj commented at 9:57 AM on February 23, 2017: member

    Tested ACK 9829c54: -std=c++11 is indeed being passed to compiles after this patch.

  7. paveljanik commented at 10:22 AM on February 23, 2017: contributor

    And it is still passed on systems where it is needed. The only difference here is a configure output missing the following line:

    checking whether g++ supports C++11 features by default... no
    

    ACK https://github.com/bitcoin/bitcoin/pull/9831/commits/9829c54de2725037ee0702306cbaa99fc9aa1826

  8. laanwj commented at 11:27 AM on February 23, 2017: member

    checking whether g++ supports C++11 features by default... no

    I think that's to be expected, because we no longer care about the default, we always specify it.

  9. MarcoFalke commented at 1:27 PM on February 23, 2017: member

    Concept ACK

  10. theuni commented at 4:49 PM on February 23, 2017: member

    @paveljanik Yes, that's the intended change.

  11. laanwj added this to the milestone 0.14.0 on Feb 23, 2017
  12. laanwj merged this on Feb 23, 2017
  13. laanwj closed this on Feb 23, 2017

  14. laanwj referenced this in commit 692c9eddba on Feb 23, 2017
  15. laanwj referenced this in commit 99fd85cb44 on Feb 23, 2017
  16. unknown cross-referenced this on Mar 12, 2017 from issue [Build] Force a C++ standard to be specified by ghost
  17. str4d cross-referenced this on Dec 1, 2017 from issue Build system improvements by str4d
  18. zkbot referenced this in commit 75604363cc on Dec 1, 2017
  19. zkbot referenced this in commit 6aef4033a7 on Dec 1, 2017
  20. zkbot referenced this in commit 83af270002 on Dec 15, 2017
  21. kotodev referenced this in commit c8a979fc92 on Jan 25, 2018
  22. renium9 referenced this in commit 23640da445 on Feb 6, 2018
  23. sickpig cross-referenced this on Jun 20, 2018 from issue [PORT] Specify c++11 standard rather than rely on sane default value by sickpig
  24. bitcoin locked this on Sep 8, 2021

github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2026-05-20 06:55 UTC