This is the mail archive of the cygwin@cygwin.com mailing list for the Cygwin project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
key = ((st.st_ino & 0xffff) | ((st.st_dev & 0xff) << 16) | ((id & 0xff) << 24));
Given the sizes of the various fields of st, there are obvious problems with aliasing here.
But, be advised that I'm in the process of changing the inode field to a long long so I'm not sure that we wouldn't be just pushing this off a little further.
st_dev = 16 bits st_ino = 64 bits (tentative) id = 8 bits
typedef union { long long value; // only 64 bits long byte[12] bytes; // 96 bits of storage } key_t
-- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |