[all-commits] [llvm/llvm-project] fcd9fa: [Support] Try 2: Reset option to its default if it...

Yevgeny Rouban via All-commits all-commits at lists.llvm.org
Wed Mar 9 17:28:02 PST 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: fcd9fa416d0d3585f9d6c68302df8ba39889608a
      https://github.com/llvm/llvm-project/commit/fcd9fa416d0d3585f9d6c68302df8ba39889608a
  Author: Yevgeny Rouban <yrouban at azul.com>
  Date:   2022-03-10 (Thu, 10 Mar 2022)

  Changed paths:
    M llvm/include/llvm/Support/CommandLine.h
    M llvm/unittests/Support/CommandLineTest.cpp

  Log Message:
  -----------
  [Support] Try 2: Reset option to its default if its Default field is undefined

opt::setDefaultImpl() is changed to set the option value to the option
type's default if the Default field is not set. This results in option
value reset by Option::reset() or ResetAllOptionOccurrences() even if
the cl::init() is not specified.

Example:
  StackOption<std::string> Str("str"); // No cl::init().
  Str = "some value";
  cl::ResetAllOptionOccurrences();
  EXPECT_EQ("", Str); // The Str is reset.

Reviewed By: lattner
Differential Revision: https://reviews.llvm.org/D115433




More information about the All-commits mailing list