summaryrefslogtreecommitdiffstats
path: root/Utilities/cmlibarchive
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2012-01-04 16:54:51 (GMT)
committerBrad King <brad.king@kitware.com>2012-01-04 16:54:51 (GMT)
commit65b6e19a35c1bde5ee3c132ade076ee5f42e6559 (patch)
treeb2257e4496e9b0acd00d412c907fb86a8cd9fc4b /Utilities/cmlibarchive
parent9ccaeb10f9fd58503c8a7e1535f2c9154e3e8c93 (diff)
downloadCMake-65b6e19a35c1bde5ee3c132ade076ee5f42e6559.zip
CMake-65b6e19a35c1bde5ee3c132ade076ee5f42e6559.tar.gz
CMake-65b6e19a35c1bde5ee3c132ade076ee5f42e6559.tar.bz2
libarchive: Avoid bogus conversion warning from PGI compiler
We cannot suppress PGI compiler warnings completely because even with the "-w" flag the compiler still writes a message containing "compilation completed with warnings" to stderr. A warning is triggered by expressions like test ? NULL : ptr_to_const_char test ? ".." : ptr_to_const_char that the PGI compiler handles incorrectly. It chooses the pointer type of the first option (either void* or char*) and warns about conversion of the second without a cast. Flip the expression logic to !test ? ptr_to_const_char : NULL !test ? ptr_to_const_char : ".." to help the compiler choose the proper result type.
Diffstat (limited to 'Utilities/cmlibarchive')
-rw-r--r--Utilities/cmlibarchive/libarchive/archive_options.c6
-rw-r--r--Utilities/cmlibarchive/libarchive/archive_read.c2
-rw-r--r--Utilities/cmlibarchive/libarchive/archive_read_support_format_7zip.c2
-rw-r--r--Utilities/cmlibarchive/libarchive/archive_write.c2
4 files changed, 6 insertions, 6 deletions
diff --git a/Utilities/cmlibarchive/libarchive/archive_options.c b/Utilities/cmlibarchive/libarchive/archive_options.c
index 962572c..79b4ffb 100644
--- a/Utilities/cmlibarchive/libarchive/archive_options.c
+++ b/Utilities/cmlibarchive/libarchive/archive_options.c
@@ -41,9 +41,9 @@ _archive_set_option(struct archive *a,
archive_check_magic(a, magic, ARCHIVE_STATE_NEW, fn);
- mp = m != NULL && m[0] == '\0' ? NULL : m;
- op = o != NULL && o[0] == '\0' ? NULL : o;
- vp = v != NULL && v[0] == '\0' ? NULL : v;
+ mp = m != NULL && m[0] != '\0' ? m : NULL;
+ op = o != NULL && o[0] != '\0' ? o : NULL;
+ vp = v != NULL && v[0] != '\0' ? v : NULL;
if (op == NULL && vp == NULL)
return (ARCHIVE_OK);
diff --git a/Utilities/cmlibarchive/libarchive/archive_read.c b/Utilities/cmlibarchive/libarchive/archive_read.c
index 441be53..6d7f263 100644
--- a/Utilities/cmlibarchive/libarchive/archive_read.c
+++ b/Utilities/cmlibarchive/libarchive/archive_read.c
@@ -902,7 +902,7 @@ static const char *
_archive_filter_name(struct archive *_a, int n)
{
struct archive_read_filter *f = get_filter(_a, n);
- return f == NULL ? NULL : f->name;
+ return f != NULL ? f->name : NULL;
}
static int64_t
diff --git a/Utilities/cmlibarchive/libarchive/archive_read_support_format_7zip.c b/Utilities/cmlibarchive/libarchive/archive_read_support_format_7zip.c
index 756f08d..3a12405 100644
--- a/Utilities/cmlibarchive/libarchive/archive_read_support_format_7zip.c
+++ b/Utilities/cmlibarchive/libarchive/archive_read_support_format_7zip.c
@@ -1095,7 +1095,7 @@ init_decompression(struct archive_read *a, struct _7zip *zip,
}
archive_set_error(&a->archive, err,
"Internal error initializing decompressor: %s",
- detail == NULL ? "??" : detail);
+ detail != NULL ? detail : "??");
zip->bzstream_valid = 0;
return (ARCHIVE_FAILED);
}
diff --git a/Utilities/cmlibarchive/libarchive/archive_write.c b/Utilities/cmlibarchive/libarchive/archive_write.c
index c742d60..b4b3867 100644
--- a/Utilities/cmlibarchive/libarchive/archive_write.c
+++ b/Utilities/cmlibarchive/libarchive/archive_write.c
@@ -698,7 +698,7 @@ static const char *
_archive_filter_name(struct archive *_a, int n)
{
struct archive_write_filter *f = filter_lookup(_a, n);
- return f == NULL ? NULL : f->name;
+ return f != NULL ? f->name : NULL;
}
static int64_t