1. 05 Nov, 2019 3 commits
  2. 02 Oct, 2019 2 commits
  3. 01 Oct, 2019 1 commit
  4. 20 Sep, 2019 1 commit
    • Marc Chevrier's avatar
      cmstd: Modernize CMake system headers · c688b401
      Marc Chevrier authored
      Provide a standardized way to handle the C++ "standard" headers
      customized to be used with current CMake C++ standard constraints.
      Offer under directory `cm` headers which can be used as direct
      replacements of the standard ones.  For example:
      
          #include <cm/string_view>
      
      can be used safely for CMake development in place of the `<string_view>`
      standard header.
      
      Fixes: #19491
      c688b401
  5. 16 Sep, 2019 1 commit
  6. 10 Sep, 2019 1 commit
    • wahikihiki's avatar
      clang-tidy: modernize-use-auto · d25a5a7e
      wahikihiki authored
      Set the MinTypeNameLength option to an impossibly high value in order
      to limit the diagnostics to iterators.  Leave new expressions and cast
      expressions for later.
      d25a5a7e
  7. 09 Sep, 2019 1 commit
  8. 04 Sep, 2019 1 commit
  9. 03 Sep, 2019 3 commits
  10. 26 Aug, 2019 2 commits
  11. 23 Aug, 2019 1 commit
  12. 22 Aug, 2019 1 commit
    • Sebastian Holtermann's avatar
      Source sweep: Use cmStrCat for string concatenation · 9b334397
      Sebastian Holtermann authored
      This patch is generated by a python script that uses regular expressions to
      search for string concatenation patterns of the kind
      
      ```
      std::string str = <ARG0>;
      str += <ARG1>;
      str += <ARG2>;
      ...
      ```
      
      and replaces them with a single `cmStrCat` call
      
      ```
      std::string str = cmStrCat(<ARG0>, <ARG1>, <ARG2>, ...);
      ```
      
      If any `<ARGX>` is itself a concatenated string of the kind
      
      ```
      a + b + c + ...;
      ```
      
      then `<ARGX>` is split into multiple arguments for the `cmStrCat` call.
      
      If there's a sequence of literals in the `<ARGX>`, then all literals in the
      sequence are concatenated and merged into a single literal argument for
      the `cmStrCat` call.
      
      Single character strings are converted to single char arguments for
      the `cmStrCat` call.
      
      `std::to_string(...)` wrappings are removed from `cmStrCat` arguments,
      because it supports numeric types as well as string types.
      
      `arg.substr(x)` arguments to `cmStrCat` are replaced with
      `cm::string_view(arg).substr(x)`
      9b334397
  13. 19 Aug, 2019 1 commit
  14. 17 Aug, 2019 1 commit
  15. 14 Aug, 2019 1 commit
  16. 10 Aug, 2019 1 commit
    • Sebastian Holtermann's avatar
      cmStringAlgorithms: Add cmStrToLong and cmStrToULong · 935fbe0b
      Sebastian Holtermann authored
      This adds the following functions to cmStringAlgorithms:
      - `cmStrToLong`: moved from `cmSystemTools::StringToLong`
      - `cmStrToULong`: moved from `cmSystemTools::StringToULong`
      
      Overloads of the given functions for `std::string` are added as well.
      935fbe0b
  17. 29 Jul, 2019 1 commit
  18. 24 Jul, 2019 1 commit
    • Sebastian Holtermann's avatar
      cmMakefile: Let AddDefinition accept a value as cm::string_view · e91bfe44
      Sebastian Holtermann authored
      This changes `cmMakefile::AddDefinition` to take a `cm::string_view` as value
      argument instead of a `const char *`.
      
      Benefits are:
      - `std::string` can be passed to `cmMakefile::AddDefinition` directly without
        the `c_str()` plus string length recomputation fallback.
      - Lengths of literals passed to `cmMakefile::AddDefinition` can be computed at
        compile time.
      
      In various sources uses of `cmMakefile::AddDefinition` are adapted to avoid
      `std::string::c_str` calls and the `std::string` is passed directly.
      Uses of `cmMakefile::AddDefinition`, where a `nullptr` `const char*` might
      be passed to `cmMakefile::AddDefinition` are extended with `nullptr` checks.
      e91bfe44
  19. 19 Jul, 2019 1 commit
  20. 18 Jul, 2019 1 commit
  21. 14 Jul, 2019 1 commit
  22. 10 Jul, 2019 1 commit
    • Brad King's avatar
      IWYU: Fix handling of <memory> standard header · 71fbebd1
      Brad King authored
      An old workaround for `std::allocator_traits<>::value_type` lints from
      IWYU on `std::vector<>` usage breaks IWYU's handling of `<memory>`.
      Convert the workaround to use the same approach we already use for a
      workaround of `std::__decay_and_strip<>::::__type` lints.  Then update
      the `<memory>` inclusions to follow the now-correct IWYU lints.
      71fbebd1
  23. 30 Mar, 2019 1 commit
  24. 06 Feb, 2019 1 commit
  25. 17 Jan, 2019 3 commits
  26. 08 Jan, 2019 1 commit
  27. 21 Nov, 2018 1 commit
  28. 09 Nov, 2018 1 commit
  29. 29 Oct, 2018 1 commit
    • Brad King's avatar
      set_directory_properties: Restore in script mode · 50572d63
      Brad King authored
      Since commit v3.10.0-rc1~391^2~3 (Add directory property 'LABELS' and
      CMAKE_DIRECTORY_LABELS variable, 2017-06-23) this command was
      accidentally not allowed in script mode.  It was dropped because
      `ctest -S` mode needs to start with CMake's normal script mode and
      then replace the `set_directory_properties` implementation.  Restore
      the normal `set_directory_properties` in script mode and then add
      special logic to replace it in ctest.  Also add a test case.
      
      Fixes: #18523
      50572d63
  30. 05 Sep, 2018 1 commit
  31. 07 Aug, 2018 1 commit
  32. 01 Jun, 2018 1 commit
    • Kitware Robot's avatar
      Revise C++ coding style using clang-format-6.0 · d7204e64
      Kitware Robot authored
      Run the `clang-format.bash` script to update all our C and C++ code to a
      new style defined by `.clang-format`.  Use `clang-format` version 6.0.
      
      * If you reached this commit for a line in `git blame`, re-run the blame
        operation starting at the parent of this commit to see older history
        for the content.
      
      * See the parent commit for instructions to rebase a change across this
        style transition commit.
      d7204e64