|
Message-ID: <5140BD06.1080905@eservices.virginia.edu> Date: Wed, 13 Mar 2013 13:53:10 -0400 From: Zvi Gilboa <zg7s@...rvices.virginia.edu> To: <musl@...ts.openwall.com> Subject: Re: inttypes.h: possible logical error? Thank you, Rich, for the quick feedback! You are of course absolutely right... Best regards, Zvi On 03/13/2013 01:23 PM, Rich Felker wrote: > On Wed, Mar 13, 2013 at 12:26:44PM -0400, Zvi Gilboa wrote: >> Greetings, >> >> In inttypes.h, the first "actual" lines read: >> >> .... >> #include <features.h> >> #include <stdint.h> >> >> #define __NEED_wchar_t >> #include <bits/alltypes.h> >> .... >> >> As it seems, the idea is to have <bits/alltypes.h> processed with >> __NEED_wchar_t already defined. However, <bits/alltypes.h> is also >> included by <stdint.h>. >> >> In a way this is rather harmless, specifically since >> <bits/alltypes.h> can be processed more than once, yet wouldn't it >> be more logical and/or consistent to #define __NEED_wchar_t prior >> to including <stdint.h>? Given no conflicting considerations, the >> above code snippet would then read: >> >> .... >> #define __NEED_wchar_t >> >> #include <features.h> >> #include <stdint.h> >> #include <bits/alltypes.h> /* possibly redundant? see stdint.h */ >> .... >> >> Thanks in advance for any and all feedback! > I wouldn't call it an error. It's a suboptimality, but the tradeoff is > that one header (inttypes.h) is not making assumptions about the > implementation of the other. If others want to see this changed to > save an #include, we could consider it, but it would need to be > commented that the optimization depends on the implementation of > stdint.h. > > Rich
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.