public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
From: Gabriel Dos Reis <gdr@cs.tamu.edu>
To: DJ Delorie <dj@redhat.com>
Cc: mark@codesourcery.com, lopezibanez@gmail.com,
	ghazi@caip.rutgers.edu,      gcc-patches@gcc.gnu.org
Subject: Re: Add a __nowarn__ keyword
Date: Fri, 10 Aug 2007 04:12:00 -0000	[thread overview]
Message-ID: <Pine.LNX.4.64.0708092307290.23077@gauss.cs.tamu.edu> (raw)
In-Reply-To: <200708100359.l7A3xEOq005749@greed.delorie.com>

On Thu, 9 Aug 2007, DJ Delorie wrote:

| 
| > and use the typedef instead?
| 
| What, you don't like all those "structs" around?  ;-)

:-) :-)

As you probably know by now, my brain has been altered by C++ :-)

| > Is it correct that the "user interface" now is to say
| >   
| >     #pragma GCC push
| 
| $pragma GCC diagnostics push
| 
| > ?
| 
| Yes.
| 
| > If yes, is the "push" necessary?  Can we make it implicit?
| 
| So, a pop with no corresponding push, restores to... what?  The way
| the code is now, if you don't push or save, it never even starts the
| chain - it doesn't know the difference between a command line setting
| and a #pragma without a push.  Thus, a pop wouldn't do anything
| anyway.
| 
| I think what you want is, an unmatched pop restores the command line
| settings, yes?  To do that, we'd need two things:
| 
| 1. Something in gcc does the implicit save to start the chain, so that
|    all #pragma changes are in the chain and not the table.
| 
| 2. An unmatched pop points you back at the head of the chain, which is
|    a no-op state created by that save.
| 
| But then, there would be no way to restore some project-wide settings
| pulled in by a #include.
| 
| Or did you mean that a pop always pops just ONE #pragma?  The current
| structure allows that, easier if we move the state struct to
| diagnostics.h.  Then, you just restore to state->previous.  But is
| that a pop, or an undo?


What I have in mind is something like this:

  1. When we see

            #pragma GCC diagnostics foo

     we implicitly save thre current state, push a new one and modify
     that copy to match the requested setting foo.

  2.  When we see

            #pragma GCC diagnostics restore


      we pop the stack and restore the state to the previously known
      state.

Is your point that that scheme is too simplistic to cover all we
want or we would like to support?


-- Gaby

  reply	other threads:[~2007-08-10  4:12 UTC|newest]

