* Re: [RFC] Require extern modifier for function prototypes in headers. [not found] <000001cddddb$7999a0a0$6ccce1e0$%muller@ics-cnrs.unistra.fr> @ 2012-12-19 16:58 ` Eli Zaretskii 2012-12-19 21:48 ` Pierre Muller 0 siblings, 1 reply; 5+ messages in thread From: Eli Zaretskii @ 2012-12-19 16:58 UTC (permalink / raw) To: Pierre Muller; +Cc: gdb-patches > From: "Pierre Muller" <pierre.muller@ics-cnrs.unistra.fr> > Date: Wed, 19 Dec 2012 12:24:56 +0100 > > All external functions should have a declaration in a header file that > -callers include, except for @code{_initialize_*} functions, which must > +callers include, that declaration should use the @code{extern} modifier. > +The only exception concerns @code{_initialize_*} functions, which must > be external so that @file{init.c} construction works, but shouldn't be > visible to random source files. If all declarations must be external, the _initialize_* case is no longer special, so the second sentence should go away, IMO. Otherwise, OK with me. Thanks. ^ permalink raw reply [flat|nested] 5+ messages in thread
* RE: [RFC] Require extern modifier for function prototypes in headers. 2012-12-19 16:58 ` [RFC] Require extern modifier for function prototypes in headers Eli Zaretskii @ 2012-12-19 21:48 ` Pierre Muller 2012-12-19 11:25 ` Pierre Muller 0 siblings, 1 reply; 5+ messages in thread From: Pierre Muller @ 2012-12-19 21:48 UTC (permalink / raw) To: 'Eli Zaretskii'; +Cc: gdb-patches > -----Message d'origine----- > De : gdb-patches-owner@sourceware.org [mailto:gdb-patches- > owner@sourceware.org] De la part de Eli Zaretskii > Envoyé : mercredi 19 décembre 2012 17:58 > À : Pierre Muller > Cc : gdb-patches@sourceware.org > Objet : Re: [RFC] Require extern modifier for function prototypes in > headers. > > > From: "Pierre Muller" <pierre.muller@ics-cnrs.unistra.fr> > > Date: Wed, 19 Dec 2012 12:24:56 +0100 > > > > All external functions should have a declaration in a header file that > > -callers include, except for @code{_initialize_*} functions, which must > > +callers include, that declaration should use the @code{extern} modifier. > > +The only exception concerns @code{_initialize_*} functions, which must > > be external so that @file{init.c} construction works, but shouldn't be > > visible to random source files. > > If all declarations must be external, the _initialize_* case is no > longer special, so the second sentence should go away, IMO. I thought that it was still special in the sense that they are the only non-static functions that are not declared in headers, but only inside the C source itself. > Otherwise, OK with me. > > Thanks. Pierre ^ permalink raw reply [flat|nested] 5+ messages in thread
* [RFC] Require extern modifier for function prototypes in headers. @ 2012-12-19 11:25 ` Pierre Muller 2012-12-22 12:54 ` Jan Kratochvil 0 siblings, 1 reply; 5+ messages in thread From: Pierre Muller @ 2012-12-19 11:25 UTC (permalink / raw) To: gdb-patches Following the discussion triggered by my latest RFA/OBVIOUS? email, Joel proposed that I added a change to GDB coding styles. Here it is. Currently you can use "extern" modifier or leave it out. Apparently it should make no difference for function prototypes, but I still find it strange to have all functions but one being declared with "extern", like in ui-file.h header. Comments mowt welcome, Pierre Muller GDB pascal language maintainer 2012-12-19 Pierre Muller <muller@sourceware.org> * gdbint.texinfo (Function prototypes): Require use of "extern" modifier for function prototypes in headers. Index: gdbint.texinfo =================================================================== RCS file: /cvs/src/src/gdb/doc/gdbint.texinfo,v retrieving revision 1.344 diff -u -r1.344 gdbint.texinfo --- gdbint.texinfo 16 Dec 2012 19:00:04 -0000 1.344 +++ gdbint.texinfo 19 Dec 2012 11:19:40 -0000 @@ -5935,7 +5935,8 @@ function definition. All external functions should have a declaration in a header file that -callers include, except for @code{_initialize_*} functions, which must +callers include, that declaration should use the @code{extern} modifier. +The only exception concerns @code{_initialize_*} functions, which must be external so that @file{init.c} construction works, but shouldn't be visible to random source files. ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [RFC] Require extern modifier for function prototypes in headers. 2012-12-19 11:25 ` Pierre Muller @ 2012-12-22 12:54 ` Jan Kratochvil 2012-12-22 17:53 ` Pierre Muller 0 siblings, 1 reply; 5+ messages in thread From: Jan Kratochvil @ 2012-12-22 12:54 UTC (permalink / raw) To: Pierre Muller; +Cc: gdb-patches, 'Eli Zaretskii' On Wed, 19 Dec 2012 12:24:56 +0100, Pierre Muller wrote: > Joel proposed that I added a change to GDB coding styles. It was me, that we do not put it into Joel's mouth. On Wed, 19 Dec 2012 22:48:11 +0100, Pierre Muller wrote: > > De : gdb-patches-owner@sourceware.org [mailto:gdb-patches- > > owner@sourceware.org] De la part de Eli Zaretskii [...] > > If all declarations must be external, the _initialize_* case is no > > longer special, so the second sentence should go away, IMO. > > I thought that it was still special in the sense that they > are the only non-static functions that are not declared in headers, > but only inside the C source itself. I agree with the technical part said by Pierre here. So the doc change seems approved to me that way. Thanks, Jan ^ permalink raw reply [flat|nested] 5+ messages in thread
* RE: [RFC] Require extern modifier for function prototypes in headers. 2012-12-22 12:54 ` Jan Kratochvil @ 2012-12-22 17:53 ` Pierre Muller 0 siblings, 0 replies; 5+ messages in thread From: Pierre Muller @ 2012-12-22 17:53 UTC (permalink / raw) To: 'Jan Kratochvil'; +Cc: gdb-patches, 'Eli Zaretskii' > -----Message d'origine----- > De : gdb-patches-owner@sourceware.org [mailto:gdb-patches- > owner@sourceware.org] De la part de Jan Kratochvil > Envoyé : samedi 22 décembre 2012 13:54 > À : Pierre Muller > Cc : gdb-patches@sourceware.org; 'Eli Zaretskii' > Objet : Re: [RFC] Require extern modifier for function prototypes in > headers. > > On Wed, 19 Dec 2012 12:24:56 +0100, Pierre Muller wrote: > > Joel proposed that I added a change to GDB coding styles. > > It was me, that we do not put it into Joel's mouth. Whoops, sorry for the mistake. > On Wed, 19 Dec 2012 22:48:11 +0100, Pierre Muller wrote: > > > De : gdb-patches-owner@sourceware.org [mailto:gdb-patches- > > > owner@sourceware.org] De la part de Eli Zaretskii > [...] > > > If all declarations must be external, the _initialize_* case is no > > > longer special, so the second sentence should go away, IMO. > > > > I thought that it was still special in the sense that they > > are the only non-static functions that are not declared in headers, > > but only inside the C source itself. > > I agree with the technical part said by Pierre here. So the doc change > seems > approved to me that way. Thanks, Patch applied in http://sourceware.org/ml/gdb-cvs/2012-12/msg00174.html Pierre Muller ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2012-12-22 17:53 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
[not found] <000001cddddb$7999a0a0$6ccce1e0$%muller@ics-cnrs.unistra.fr>
2012-12-19 16:58 ` [RFC] Require extern modifier for function prototypes in headers Eli Zaretskii
2012-12-19 21:48 ` Pierre Muller
2012-12-19 11:25 ` Pierre Muller
2012-12-22 12:54 ` Jan Kratochvil
2012-12-22 17:53 ` Pierre Muller
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox