From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 73281 invoked by alias); 27 Apr 2018 19:01:41 -0000 Mailing-List: contact gdb-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sourceware.org Received: (qmail 73131 invoked by uid 89); 27 Apr 2018 19:01:32 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-2.4 required=5.0 tests=AWL,BAYES_00,SPF_HELO_PASS,SPF_PASS autolearn=ham version=3.3.2 spammy=organic X-HELO: smtp.polymtl.ca Received: from smtp.polymtl.ca (HELO smtp.polymtl.ca) (132.207.4.11) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Fri, 27 Apr 2018 19:01:30 +0000 Received: from simark.ca (simark.ca [158.69.221.121]) (authenticated bits=0) by smtp.polymtl.ca (8.14.7/8.14.7) with ESMTP id w3RJ1OHb015198 (version=TLSv1/SSLv3 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Fri, 27 Apr 2018 15:01:29 -0400 Received: by simark.ca (Postfix, from userid 112) id 3B92B1E778; Fri, 27 Apr 2018 15:01:24 -0400 (EDT) Received: from simark.ca (localhost [127.0.0.1]) by simark.ca (Postfix) with ESMTP id 503661E4F4; Fri, 27 Apr 2018 15:01:23 -0400 (EDT) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII; format=flowed Content-Transfer-Encoding: 7bit Date: Fri, 27 Apr 2018 19:08:00 -0000 From: Simon Marchi To: Paul Koning Cc: gdb@sourceware.org Subject: Re: GDB 8.1 build error In-Reply-To: References: <214C80CC-1173-41F6-AAA1-39C9D39E28B2@comcast.net> <454707570722fc0220074c0eca015a8f@polymtl.ca> Message-ID: <77e31c8f87342c5753d1d622fa7574ff@polymtl.ca> X-Sender: simon.marchi@polymtl.ca User-Agent: Roundcube Webmail/1.3.4 X-Poly-FromMTA: (simark.ca [158.69.221.121]) at Fri, 27 Apr 2018 19:01:24 +0000 X-IsSubscribed: yes X-SW-Source: 2018-04/txt/msg00028.txt.bz2 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 /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