Compilation warnings fixes (git patches included)

View: New views
1 Messages — Rating Filter:   Alert me  

Compilation warnings fixes (git patches included)

by Ludovic Rousseau :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hello,

I fixed some compilation warnings.
The compiler warning is included in the patch commit message.
"git format-patch origin" patches attached.


I also have a lot of warnings like:
libusbi.h:257: warning: pointer of type ‘void *’ used in arithmetic

The fix is easy (see bellow). But It _may_ have side effects. The idea
is to replace (void *) by (char *)


--- /var/folders/Ix/Ixm8JMceFo4zOwN0Ef92LU+++TI/-Tmp-//YWMApC_libusbi.h
2009-10-25 10:13:30.000000000 +0100
+++ libusb/libusbi.h    2009-10-25 10:13:09.000000000 +0100
@@ -245,15 +245,15 @@ struct usbi_transfer {
  };

  #define __USBI_TRANSFER_TO_LIBUSB_TRANSFER(transfer) \
-   ((struct libusb_transfer *)(((void *)(transfer)) \
+   ((struct libusb_transfer *)(((char *)(transfer)) \
         + sizeof(struct usbi_transfer)))
  #define __LIBUSB_TRANSFER_TO_USBI_TRANSFER(transfer) \
-   ((struct usbi_transfer *)(((void *)(transfer)) \
+   ((struct usbi_transfer *)(((char *)(transfer)) \
         - sizeof(struct usbi_transfer)))

  static inline void *usbi_transfer_get_os_priv(struct usbi_transfer
*transfer)
  {
-   return ((void *)transfer) + sizeof(struct usbi_transfer)
+   return ((char *)transfer) + sizeof(struct usbi_transfer)
         + sizeof(struct libusb_transfer)
         + (transfer->num_iso_packets
             * sizeof(struct libusb_iso_packet_descriptor));


Regards,

--
  Dr. Ludovic Rousseau

>From 8d3c5ff3c688ded3d7310ca4375a1d94fc102f03 Mon Sep 17 00:00:00 2001
From: Ludovic Rousseau <rousseau@...>
Date: Sun, 25 Oct 2009 09:59:51 +0100
Subject: [PATCH 1/4] declare libusb_get_max_iso_packet_size() in the public interface

core.c:777: warning: no previous prototype for 'libusb_get_max_iso_packet_size'
---
 libusb/libusb.h |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/libusb/libusb.h b/libusb/libusb.h
index 1126380..50d1301 100644
--- a/libusb/libusb.h
+++ b/libusb/libusb.h
@@ -772,6 +772,7 @@ void libusb_set_debug(libusb_context *ctx, int level);
 ssize_t libusb_get_device_list(libusb_context *ctx,
  libusb_device ***list);
 void libusb_free_device_list(libusb_device **list, int unref_devices);
+int libusb_get_max_iso_packet_size(libusb_device *dev, unsigned char endpoint);
 libusb_device *libusb_ref_device(libusb_device *dev);
 void libusb_unref_device(libusb_device *dev);
 
--
1.6.4.1


>From 273c78fe44cef627086b531433903499f555ab8d Mon Sep 17 00:00:00 2001
From: Ludovic Rousseau <rousseau@...>
Date: Sun, 25 Oct 2009 10:01:53 +0100
Subject: [PATCH 2/4] only declare handle_timeout() if USBI_OS_HANDLES_TIMEOUT is not defined
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

io.c:1472: warning: ‘handle_timeout’ defined but not used
---
 libusb/io.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/libusb/io.c b/libusb/io.c
index b63c000..d14eb0f 100644
--- a/libusb/io.c
+++ b/libusb/io.c
@@ -1468,6 +1468,7 @@ API_EXPORTED int libusb_wait_for_event(libusb_context *ctx, struct timeval *tv)
  return (r == ETIMEDOUT);
 }
 
+#ifndef USBI_OS_HANDLES_TIMEOUT
 static void handle_timeout(struct usbi_transfer *itransfer)
 {
  struct libusb_transfer *transfer =
@@ -1480,6 +1481,7 @@ static void handle_timeout(struct usbi_transfer *itransfer)
  usbi_warn(TRANSFER_CTX(transfer),
  "async cancel failed %d errno=%d", r, errno);
 }
+#endif
 
 static int handle_timeouts(struct libusb_context *ctx)
 {
--
1.6.4.1


>From ea5ec135ed8396d2777ddf9d5a3bd2fd0b987c18 Mon Sep 17 00:00:00 2001
From: Ludovic Rousseau <rousseau@...>
Date: Sun, 25 Oct 2009 10:05:10 +0100
Subject: [PATCH 3/4] darwin_error_str() returns a const char * instead of char *

os/darwin_usb.c:63: warning: return discards qualifiers from pointer
target type
---
 libusb/os/darwin_usb.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/libusb/os/darwin_usb.c b/libusb/os/darwin_usb.c
index 9c64b60..16de68c 100644
--- a/libusb/os/darwin_usb.c
+++ b/libusb/os/darwin_usb.c
@@ -57,7 +57,7 @@ static void darwin_isoc_callback (struct usbi_transfer *itransfer, kern_return_t
 static void darwin_control_callback (struct usbi_transfer *itransfer, kern_return_t result, UInt32 io_size);
 static void darwin_async_io_callback (void *refcon, IOReturn result, void *arg0);
 
-static char *darwin_error_str (int result) {
+static const char *darwin_error_str (int result) {
   switch (result) {
   case kIOReturnSuccess:
     return "no error";
--
1.6.4.1


>From 93d4cec9fc39089898e7e15e2ebf4d5df905528f Mon Sep 17 00:00:00 2001
From: Ludovic Rousseau <rousseau@...>
Date: Sun, 25 Oct 2009 10:06:41 +0100
Subject: [PATCH 4/4] make print_devs() static
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

lsusb.c:26: warning: no previous prototype for ‘print_devs’
---
 examples/lsusb.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/examples/lsusb.c b/examples/lsusb.c
index 7e9f48e..317adf0 100644
--- a/examples/lsusb.c
+++ b/examples/lsusb.c
@@ -22,7 +22,7 @@
 
 #include <libusb/libusb.h>
 
-void print_devs(libusb_device **devs)
+static void print_devs(libusb_device **devs)
 {
  libusb_device *dev;
  int i = 0;
--
1.6.4.1


------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
Libusb-devel mailing list
Libusb-devel@...
https://lists.sourceforge.net/lists/listinfo/libusb-devel