Author: chug
Date: Fri Jun  6 20:53:57 2014
New Revision: 1601010

URL: http://svn.apache.org/r1601010
Log:
PROTON-596: Suppress MSVC warnings

This suppression covers:

>..\..\proton-c\src\object\object.c(232): 
   warning C4244: 'argument' : conversion from 'ssize_t' to 'int',
   possible loss of data
2>..\..\proton-c\src\object\object.c(260):
   warning C4267: 'argument' : conversion from 'size_t' to 'int',
   possible loss of data
2>..\..\proton-c\src\windows\driver.c(777):
   warning C4800: 'int' : forcing value to bool 'true' or 'false'
   (performance warning)
6>..\..\..\..\..\tests\tools\apps\c\msgr-recv.c(90): 
   warning C4996: 'sscanf': This function or variable may be unsafe.
   Consider using sscanf_s instead. 
   To disable deprecation, use _CRT_SECURE_NO_WARNINGS

This covers the majority of the warnings. A typical 64-bit compile has 172 
warnings making real problems harder to see. It also follows the
pattern used in Qpid proper.

* C4244 and C4267 could still be real problems.
  Try enabling -Wconversion in GCC if you want to be pedantic in Qpid or
  Proton.

* C4800 is probably not a risk as it's a fairly idiomatic pattern in C.

* C4996 is MSVC complaining of functions that consume buffers using
 {pointer} and not {pointer, size}. They have been the source of seg
 faults and innumerable security vulnerabilities throughout the years.

Modified:
    qpid/proton/trunk/proton-c/CMakeLists.txt

Modified: qpid/proton/trunk/proton-c/CMakeLists.txt
URL: 
http://svn.apache.org/viewvc/qpid/proton/trunk/proton-c/CMakeLists.txt?rev=1601010&r1=1601009&r2=1601010&view=diff
==============================================================================
--- qpid/proton/trunk/proton-c/CMakeLists.txt (original)
+++ qpid/proton/trunk/proton-c/CMakeLists.txt Fri Jun  6 20:53:57 2014
@@ -224,7 +224,13 @@ if (CMAKE_COMPILER_IS_GNUCC)
 endif (CMAKE_COMPILER_IS_GNUCC)
 
 if (MSVC)
-       set(CMAKE_DEBUG_POSTFIX "d")
+    set(CMAKE_DEBUG_POSTFIX "d")
+    add_definitions(
+        /wd4244
+        /wd4267
+        /wd4800
+        /wd4996
+    )
 endif (MSVC)
 
 macro (pn_absolute_install_dir NAME VALUE PREFIX)



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org
For additional commands, e-mail: commits-h...@qpid.apache.org

Reply via email to