Paul Eggert wrote:
> On 2024-02-18 04:19, Bruno Haible wrote:
> > +When including including specific header files, you need to use the
> > +@samp{#include <...>} syntax, not the @samp{#include "..."} syntax.
> 
> Why does Gnulib source code ever use the #include "..." syntax?

Because that's the way the rest of the world does it:
  - GNU documentation: [1][2]
  - Stackoverflow beginner's question: [3]
  - Actual use in source code (codesearch.debian.net):
    11954285 times  include "
     9623421 times  include <

> I don't 
> see why it's helpful, given that one must always use -I to name the 
> source code directory anyway.

It's helpful, in order to not deter contributors, to use coding styles
like the rest of the world does. GNU coding style is a deterrence, the
Gnulib module system is another one; but these ones are necessary (i.e.
have a good benefit). Whereas writing #include <...> everywhere has
very little benefit.

> If there's a reason for using #include "..." it should be documented; if 
> not, Gnulib should stop doing it as it's just a recipe for trouble.

I disagree:
  - New idiosyncrasies do not help to attract contributors.
  - As documented, the requirement to use #include <...> for specific header
    files exists for packages that use Gnulib. If you were to change the
    code in Gnulib, that does not change the one in bison, coreutils, gettext,
    wget2, and so on.

Bruno

[1] https://gcc.gnu.org/onlinedocs/cpp/Include-Syntax.html
[2] https://gcc.gnu.org/onlinedocs/cpp/Search-Path.html
[3] https://stackoverflow.com/questions/21593/




Reply via email to