aerys / minko

3D framework for web, desktop and mobile devices.
http://minko.io
Other
906 stars 210 forks source link

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

Closed elfring closed 10 years ago

elfring commented 10 years ago

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

warrenseine commented 10 years ago

Unfortunately, no. I think we're doing it the correct way (quotes for internal headers, brackets for system headers). If you need to include a specific header, simply add framework/include to your include path.

Please describe your issue if this is a problem for you.

elfring commented 10 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
…
JMLX42 commented 10 years ago

What are the actual consequences of using " " instead of < > ?

elfring commented 10 years ago

Would you like to clarify implementation details for C++ preprocessors any more than the information I referred to before?

warrenseine commented 10 years ago

So far, there hasn't been any problem with the current include approach. Moreover, LLVM, Chromium, Firefox and pretty much all projects use the double-quote approach. We're only changing code when it's actually fixing things. Is our include path breaking code on your side?

elfring commented 10 years ago

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

JMLX42 commented 10 years ago

There must be something like 1 000 000 lines of code when you compile the whole SDK. Taking all the different platforms (Windows, OS X, Linux, Android, iOS, HTML5...), architectures (32bits, 64bits), release and debug builds, it adds up to (dozens ?) of gigabytes of compiled/linked binaries.

I am "pretty sure" the eventual "search" for each included header has little to no impact on the compiling performances. Especially considering we have only a few include dirs so that this linear search must have a constant negligeable time impact.

In other words, this "issue" is orders of magnitude smaller than anything useful and mandatory the build process implies. "fixing" this will not improve anything in measurable any way. Still, if you measure any signficant performance difference using angle brackets, please let us know.

elfring commented 10 years ago

Do you reuse the parameter "iquote" for the tool "g++" already?

warrenseine commented 10 years ago

No, we didn't. But, instead of referring to the documentation, please tell us what your actual issue is. So far, I had never heard of -iquote, though I use GCC quite often. I haven't had any issue yet that needed this option, and apparently, I'm not the only one. Again, what you're suggesting might be helpful, only if it solves an issue.

elfring commented 10 years ago

I try to clarify and improve the fine-tuning for header file search directories. I'm "curious" if other software developers care also for the affected implementation details.

JMLX42 commented 10 years ago

I think that the implementation details have little to no impact here considering the amount of code at hands here. On Sep 10, 2014 10:15 AM, "Markus Elfring" notifications@github.com wrote:

I try to clarify and improve the fine-tuning for header file search directories. I'm "curious" if other software developers care also for the affected implementation details.

— Reply to this email directly or view it on GitHub https://github.com/aerys/minko/issues/178#issuecomment-55084209.