]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commit
gdb: fix color_option_def compile error (clang)
authorAndrew Oates <andrew@andrewoates.com>
Sun, 16 Feb 2025 15:16:25 +0000 (16:16 +0100)
committerTom de Vries <tdevries@suse.de>
Sun, 16 Feb 2025 15:16:25 +0000 (16:16 +0100)
commit3aaca06b672010329144b88f5788e379c3cc74cb
tree91dd9cf8629f5b7e9c6c5a8a1370b326508d9898
parent5b4873b6de66a869c11b5bdaae9f76682c7fe600
gdb: fix color_option_def compile error (clang)

color_option_def was added in commit 6447969d0 ("Add an option with a
color type."), but not used.

The color_option_def constructor passes the wrong number of arguments
to the option_def constructor.  Since color_option_def is a template and
never actually instantiated, GCC does not fail to compile this.  clang
generates an error (see below).

This passes nullptr to the extra_literals_ option_def ctor argument,
which matches what filename_option_def above it does.

clang's generated error:
  ../../gdb/cli/cli-option.h:343:7: error: no matching constructor for initialization of 'option_def'
      : option_def (long_option_, var_color,
        ^           ~~~~~~~~~~~~~~~~~~~~~~~~
  ../../gdb/cli/cli-option.h:50:13: note: candidate constructor not viable: requires 8 arguments, but 7 were provided
    constexpr option_def (const char *name_,
              ^
  ../../gdb/cli/cli-option.h:37:8: note: candidate constructor (the implicit copy constructor) not viable: requires 1 argument, but 7 were provided
  struct option_def
         ^
  ../../gdb/cli/cli-option.h:37:8: note: candidate constructor (the implicit move constructor) not viable: requires 1 argument, but 7 were provided

Approved-By: Tom de Vries <tdevries@suse.de>
gdb/cli/cli-option.h