Christopher Collins created MYNEWT-650:
------------------------------------------

             Summary: fs/fs/test build errors for non-native platforms
                 Key: MYNEWT-650
                 URL: https://issues.apache.org/jira/browse/MYNEWT-650
             Project: Mynewt
          Issue Type: Bug
            Reporter: Christopher Collins
            Assignee: Christopher Collins
             Fix For: v1_0_0_rel


E.g.,
{noformat}
fs/nffs/test/src/nffs_test_debug.c:68:12: error: format '%d' expects argument 
of type 'int', but argument 5 has type 'uint32_t' [-Werror=format=]
            inode.ni_seq, inode.ni_inode_entry->nie_flags);
            ^
fs/nffs/test/src/nffs_test_debug.c: In function 'print_nffs_flash_inode':
fs/nffs/test/src/nffs_test_debug.c:112:12: error: format '%x' expects argument 
of type 'unsigned int', but argument 2 has type 'uint32_t' [-Werror=format=]
            filename);
            ^
fs/nffs/test/src/nffs_test_debug.c:112:12: error: format '%x' expects argument 
of type 'unsigned int', but argument 4 has type 'uint32_t' [-Werror=format=]
fs/nffs/test/src/nffs_test_debug.c:112:12: error: format '%x' expects argument 
of type 'unsigned int', but argument 7 has type 'uint32_t' [-Werror=format=]
fs/nffs/test/src/nffs_test_debug.c:112:12: error: format '%x' expects argument 
of type 'unsigned int', but argument 8 has type 'uint32_t' [-Werror=format=]
fs/nffs/test/src/nffs_test_debug.c: In function 'print_nffs_flash_block':
fs/nffs/test/src/nffs_test_debug.c:132:12: error: format '%x' expects argument 
of type 'unsigned int', but argument 2 has type 'uint32_t' [-Werror=format=]
            ndb.ndb_inode_id);
{noformat}

The problem is that the fixed-size integer types map to different "natural" 
integer types, depending on the target platform.  Unfortunately, the PRIxxx 
macros in inttypes.h don't work here, since gcc assumes no cross compile when 
it generates the warning.  The next best solution is to cast everything to 
uintmax_t and apply the {{j}} format specifier.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to