Re: C99
Mark Kettenis <[email protected]>
| Newsgroups | gmane.comp.gdb.devel |
|---|---|
| Message-ID | <[email protected]> |
> From: Tom Tromey <[email protected]> > Date: Tue, 16 Jul 2013 14:51:36 -0600 > > I'd like to draw attention to this patch: > > http://sourceware.org/ml/gdb-patches/2013-06/msg00808.html > > This points out that gdb has been unconditionally using a GCC extension, > apparently since at least 2010; the patch introducing the varargs define > in tracepoint.c was 7c56ce7 (2010-04-09). > > The patch proposes replacing this with the corresponding C99 construct. > > So, I'd like to propose we allow the use of C99 in gdb. In particular I > think we ought to require a C99 preprocessor -- enabling this particular > patch to go in and also allowing the use of "//" comments. Perhaps it is time to move on and start requiring a C99 compiler for GDB. But "//" comments are offensive to real C programmers! ;) Seriously though. This points out that such a switch has some consequences for our coding standards. We have a fairly consistent coding style in GDB, which makes it easy for people to move around in the codebase without getting distracted by the "looks" of the code. I think it's worth some effort to keep it that way. And allowing "//" comments isn't going to help. I'd vote for not using them at all. However, a more important C99 "misfeature" that affects the coding standard is the possibility to declare varaibles anywhere in the code. We should not allow this, except for declaring loop variables in a for() statement.