New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Use of angle brackets around file names for include statements #266
Comments
@elfring is this causing problems because you are compiling Magnum directly with your code? Just asking because I use it as an installed library and it's not affected me and I'm curious about why. |
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++”.
|
Sorry, I'm a newbie, I still don't follow.
|
There are different opinions about the handling of the involved implementation-defined behaviour.
|
@elfring ah, thank you for the clarification. So it's not a particular issue you've run into right now. I'm not involved with the project, just a user, but my personal preference is how things have been done now, as a visual indicator of what I can expect to belong to the project itself (quotes) as opposed to system or installed libraries (angle brackets). This helps when I inspect the magnum code. In my project I end up using angle brackets when I include magnum elements as that is an installed library. |
Do you care (for example) why the boost class library is using angle brackets in include statements for corresponding header files? |
I don't use boost. But I suspect that if I were going through the boost library to learn concepts (as I do with Magnum) I would appreciate this, since it gives me a good visual indication of what is within the code base and what is external. |
Hi again, @elfring! I'm having the following convention for
This convention is followed very consistently across all Magnum-related projects and helps me see, for example, when debugging something, if I need to patch something in the current project (which is easier) or outside some other (which takes time). Basically what @kghose said above (thank you, @kghose!). I don't buy the performance concern you have, including a system header that's not needed has much bigger impact than this and unless you want to prove that with a reproducible benchmark, I'll take this as just a speculation. OTOH, for example using I see that you opened 88 similar issues in almost 50 other repositories just this month and since unfortunately I have much pressing things to work on than having a discussion on these topics, I'll close this one as "wontfix". I hope you can understand that and acknowledge the very detailed reasoning behing the current state I posted above. |
|
Man, this discussion is over, really. I thought it was clear. I stated all the reasons above and I'm not going to pour over everything and change things if it won't result in significant performance or usability improvement. I really don't want to be mean and block / lock / report you, so please let's act like adults and stop the conversation here. |
Would you like to replace any double quotes by angle brackets around file names for include statements?
The text was updated successfully, but these errors were encountered: