To avoid warnings on some compilers added extra parens to if ((error = func()))
diff --git a/ndn-cpp/c/encoding/binary-xml-publisher-public-key-digest.c b/ndn-cpp/c/encoding/binary-xml-publisher-public-key-digest.c
index dfc95d1..fe9530a 100644
--- a/ndn-cpp/c/encoding/binary-xml-publisher-public-key-digest.c
+++ b/ndn-cpp/c/encoding/binary-xml-publisher-public-key-digest.c
@@ -14,9 +14,9 @@
     return 0;
   
   ndn_Error error;
-  if (error = ndn_BinaryXmlEncoder_writeBlobDTagElement
+  if ((error = ndn_BinaryXmlEncoder_writeBlobDTagElement
       (encoder, ndn_BinaryXml_DTag_PublisherPublicKeyDigest, publisherPublicKeyDigest->publisherPublicKeyDigest, 
-       publisherPublicKeyDigest->publisherPublicKeyDigestLength))
+       publisherPublicKeyDigest->publisherPublicKeyDigestLength)))
     return error;
   
   return 0;
@@ -26,9 +26,9 @@
   (struct ndn_PublisherPublicKeyDigest *publisherPublicKeyDigest, struct ndn_BinaryXmlDecoder *decoder)
 {
   ndn_Error error; 
-  if (error = ndn_BinaryXmlDecoder_readBinaryDTagElement
+  if ((error = ndn_BinaryXmlDecoder_readBinaryDTagElement
       (decoder, ndn_BinaryXml_DTag_PublisherPublicKeyDigest, 0, &publisherPublicKeyDigest->publisherPublicKeyDigest,
-       &publisherPublicKeyDigest->publisherPublicKeyDigestLength))
+       &publisherPublicKeyDigest->publisherPublicKeyDigestLength)))
     return error;
   
   return 0;
@@ -39,10 +39,10 @@
 {
   int gotExpectedTag;
   ndn_Error error; 
-  if (error = ndn_BinaryXmlDecoder_peekDTag(decoder, ndn_BinaryXml_DTag_PublisherPublicKeyDigest, &gotExpectedTag))
+  if ((error = ndn_BinaryXmlDecoder_peekDTag(decoder, ndn_BinaryXml_DTag_PublisherPublicKeyDigest, &gotExpectedTag)))
     return error;
   if (gotExpectedTag) {
-    if (error = ndn_decodeBinaryXmlPublisherPublicKeyDigest(publisherPublicKeyDigest, decoder))
+    if ((error = ndn_decodeBinaryXmlPublisherPublicKeyDigest(publisherPublicKeyDigest, decoder)))
       return error;
   }
   else {