From 6e75794e9da0e12b44c36272e16d18449d25a03d Mon Sep 17 00:00:00 2001 From: Pedro Alves Date: Wed, 28 Jun 2017 15:19:02 +0100 Subject: [PATCH] gdb/command.h: Include common/scoped_restore.h MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit command.h depends on scoped_restore: extern scoped_restore_tmpl prevent_dont_repeat (void); But doesn't include the corresponding header ("common/scoped_restore.h"). We haven't noticed a problem because utils.h includes scoped_restore.h, and defs.h includes utils.h. However, a patch that makes "symtab.h" include "completer.h", exposed the issue: https://sourceware.org/ml/gdb-patches/2017-06/msg00023.html. Without this fix that would break building all .o files like this: In file included from src/gdb/completer.h:21:0, from src/gdb/symtab.h:28, from src/gdb/language.h:26, from src/gdb/frame.h:72, from src/gdb/gdbarch.h:39, from src/gdb/defs.h:636, from src/gdb/top.c:20: src/gdb/command.h:434:8: error: ‘scoped_restore_tmpl’ does not name a type extern scoped_restore_tmpl prevent_dont_repeat (void); ^ Makefile:1911: recipe for target 'top.o' failed because defs.h includes gdbarch.h before it includes utils.h. gdb/ChangeLog: 2017-06-28 Pedro Alves * command.h: Include "common/scoped_restore.h". --- gdb/ChangeLog | 4 ++++ gdb/command.h | 1 + 2 files changed, 5 insertions(+) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index d110c34f2d2..a82026f95e6 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,7 @@ +2017-06-28 Pedro Alves + + * command.h: Include "common/scoped_restore.h". + 2017-06-28 Yao Qi * mi/mi-cmd-break.c (mi_argv_to_format): Use obstack_grow_str diff --git a/gdb/command.h b/gdb/command.h index aa179e91264..4a56a5173f5 100644 --- a/gdb/command.h +++ b/gdb/command.h @@ -19,6 +19,7 @@ #define COMMAND_H 1 #include "gdb_vecs.h" +#include "common/scoped_restore.h" /* This file defines the public interface for any code wanting to create commands. */ -- 2.30.2