Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: David Blaikie <dblaikie@gmail.com>
To: Andrew Pinski <pinskia@gmail.com>
Cc: gdb-patches <gdb-patches@sourceware.org>,
	Eric Christopher <echristo@gmail.com>,
		Doug Evans <dje@google.com>
Subject: Re: [patch] explicitly specify -std=gnu89 for gdb.cp/inline-break.exp
Date: Sun, 13 Apr 2014 07:08:00 -0000	[thread overview]
Message-ID: <CAENS6EsjGe7e6M987QPFjabnJWAGMd45XvhzDgTTthK_FojN_g@mail.gmail.com> (raw)
In-Reply-To: <CA+=Sn1mZHq=_kvEB8v68dd==m11wLsR0N0cQ1-6q7y5EYR24LQ@mail.gmail.com>

[-- Attachment #1: Type: text/plain, Size: 1032 bytes --]

On Fri, Apr 11, 2014 at 7:59 PM, Andrew Pinski <pinskia@gmail.com> wrote:
> On Fri, Apr 11, 2014 at 4:58 PM, David Blaikie <dblaikie@gmail.com> wrote:
>> This test is intending to use gnu style inline rather than the
>> standard c99 inline semantics. Clang defaults to c99 and the test
>> breaks for this (and other - there's an inlining debug info quality
>> bug here too - I'll file a bug and kfail the remaining failures in a
>> separate patch) reason.
>
> Or better yet, use the gnu_inline attribute on those functions.

Ah, good plan - patch attached for that fix instead.

Though at this point, I'd consider removing the GNUC conditional - for
this test to be meaningful the compiler must support gnu inlining
semantics. Are there compilers that support those semantics but don't
support GCC attribute syntax and the gnu_inline attribute in
particular?

Removing the conditional would cause any compiler that doesn't support
the attributes to just fail to compile, marking the test as untested
rather than producing failures.

[-- Attachment #2: gnu_inline.diff --]
[-- Type: text/plain, Size: 2104 bytes --]

commit a0f7d916bf274325b1535d7f4eade43953cb2bf2
Author: David Blaikie <dblaikie@gmail.com>
Date:   Sun Apr 13 00:01:21 2014 -0700

    Use attribute to specify the required inlining semantics
    
    As suggested by Andrew Pinski.
    
    gdb/testsuite/
    	* gdb.opt/inline-break.c: Fix clang compatibility by specifying
    	gnu_inline semantics via attribute.
    	* gdb.opt/inline-break.exp: Remove -std=c89 now that the test source
    	explicitly specifies the required semantics.

diff --git gdb/testsuite/ChangeLog gdb/testsuite/ChangeLog
index 730c116..44b2eeb 100644
--- gdb/testsuite/ChangeLog
+++ gdb/testsuite/ChangeLog
@@ -6,6 +6,13 @@
 
 2014-04-11  David Blaikie  <dblaikie@gmail.com>
 
+	* gdb.opt/inline-break.c: Fix clang compatibility by specifying
+	gnu_inline semantics via attribute.
+	* gdb.opt/inline-break.exp: Remove -std=c89 now that the test source
+	explicitly specifies the required semantics.
+
+2014-04-11  David Blaikie  <dblaikie@gmail.com>
+
 	* gdb.opt/inline-break.exp: Explicitly specify -std=gnu89 to
 	override Clang's default.
 
diff --git gdb/testsuite/gdb.opt/inline-break.c gdb/testsuite/gdb.opt/inline-break.c
index 9513eec..f8a9ec9 100644
--- gdb/testsuite/gdb.opt/inline-break.c
+++ gdb/testsuite/gdb.opt/inline-break.c
@@ -19,7 +19,7 @@
    this file, and should be regenerated if this file is modified.  */
 
 #ifdef __GNUC__
-# define ATTR __attribute__((always_inline))
+# define ATTR __attribute__((gnu_inline)) __attribute__((always_inline))
 #else
 # define ATTR
 #endif
diff --git gdb/testsuite/gdb.opt/inline-break.exp gdb/testsuite/gdb.opt/inline-break.exp
index 4ff379a..21c958a 100644
--- gdb/testsuite/gdb.opt/inline-break.exp
+++ gdb/testsuite/gdb.opt/inline-break.exp
@@ -19,10 +19,8 @@
 
 standard_testfile
 
-# Explicitly specify gnu89 for gnu inline semantics to override Clang's default
-# of c99.
 if { [prepare_for_testing $testfile.exp $testfile $srcfile \
-          {debug optimize=-O2 additional_flags=-Winline additional_flags=-std=gnu89}] } {
+          {debug optimize=-O2 additional_flags=-Winline}] } {
     return -1
 }
 

  reply	other threads:[~2014-04-13  7:08 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-04-11 23:58 David Blaikie
2014-04-12  0:18 ` Doug Evans
2014-04-12  0:40   ` David Blaikie
2014-04-12  2:59 ` Andrew Pinski
2014-04-13  7:08   ` David Blaikie [this message]
2014-05-01 10:52     ` Pedro Alves
2014-05-30 11:25       ` Pedro Alves

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAENS6EsjGe7e6M987QPFjabnJWAGMd45XvhzDgTTthK_FojN_g@mail.gmail.com \
    --to=dblaikie@gmail.com \
    --cc=dje@google.com \
    --cc=echristo@gmail.com \
    --cc=gdb-patches@sourceware.org \
    --cc=pinskia@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox