Fix "attribute 'packed' is ignored" warnings when using Clang

Clang 3.1 warned that "attribute 'packed' is ignored". This stems from
placing "__attribute__ ((packed))" at the start of structure
declarations when common practice is to place it at the end.

Signed-off-by: Richard Yao <ryao@gentoo.org>
This commit is contained in:
Richard Yao 2012-11-18 14:55:10 -05:00 committed by Zbigniew Jędrzejewski-Szmek
parent 378cf88f72
commit e683136da1
1 changed files with 8 additions and 8 deletions

View File

@ -25,7 +25,7 @@
#define HWDB_SIG { 'K', 'S', 'L', 'P', 'H', 'H', 'R', 'H' } #define HWDB_SIG { 'K', 'S', 'L', 'P', 'H', 'H', 'R', 'H' }
/* on-disk trie objects */ /* on-disk trie objects */
_packed_ struct trie_header_f { struct trie_header_f {
uint8_t signature[8]; uint8_t signature[8];
/* version of tool which created the file */ /* version of tool which created the file */
@ -44,9 +44,9 @@ _packed_ struct trie_header_f {
/* size of the nodes and string section */ /* size of the nodes and string section */
le64_t nodes_len; le64_t nodes_len;
le64_t strings_len; le64_t strings_len;
}; } _packed_;
_packed_ struct trie_node_f { struct trie_node_f {
/* prefix of lookup string, shared by all children */ /* prefix of lookup string, shared by all children */
le64_t prefix_off; le64_t prefix_off;
/* size of children entry array appended to the node */ /* size of children entry array appended to the node */
@ -54,21 +54,21 @@ _packed_ struct trie_node_f {
uint8_t padding[7]; uint8_t padding[7];
/* size of value entry array appended to the node */ /* size of value entry array appended to the node */
le64_t values_count; le64_t values_count;
}; } _packed_;
/* array of child entries, follows directly the node record */ /* array of child entries, follows directly the node record */
_packed_ struct trie_child_entry_f { struct trie_child_entry_f {
/* index of the child node */ /* index of the child node */
uint8_t c; uint8_t c;
uint8_t padding[7]; uint8_t padding[7];
/* offset of the child node */ /* offset of the child node */
le64_t child_off; le64_t child_off;
}; } _packed_;
/* array of value entries, follows directly the node record/child array */ /* array of value entries, follows directly the node record/child array */
_packed_ struct trie_value_entry_f { struct trie_value_entry_f {
le64_t key_off; le64_t key_off;
le64_t value_off; le64_t value_off;
}; } _packed_;
#endif #endif