Thread overview: 86+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-07-27  8:15 [PATCH]: Fix problematic -Wcast-qual cases using new CONST_CAST macro Kaveh R. GHAZI
2007-07-27  9:53 ` Richard Guenther
2007-07-27 17:24   ` Kaveh R. GHAZI
2007-07-27 19:32     ` Richard Guenther
2007-07-27 19:37       ` Kaveh R. GHAZI
2007-07-27 20:28         ` Gabriel Dos Reis
2007-08-03 14:19         ` Kaveh R. GHAZI
2007-08-03 18:07           ` Gabriel Dos Reis
2007-08-06  0:19             ` Mark Mitchell
2007-08-06  0:32               ` Gabriel Dos Reis
2007-08-06  4:42                 ` Kaveh R. GHAZI
2007-08-06  5:23                   ` Mark Mitchell
2007-08-06 14:09                     ` Kaveh R. GHAZI
2007-08-06 15:33                       ` Gabriel Dos Reis
2007-08-06 17:59                         ` Kaveh R. GHAZI
2007-08-06 18:11                           ` DJ Delorie
2007-08-06 18:23                             ` Gabriel Dos Reis
2007-08-06 18:18                           ` Gabriel Dos Reis
2007-08-06 15:44                       ` Mark Mitchell
2007-08-08  5:04                         ` Add a __nowarn__ keyword Kaveh R. GHAZI
2007-08-08  8:52                           ` Manuel López-Ibáñez
2007-08-08  9:04                             ` Gabriel Dos Reis
2007-08-08 13:06                               ` Kaveh R. GHAZI
2007-08-08 13:16                                 ` Gabriel Dos Reis
2007-08-08 13:48                                   ` Kaveh R. GHAZI
2007-08-08 13:58                                     ` Paolo Bonzini
2007-08-10  1:42                                       ` Gabriel Dos Reis
2007-08-08 14:29                                     ` Manuel López-Ibáñez
2007-08-08 15:25                                       ` Daniel Jacobowitz
2007-08-08 16:35                                       ` Paolo Bonzini
2007-08-08 19:31                                         ` Kaveh R. GHAZI
2007-08-08 19:42                                           ` Gabriel Dos Reis
2007-08-08 20:22                                             ` Paolo Bonzini
2007-08-08 19:51                                           ` DJ Delorie
2007-08-08 22:41                                             ` Kaveh R. GHAZI
2007-08-08 22:54                                               ` DJ Delorie
2007-08-09  2:36                                                 ` Kaveh R. GHAZI
2007-08-09 13:40                                                   ` Daniel Jacobowitz
2007-08-09 14:19                                                     ` Kaveh R. GHAZI
2007-08-09 14:30                                                       ` Daniel Jacobowitz
2007-08-09 15:05                                                         ` Manuel López-Ibáñez
2007-08-09 15:15                                                           ` Daniel Jacobowitz
2007-08-09 15:31                                                           ` DJ Delorie
2007-08-09 22:23                                                             ` Mark Mitchell
2007-08-09 22:43                                                               ` Kaveh R. GHAZI
2007-08-10  1:52                                                                 ` Gabriel Dos Reis
2007-08-10 16:42                                                                 ` Mark Mitchell
2007-08-10  1:50                                                               ` Gabriel Dos Reis
2007-08-10  2:02                                                                 ` DJ Delorie
2007-08-10  3:09                                                                   ` Gabriel Dos Reis
2007-08-10  3:28                                                                     ` DJ Delorie
2007-08-10  3:44                                                                       ` Gabriel Dos Reis
2007-08-10  4:00                                                                         ` DJ Delorie
2007-08-10  4:12                                                                           ` Gabriel Dos Reis [this message]
2007-08-10  4:23                                                                             ` DJ Delorie
2007-08-10 13:24                                                                               ` Gabriel Dos Reis
2007-08-10 18:40                                                                             ` DJ Delorie
2007-08-11 19:19                                                                               ` Joseph S. Myers
2007-08-13 18:36                                                                                 ` DJ Delorie
2007-08-21  3:24                                                                                 ` DJ Delorie
2009-11-21 12:24                                                                                   ` Magnus Fromreide
2009-11-23 16:40                                                                                     ` Manuel López-Ibáñez
2009-11-23 23:28                                                                                     ` DJ Delorie
2007-08-10 19:05                                                                             ` DJ Delorie
2007-08-10 10:04                                                                       ` Manuel López-Ibáñez
2007-08-10 18:46                                                                         ` DJ Delorie
2007-08-09 15:21                                                         ` Kaveh R. GHAZI
2007-08-09 16:48                                                           ` Paolo Bonzini
2007-08-09 20:04                                                   ` Ian Lance Taylor
2007-08-09 20:40                                                     ` DJ Delorie
2007-08-10  1:47                                                   ` Gabriel Dos Reis
2007-08-09 14:41                                           ` Manuel López-Ibáñez
2007-08-09 16:36                                             ` Gabriel Dos Reis
2007-08-09 23:14                                               ` Kaveh R. GHAZI
2007-08-09 22:55                                             ` Kaveh R. GHAZI
2007-08-10  3:18                                               ` Kaveh R. GHAZI
2007-08-10  3:25                                                 ` Gabriel Dos Reis
2007-08-08 12:56                             ` Kaveh R. GHAZI
2007-08-08 14:05                               ` Manuel López-Ibáñez
2007-08-10  9:48 Paolo Bonzini
2007-08-10 16:53 ` Gabriel Dos Reis
2007-08-10 18:20   ` DJ Delorie
2007-08-10 18:40     ` Kaveh R. GHAZI
2007-08-10 18:52       ` DJ Delorie
2007-08-10 21:52 FX Coudert
2007-08-10 22:13 ` Kaveh R. GHAZI

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=Pine.LNX.4.64.0708092307290.23077@gauss.cs.tamu.edu \
    --to=gdr@cs.tamu.edu \
    --cc=dj@redhat.com \
    --cc=gcc-patches@gcc.gnu.org \
    --cc=ghazi@caip.rutgers.edu \
    --cc=lopezibanez@gmail.com \
    --cc=mark@codesourcery.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;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).