duckie / boson

A C++14 framework for asynchronous I/O, cooperative multitasking and green threads scheduling
MIT License
159 stars 12 forks source link

Use of angle brackets around file names for include statements #1

Closed elfring closed 7 years ago

elfring commented 7 years ago

Would you like to replace any double quotes by angle brackets around file names for include statements?

duckie commented 7 years ago

Hi elfring !

I did not intend to in the first place. The actual policy is:

This is meant to materialize the difference between an include from the project itself and an include expected from somewhere else. I we replace by angle brackets everywhere, all includes shall be prefixed by boson/.

There is an issue about fmtlib on this part, which will be fixed soon.

Do you have any technical reason to replace them ? The only one I could think of is to replace these headers by mocks, but we are not there yet.

elfring commented 7 years ago

I suggest to reconsider the consequences of the following wording from the section “16.2 Source file inclusion” in the standard specification for the programming language “C++”.

…
The named source file is searched for in an implementation-defined manner. If this search is not supported, or if the search fails, the directive is reprocessed as if it read

#include <h-char-sequence> new-line
…
duckie commented 7 years ago

Both are "implementation-defined".

The usual understanding of them is double quotes for headers owned by the project and angle brackets for the others, as stated by your own link.

This is is definitely not an issue since any of the compilers modern enough to compile that C++14 code have a well-defined and well-known behavior about it.

So, no change will be made to it while this is not a show-stopper for any planned feature.

Thank you very much for your input though 👍

elfring commented 7 years ago

There are different opinions about the handling of the involved implementation-defined behaviour.