diff options
author | Simon Marchi <simon.marchi@polymtl.ca> | 2021-09-19 21:06:10 -0400 |
---|---|---|
committer | Simon Marchi <simon.marchi@polymtl.ca> | 2021-09-20 07:59:53 -0400 |
commit | 56d9e3c5623d9ebaffb4532a503e67203e4d5488 (patch) | |
tree | 66f05e448a0cbcd0fedc33acee4a4a456559790a /gdb/yy-remap.h | |
parent | 6a7f57668afcd841e8fc6b507a27bb20e9209fa9 (diff) | |
download | gdb-56d9e3c5623d9ebaffb4532a503e67203e4d5488.zip gdb-56d9e3c5623d9ebaffb4532a503e67203e4d5488.tar.gz gdb-56d9e3c5623d9ebaffb4532a503e67203e4d5488.tar.bz2 |
gdbsupport/gdb_proc_service.h: use decltype instead of typeof
Bug 28341 shows that GDB fails to compile when built with -std=c++11.
I don't know much about the use case, but according to the author of the
bug:
I encountered the scenario where CXX is set to "g++ -std=c++11" when
I try to compile binutils under GCC as part of the GCC 3-stage
compilation, which is common for building a cross-compiler.
The author of the bug suggests using __typeof__ instead of typeof. But
since we're using C++, we might as well use decltype, which is standard.
This is what this patch does.
The failure (and fix) can be observed by configuring GDB with CXX="g++
-std=c++11":
CXX linux-low.o
In file included from /home/simark/src/binutils-gdb/gdbserver/gdb_proc_service.h:22,
from /home/simark/src/binutils-gdb/gdbserver/linux-low.h:27,
from /home/simark/src/binutils-gdb/gdbserver/linux-low.cc:20:
/home/simark/src/binutils-gdb/gdbserver/../gdbsupport/gdb_proc_service.h:177:50: error: expected constructor, destructor, or type conversion before (token
177 | __attribute__((visibility ("default"))) typeof (SYM) SYM
| ^
/home/simark/src/binutils-gdb/gdbserver/../gdbsupport/gdb_proc_service.h:179:1: note: in expansion of macro PS_EXPORT
179 | PS_EXPORT (ps_get_thread_area);
| ^~~~~~~~~
Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=28341
Change-Id: I84fbaae938209d8d935ca08dec9b7e6a0dd1bda0
Diffstat (limited to 'gdb/yy-remap.h')
0 files changed, 0 insertions, 0 deletions