[setup - the official Cygwin setup program] branch master, updated. release_2.905-5-gda31ad35

Jon TURNEY jturney@sourceware.org
Sun Oct 18 13:15:05 GMT 2020




https://sourceware.org/git/gitweb.cgi?p=cygwin-apps/setup.git;h=da31ad359bcb61a6d824732c0093a1138e613db6

commit da31ad359bcb61a6d824732c0093a1138e613db6
Author: Jon Turney <jon.turney@dronecode.org.uk>
Date:   Wed Sep 23 22:43:30 2020 +0100

    Fix error with gcc 10.2 and -Werror=format
    
    archive_tar.cc: In member function ‘virtual const string archive_tar::next_file_name()’:
    archive_tar.cc:161:37: error: 'I' flag used with ‘%o’ gnu_scanf format [-Werror=format=]
    archive_tar.cc:161:37: error: format ‘%o’ expects argument of type ‘unsigned int*’, but argument 3 has type ‘size_t*’ {aka ‘long long unsigned int*’} [-Werror=format=]
    archive_tar.cc:181:38: error: 'I' flag used with ‘%o’ gnu_scanf format [-Werror=format=]
    archive_tar.cc:181:38: error: format ‘%o’ expects argument of type ‘unsigned int*’, but argument 3 has type ‘size_t*’ {aka ‘long long unsigned int*’} [-Werror=format=]


Diff:
---
 archive_tar.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/archive_tar.cc b/archive_tar.cc
index 05c3f6e8..c3592386 100644
--- a/archive_tar.cc
+++ b/archive_tar.cc
@@ -158,7 +158,7 @@ archive_tar::next_file_name ()
   else if (state.have_longname)
     state.have_longname = 0;
 
-  sscanf (state.tar_header.size, "%Io", &state.file_length);
+  sscanf (state.tar_header.size, "%zo", &state.file_length);
   state.file_offset = 0;
 
   if (_tar_verbose)
@@ -178,7 +178,7 @@ archive_tar::next_file_name ()
                           CYG_PATH_MAX);
 	  err++;
 	  state.parent->read (&state.tar_header, 512);
-	  sscanf (state.tar_header.size, "%Io", &state.file_length);
+	  sscanf (state.tar_header.size, "%zo", &state.file_length);
 	  state.file_offset = 0;
 	  skip_file ();
 	  return next_file_name ();



More information about the Cygwin-apps-cvs mailing list