This is the mail archive of the gdb@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: GDB 8.1 build error


On 2018-04-27 14:44, Paul Koning wrote:
I then asked specifically for probe.o ("cd gdb && make probe.o"):

g++ -x c++ -std=gnu++11 -g -O2   -I.
-I/Users/pkoning/Downloads/gdb-8.1/gdb
-I/Users/pkoning/Downloads/gdb-8.1/gdb/common
-I/Users/pkoning/Downloads/gdb-8.1/gdb/config
-DLOCALEDIR="\"/usr/local/trunk/share/locale\"" -DHAVE_CONFIG_H
-I/Users/pkoning/Downloads/gdb-8.1/gdb/../include/opcode
-I/Users/pkoning/Downloads/gdb-8.1/gdb/../opcodes/..
-I/Users/pkoning/Downloads/gdb-8.1/gdb/../readline/..
-I/Users/pkoning/Downloads/gdb-8.1/gdb/../zlib -I../bfd
-I/Users/pkoning/Downloads/gdb-8.1/gdb/../bfd
-I/Users/pkoning/Downloads/gdb-8.1/gdb/../include -I../libdecnumber
-I/Users/pkoning/Downloads/gdb-8.1/gdb/../libdecnumber
-I/Users/pkoning/Downloads/gdb-8.1/gdb/gnulib/import
-Ibuild-gnulib/import   -DTUI=1
-I/System/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7
-I/System/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7
-w  -c -o probe.o -MT probe.o -MMD -MP -MF ./.deps/probe.Tpo
/Users/pkoning/Downloads/gdb-8.1/gdb/probe.c
/Users/pkoning/Downloads/gdb-8.1/gdb/probe.c:63:28: error: default
initialization of an object of const type 'const any_static_probe_ops'
      without a user-provided default constructor
const any_static_probe_ops any_static_probe_ops;
                           ^
                                               {}



Paul-Konings-MacBook-Pro:buildgdb pkoning$ gcc --version
Configured with:
--prefix=/Applications/Xcode.app/Contents/Developer/usr
--with-gxx-include-dir=/usr/include/c++/4.2.1
Apple LLVM version 7.3.0 (clang-703.0.31)
Target: x86_64-apple-darwin17.5.0
Thread model: posix
InstalledDir:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
Paul-Konings-MacBook-Pro:buildgdb pkoning$ head config.log
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.

It was created by configure, which was
generated by GNU Autoconf 2.64.  Invocation command line was

  $ /Users/pkoning/Downloads/gdb-8.1/configure
--prefix=/usr/local/trunk --disable-build-warnings


OS is Mac OS 10.13.4.

These appear to be LLVM incompatibilities; if I feed those command
lines to (real) GCC 8.0, just built yesterday from current trunk, they
compile cleanly.

	paul

This seems to be a bogus error that was fixed in clang 3.9:

https://stackoverflow.com/questions/7411515/why-does-c-require-a-user-provided-default-constructor-to-default-construct-a?utm_medium=organic&utm_source=google_rich_qa&utm_campaign=google_rich_qa

You Apple LLVM 7.3.0 seems to map to upstream clang 3.8.0:

https://en.wikipedia.org/wiki/Xcode#Latest_versions

I indeed get the same error if I try building the file with clang 3.8 on Linux:

$ clang++-3.8 -x c++ -std=gnu++11 -g3 -O0 <snip> /home/emaisin/src/binutils-gdb/gdb/probe.c /home/emaisin/src/binutils-gdb/gdb/probe.c:63:28: error: default initialization of an object of const type 'const any_static_probe_ops' without a user-provided default constructor
const any_static_probe_ops any_static_probe_ops;
                           ^

If compatibility with clang 3.8 is really important to you, we could always add an empty constructor to that class. Otherwise, if it's easy for you to update your Xcode, I'd say try that first.

Simon


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]