* [U-Boot] [PATCH "mkimage" branch] tools/mkimage: fix compiler warnings, use "const"
@ 2009-08-19 9:54 Wolfgang Denk
2009-08-20 8:37 ` Prafulla Wadaskar
2009-09-10 8:39 ` Wolfgang Denk
0 siblings, 2 replies; 5+ messages in thread
From: Wolfgang Denk @ 2009-08-19 9:54 UTC (permalink / raw)
To: u-boot
This fixes some compiler warnings:
tools/default_image.c:141: warning: initialization from incompatible pointer type
tools/fit_image.c:202: warning: initialization from incompatible pointer type
and changes to code to use "const" attributes in a few places where
it's appropriate.
Signed-off-by: Wolfgang Denk <wd@denx.de>
---
common/image.c | 39 ++++++++++++++++++++-------------------
include/image.h | 34 +++++++++++++++++-----------------
tools/mkimage.h | 2 +-
3 files changed, 38 insertions(+), 37 deletions(-)
diff --git a/common/image.c b/common/image.c
index e22c974..f3dd647 100644
--- a/common/image.c
+++ b/common/image.c
@@ -65,7 +65,7 @@ extern int do_bdinfo(cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
DECLARE_GLOBAL_DATA_PTR;
-static image_header_t* image_get_ramdisk (ulong rd_addr, uint8_t arch,
+static const image_header_t* image_get_ramdisk (ulong rd_addr, uint8_t arch,
int verify);
#else
#include "mkimage.h"
@@ -166,7 +166,7 @@ static void genimg_print_time (time_t timestamp);
/*****************************************************************************/
/* Legacy format routines */
/*****************************************************************************/
-int image_check_hcrc (image_header_t *hdr)
+int image_check_hcrc (const image_header_t *hdr)
{
ulong hcrc;
ulong len = image_get_header_size ();
@@ -181,7 +181,7 @@ int image_check_hcrc (image_header_t *hdr)
return (hcrc == image_get_hcrc (hdr));
}
-int image_check_dcrc (image_header_t *hdr)
+int image_check_dcrc (const image_header_t *hdr)
{
ulong data = image_get_data (hdr);
ulong len = image_get_data_size (hdr);
@@ -203,7 +203,7 @@ int image_check_dcrc (image_header_t *hdr)
* returns:
* number of components
*/
-ulong image_multi_count (image_header_t *hdr)
+ulong image_multi_count (const image_header_t *hdr)
{
ulong i, count = 0;
uint32_t *size;
@@ -236,7 +236,7 @@ ulong image_multi_count (image_header_t *hdr)
* data address and size of the component, if idx is valid
* 0 in data and len, if idx is out of range
*/
-void image_multi_getimg (image_header_t *hdr, ulong idx,
+void image_multi_getimg (const image_header_t *hdr, ulong idx,
ulong *data, ulong *len)
{
int i;
@@ -272,7 +272,7 @@ void image_multi_getimg (image_header_t *hdr, ulong idx,
}
}
-static void image_print_type (image_header_t *hdr)
+static void image_print_type (const image_header_t *hdr)
{
const char *os, *arch, *type, *comp;
@@ -286,7 +286,7 @@ static void image_print_type (image_header_t *hdr)
/**
* image_print_contents - prints out the contents of the legacy format image
- * @hdr: pointer to the legacy format image header
+ * @ptr: pointer to the legacy format image header
* @p: pointer to prefix string
*
* image_print_contents() formats a multi line legacy image contents description.
@@ -296,8 +296,9 @@ static void image_print_type (image_header_t *hdr)
* returns:
* no returned results
*/
-void image_print_contents (image_header_t *hdr)
+void image_print_contents (const void *ptr)
{
+ const image_header_t *hdr = (const image_header_t *)ptr;
const char *p;
#ifdef USE_HOSTCC
@@ -363,10 +364,10 @@ void image_print_contents (image_header_t *hdr)
* pointer to a ramdisk image header, if image was found and valid
* otherwise, return NULL
*/
-static image_header_t* image_get_ramdisk (ulong rd_addr, uint8_t arch,
+static const image_header_t *image_get_ramdisk (ulong rd_addr, uint8_t arch,
int verify)
{
- image_header_t *rd_hdr = (image_header_t *)rd_addr;
+ const image_header_t *rd_hdr = (const image_header_t *)rd_addr;
if (!image_check_magic (rd_hdr)) {
puts ("Bad Magic Number\n");
@@ -628,13 +629,13 @@ int genimg_get_comp_id (const char *name)
*/
int genimg_get_format (void *img_addr)
{
- ulong format = IMAGE_FORMAT_INVALID;
- image_header_t *hdr;
+ ulong format = IMAGE_FORMAT_INVALID;
+ const image_header_t *hdr;
#if defined(CONFIG_FIT) || defined(CONFIG_OF_LIBFDT)
- char *fit_hdr;
+ char *fit_hdr;
#endif
- hdr = (image_header_t *)img_addr;
+ hdr = (const image_header_t *)img_addr;
if (image_check_magic(hdr))
format = IMAGE_FORMAT_LEGACY;
#if defined(CONFIG_FIT) || defined(CONFIG_OF_LIBFDT)
@@ -685,7 +686,7 @@ ulong genimg_get_image (ulong img_addr)
/* get data size */
switch (genimg_get_format ((void *)ram_addr)) {
case IMAGE_FORMAT_LEGACY:
- d_size = image_get_data_size ((image_header_t *)ram_addr);
+ d_size = image_get_data_size ((const image_header_t *)ram_addr);
debug (" Legacy format image found at 0x%08lx, size 0x%08lx\n",
ram_addr, d_size);
break;
@@ -762,7 +763,7 @@ int boot_get_ramdisk (int argc, char *argv[], bootm_headers_t *images,
{
ulong rd_addr, rd_load;
ulong rd_data, rd_len;
- image_header_t *rd_hdr;
+ const image_header_t *rd_hdr;
#if defined(CONFIG_FIT)
void *fit_hdr;
const char *fit_uname_config = NULL;
@@ -1085,9 +1086,9 @@ static void fdt_error (const char *msg)
puts (" - must RESET the board to recover.\n");
}
-static image_header_t *image_get_fdt (ulong fdt_addr)
+static const image_header_t *image_get_fdt (ulong fdt_addr)
{
- image_header_t *fdt_hdr = (image_header_t *)fdt_addr;
+ const image_header_t *fdt_hdr = (const image_header_t *)fdt_addr;
image_print_contents (fdt_hdr);
@@ -1283,8 +1284,8 @@ error:
int boot_get_fdt (int flag, int argc, char *argv[], bootm_headers_t *images,
char **of_flat_tree, ulong *of_size)
{
+ const image_header_t *fdt_hdr;
ulong fdt_addr;
- image_header_t *fdt_hdr;
char *fdt_blob = NULL;
ulong image_start, image_end;
ulong load_start, load_end;
diff --git a/include/image.h b/include/image.h
index beb3a16..a62669f 100644
--- a/include/image.h
+++ b/include/image.h
@@ -333,7 +333,7 @@ static inline uint32_t image_get_header_size (void)
}
#define image_get_hdr_l(f) \
- static inline uint32_t image_get_##f(image_header_t *hdr) \
+ static inline uint32_t image_get_##f(const image_header_t *hdr) \
{ \
return uimage_to_cpu (hdr->ih_##f); \
}
@@ -346,7 +346,7 @@ image_get_hdr_l (ep); /* image_get_ep */
image_get_hdr_l (dcrc); /* image_get_dcrc */
#define image_get_hdr_b(f) \
- static inline uint8_t image_get_##f(image_header_t *hdr) \
+ static inline uint8_t image_get_##f(const image_header_t *hdr) \
{ \
return hdr->ih_##f; \
}
@@ -355,12 +355,12 @@ image_get_hdr_b (arch); /* image_get_arch */
image_get_hdr_b (type); /* image_get_type */
image_get_hdr_b (comp); /* image_get_comp */
-static inline char *image_get_name (image_header_t *hdr)
+static inline char *image_get_name (const image_header_t *hdr)
{
return (char *)hdr->ih_name;
}
-static inline uint32_t image_get_data_size (image_header_t *hdr)
+static inline uint32_t image_get_data_size (const image_header_t *hdr)
{
return image_get_size (hdr);
}
@@ -376,16 +376,16 @@ static inline uint32_t image_get_data_size (image_header_t *hdr)
* returns:
* image payload data start address
*/
-static inline ulong image_get_data (image_header_t *hdr)
+static inline ulong image_get_data (const image_header_t *hdr)
{
return ((ulong)hdr + image_get_header_size ());
}
-static inline uint32_t image_get_image_size (image_header_t *hdr)
+static inline uint32_t image_get_image_size (const image_header_t *hdr)
{
return (image_get_size (hdr) + image_get_header_size ());
}
-static inline ulong image_get_image_end (image_header_t *hdr)
+static inline ulong image_get_image_end (const image_header_t *hdr)
{
return ((ulong)hdr + image_get_image_size (hdr));
}
@@ -418,8 +418,8 @@ static inline void image_set_name (image_header_t *hdr, const char *name)
strncpy (image_get_name (hdr), name, IH_NMLEN);
}
-int image_check_hcrc (image_header_t *hdr);
-int image_check_dcrc (image_header_t *hdr);
+int image_check_hcrc (const image_header_t *hdr);
+int image_check_dcrc (const image_header_t *hdr);
#ifndef USE_HOSTCC
int getenv_yesno (char *var);
ulong getenv_bootm_low(void);
@@ -427,31 +427,31 @@ phys_size_t getenv_bootm_size(void);
void memmove_wd (void *to, void *from, size_t len, ulong chunksz);
#endif
-static inline int image_check_magic (image_header_t *hdr)
+static inline int image_check_magic (const image_header_t *hdr)
{
return (image_get_magic (hdr) == IH_MAGIC);
}
-static inline int image_check_type (image_header_t *hdr, uint8_t type)
+static inline int image_check_type (const image_header_t *hdr, uint8_t type)
{
return (image_get_type (hdr) == type);
}
-static inline int image_check_arch (image_header_t *hdr, uint8_t arch)
+static inline int image_check_arch (const image_header_t *hdr, uint8_t arch)
{
return (image_get_arch (hdr) == arch);
}
-static inline int image_check_os (image_header_t *hdr, uint8_t os)
+static inline int image_check_os (const image_header_t *hdr, uint8_t os)
{
return (image_get_os (hdr) == os);
}
-ulong image_multi_count (image_header_t *hdr);
-void image_multi_getimg (image_header_t *hdr, ulong idx,
+ulong image_multi_count (const image_header_t *hdr);
+void image_multi_getimg (const image_header_t *hdr, ulong idx,
ulong *data, ulong *len);
-void image_print_contents (image_header_t *hdr);
+void image_print_contents (const void *hdr);
#ifndef USE_HOSTCC
-static inline int image_check_target_arch (image_header_t *hdr)
+static inline int image_check_target_arch (const image_header_t *hdr)
{
#if defined(__ARM__)
if (!image_check_arch (hdr, IH_ARCH_ARM))
diff --git a/tools/mkimage.h b/tools/mkimage.h
index a9295b6..1e92825 100644
--- a/tools/mkimage.h
+++ b/tools/mkimage.h
@@ -105,7 +105,7 @@ struct image_type_params {
*/
int (*verify_header) (unsigned char *, int, struct mkimage_params *);
/* Prints image information abstracting from image header */
- void (*print_header) (void *);
+ void (*print_header) (const void *);
/*
* The header or image contents need to be set as per image type to
* be generated using this callback function.
--
1.6.0.6
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [U-Boot] [PATCH "mkimage" branch] tools/mkimage: fix compiler warnings, use "const"
2009-08-19 9:54 [U-Boot] [PATCH "mkimage" branch] tools/mkimage: fix compiler warnings, use "const" Wolfgang Denk
@ 2009-08-20 8:37 ` Prafulla Wadaskar
2009-08-20 9:28 ` Wolfgang Denk
2009-09-10 8:39 ` Wolfgang Denk
1 sibling, 1 reply; 5+ messages in thread
From: Prafulla Wadaskar @ 2009-08-20 8:37 UTC (permalink / raw)
To: u-boot
> -----Original Message-----
> From: u-boot-bounces at lists.denx.de
> [mailto:u-boot-bounces at lists.denx.de] On Behalf Of Wolfgang Denk
> Sent: Wednesday, August 19, 2009 3:24 PM
> To: u-boot at lists.denx.de
> Subject: [U-Boot] [PATCH "mkimage" branch] tools/mkimage: fix
> compiler warnings, use "const"
>
> This fixes some compiler warnings:
> tools/default_image.c:141: warning: initialization from
> incompatible pointer type
> tools/fit_image.c:202: warning: initialization from
> incompatible pointer type
> and changes to code to use "const" attributes in a few places where
> it's appropriate.
Dear Wolfgang
99% of the changes in this patch is to add const attributes.
Can you pls explain here- how useful it is to add const.
Or do it make more sense just to fix the warnings in respective functions?
I have posted a patch for the same
For ex.
Regards..
Prafulla . .
>
> Signed-off-by: Wolfgang Denk <wd@denx.de>
> ---
> common/image.c | 39 ++++++++++++++++++++-------------------
> include/image.h | 34 +++++++++++++++++-----------------
> tools/mkimage.h | 2 +-
> 3 files changed, 38 insertions(+), 37 deletions(-)
>
> diff --git a/common/image.c b/common/image.c
> index e22c974..f3dd647 100644
> --- a/common/image.c
> +++ b/common/image.c
> @@ -65,7 +65,7 @@ extern int do_bdinfo(cmd_tbl_t *cmdtp, int
> flag, int argc, char *argv[]);
>
> DECLARE_GLOBAL_DATA_PTR;
>
> -static image_header_t* image_get_ramdisk (ulong rd_addr,
> uint8_t arch,
> +static const image_header_t* image_get_ramdisk (ulong
> rd_addr, uint8_t arch,
> int verify);
> #else
> #include "mkimage.h"
> @@ -166,7 +166,7 @@ static void genimg_print_time (time_t timestamp);
>
> /*************************************************************
> ****************/
> /* Legacy format routines */
>
> /*************************************************************
> ****************/
> -int image_check_hcrc (image_header_t *hdr)
> +int image_check_hcrc (const image_header_t *hdr)
> {
> ulong hcrc;
> ulong len = image_get_header_size ();
> @@ -181,7 +181,7 @@ int image_check_hcrc (image_header_t *hdr)
> return (hcrc == image_get_hcrc (hdr));
> }
>
> -int image_check_dcrc (image_header_t *hdr)
> +int image_check_dcrc (const image_header_t *hdr)
> {
> ulong data = image_get_data (hdr);
> ulong len = image_get_data_size (hdr);
> @@ -203,7 +203,7 @@ int image_check_dcrc (image_header_t *hdr)
> * returns:
> * number of components
> */
> -ulong image_multi_count (image_header_t *hdr)
> +ulong image_multi_count (const image_header_t *hdr)
> {
> ulong i, count = 0;
> uint32_t *size;
> @@ -236,7 +236,7 @@ ulong image_multi_count (image_header_t *hdr)
> * data address and size of the component, if idx is valid
> * 0 in data and len, if idx is out of range
> */
> -void image_multi_getimg (image_header_t *hdr, ulong idx,
> +void image_multi_getimg (const image_header_t *hdr, ulong idx,
> ulong *data, ulong *len)
> {
> int i;
> @@ -272,7 +272,7 @@ void image_multi_getimg (image_header_t
> *hdr, ulong idx,
> }
> }
>
> -static void image_print_type (image_header_t *hdr)
> +static void image_print_type (const image_header_t *hdr)
> {
> const char *os, *arch, *type, *comp;
>
> @@ -286,7 +286,7 @@ static void image_print_type (image_header_t *hdr)
>
> /**
> * image_print_contents - prints out the contents of the
> legacy format image
> - * @hdr: pointer to the legacy format image header
> + * @ptr: pointer to the legacy format image header
> * @p: pointer to prefix string
> *
> * image_print_contents() formats a multi line legacy image
> contents description.
> @@ -296,8 +296,9 @@ static void image_print_type (image_header_t *hdr)
> * returns:
> * no returned results
> */
> -void image_print_contents (image_header_t *hdr)
> +void image_print_contents (const void *ptr)
> {
> + const image_header_t *hdr = (const image_header_t *)ptr;
> const char *p;
>
> #ifdef USE_HOSTCC
> @@ -363,10 +364,10 @@ void image_print_contents (image_header_t *hdr)
> * pointer to a ramdisk image header, if image was found
> and valid
> * otherwise, return NULL
> */
> -static image_header_t* image_get_ramdisk (ulong rd_addr,
> uint8_t arch,
> +static const image_header_t *image_get_ramdisk (ulong
> rd_addr, uint8_t arch,
> int verify)
> {
> - image_header_t *rd_hdr = (image_header_t *)rd_addr;
> + const image_header_t *rd_hdr = (const image_header_t *)rd_addr;
>
> if (!image_check_magic (rd_hdr)) {
> puts ("Bad Magic Number\n");
> @@ -628,13 +629,13 @@ int genimg_get_comp_id (const char *name)
> */
> int genimg_get_format (void *img_addr)
> {
> - ulong format = IMAGE_FORMAT_INVALID;
> - image_header_t *hdr;
> + ulong format = IMAGE_FORMAT_INVALID;
> + const image_header_t *hdr;
> #if defined(CONFIG_FIT) || defined(CONFIG_OF_LIBFDT)
> - char *fit_hdr;
> + char *fit_hdr;
> #endif
>
> - hdr = (image_header_t *)img_addr;
> + hdr = (const image_header_t *)img_addr;
> if (image_check_magic(hdr))
> format = IMAGE_FORMAT_LEGACY;
> #if defined(CONFIG_FIT) || defined(CONFIG_OF_LIBFDT)
> @@ -685,7 +686,7 @@ ulong genimg_get_image (ulong img_addr)
> /* get data size */
> switch (genimg_get_format ((void *)ram_addr)) {
> case IMAGE_FORMAT_LEGACY:
> - d_size = image_get_data_size
> ((image_header_t *)ram_addr);
> + d_size = image_get_data_size ((const
> image_header_t *)ram_addr);
> debug (" Legacy format image found at
> 0x%08lx, size 0x%08lx\n",
> ram_addr, d_size);
> break;
> @@ -762,7 +763,7 @@ int boot_get_ramdisk (int argc, char
> *argv[], bootm_headers_t *images,
> {
> ulong rd_addr, rd_load;
> ulong rd_data, rd_len;
> - image_header_t *rd_hdr;
> + const image_header_t *rd_hdr;
> #if defined(CONFIG_FIT)
> void *fit_hdr;
> const char *fit_uname_config = NULL;
> @@ -1085,9 +1086,9 @@ static void fdt_error (const char *msg)
> puts (" - must RESET the board to recover.\n");
> }
>
> -static image_header_t *image_get_fdt (ulong fdt_addr)
> +static const image_header_t *image_get_fdt (ulong fdt_addr)
> {
> - image_header_t *fdt_hdr = (image_header_t *)fdt_addr;
> + const image_header_t *fdt_hdr = (const image_header_t
> *)fdt_addr;
>
> image_print_contents (fdt_hdr);
>
> @@ -1283,8 +1284,8 @@ error:
> int boot_get_fdt (int flag, int argc, char *argv[],
> bootm_headers_t *images,
> char **of_flat_tree, ulong *of_size)
> {
> + const image_header_t *fdt_hdr;
> ulong fdt_addr;
> - image_header_t *fdt_hdr;
> char *fdt_blob = NULL;
> ulong image_start, image_end;
> ulong load_start, load_end;
> diff --git a/include/image.h b/include/image.h
> index beb3a16..a62669f 100644
> --- a/include/image.h
> +++ b/include/image.h
> @@ -333,7 +333,7 @@ static inline uint32_t
> image_get_header_size (void)
> }
>
> #define image_get_hdr_l(f) \
> - static inline uint32_t image_get_##f(image_header_t *hdr) \
> + static inline uint32_t image_get_##f(const
> image_header_t *hdr) \
> { \
> return uimage_to_cpu (hdr->ih_##f); \
> }
> @@ -346,7 +346,7 @@ image_get_hdr_l (ep); /*
> image_get_ep */
> image_get_hdr_l (dcrc); /* image_get_dcrc */
>
> #define image_get_hdr_b(f) \
> - static inline uint8_t image_get_##f(image_header_t *hdr) \
> + static inline uint8_t image_get_##f(const image_header_t *hdr) \
> { \
> return hdr->ih_##f; \
> }
> @@ -355,12 +355,12 @@ image_get_hdr_b (arch); /*
> image_get_arch */
> image_get_hdr_b (type); /* image_get_type */
> image_get_hdr_b (comp); /* image_get_comp */
>
> -static inline char *image_get_name (image_header_t *hdr)
> +static inline char *image_get_name (const image_header_t *hdr)
> {
> return (char *)hdr->ih_name;
> }
>
> -static inline uint32_t image_get_data_size (image_header_t *hdr)
> +static inline uint32_t image_get_data_size (const
> image_header_t *hdr)
> {
> return image_get_size (hdr);
> }
> @@ -376,16 +376,16 @@ static inline uint32_t
> image_get_data_size (image_header_t *hdr)
> * returns:
> * image payload data start address
> */
> -static inline ulong image_get_data (image_header_t *hdr)
> +static inline ulong image_get_data (const image_header_t *hdr)
> {
> return ((ulong)hdr + image_get_header_size ());
> }
>
> -static inline uint32_t image_get_image_size (image_header_t *hdr)
> +static inline uint32_t image_get_image_size (const
> image_header_t *hdr)
> {
> return (image_get_size (hdr) + image_get_header_size ());
> }
> -static inline ulong image_get_image_end (image_header_t *hdr)
> +static inline ulong image_get_image_end (const image_header_t *hdr)
> {
> return ((ulong)hdr + image_get_image_size (hdr));
> }
> @@ -418,8 +418,8 @@ static inline void image_set_name
> (image_header_t *hdr, const char *name)
> strncpy (image_get_name (hdr), name, IH_NMLEN);
> }
>
> -int image_check_hcrc (image_header_t *hdr);
> -int image_check_dcrc (image_header_t *hdr);
> +int image_check_hcrc (const image_header_t *hdr);
> +int image_check_dcrc (const image_header_t *hdr);
> #ifndef USE_HOSTCC
> int getenv_yesno (char *var);
> ulong getenv_bootm_low(void);
> @@ -427,31 +427,31 @@ phys_size_t getenv_bootm_size(void);
> void memmove_wd (void *to, void *from, size_t len, ulong chunksz);
> #endif
>
> -static inline int image_check_magic (image_header_t *hdr)
> +static inline int image_check_magic (const image_header_t *hdr)
> {
> return (image_get_magic (hdr) == IH_MAGIC);
> }
> -static inline int image_check_type (image_header_t *hdr,
> uint8_t type)
> +static inline int image_check_type (const image_header_t
> *hdr, uint8_t type)
> {
> return (image_get_type (hdr) == type);
> }
> -static inline int image_check_arch (image_header_t *hdr,
> uint8_t arch)
> +static inline int image_check_arch (const image_header_t
> *hdr, uint8_t arch)
> {
> return (image_get_arch (hdr) == arch);
> }
> -static inline int image_check_os (image_header_t *hdr, uint8_t os)
> +static inline int image_check_os (const image_header_t *hdr,
> uint8_t os)
> {
> return (image_get_os (hdr) == os);
> }
>
> -ulong image_multi_count (image_header_t *hdr);
> -void image_multi_getimg (image_header_t *hdr, ulong idx,
> +ulong image_multi_count (const image_header_t *hdr);
> +void image_multi_getimg (const image_header_t *hdr, ulong idx,
> ulong *data, ulong *len);
>
> -void image_print_contents (image_header_t *hdr);
> +void image_print_contents (const void *hdr);
>
> #ifndef USE_HOSTCC
> -static inline int image_check_target_arch (image_header_t *hdr)
> +static inline int image_check_target_arch (const image_header_t *hdr)
> {
> #if defined(__ARM__)
> if (!image_check_arch (hdr, IH_ARCH_ARM))
> diff --git a/tools/mkimage.h b/tools/mkimage.h
> index a9295b6..1e92825 100644
> --- a/tools/mkimage.h
> +++ b/tools/mkimage.h
> @@ -105,7 +105,7 @@ struct image_type_params {
> */
> int (*verify_header) (unsigned char *, int, struct
> mkimage_params *);
> /* Prints image information abstracting from image header */
> - void (*print_header) (void *);
> + void (*print_header) (const void *);
> /*
> * The header or image contents need to be set as per
> image type to
> * be generated using this callback function.
> --
> 1.6.0.6
>
> _______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> http://lists.denx.de/mailman/listinfo/u-boot
>
^ permalink raw reply [flat|nested] 5+ messages in thread
* [U-Boot] [PATCH "mkimage" branch] tools/mkimage: fix compiler warnings, use "const"
2009-08-20 8:37 ` Prafulla Wadaskar
@ 2009-08-20 9:28 ` Wolfgang Denk
2009-08-20 9:50 ` Prafulla Wadaskar
0 siblings, 1 reply; 5+ messages in thread
From: Wolfgang Denk @ 2009-08-20 9:28 UTC (permalink / raw)
To: u-boot
Dear Prafulla,
In message <73173D32E9439E4ABB5151606C3E19E202E3915996@SC-VEXCH1.marvell.com> you wrote:
>
> > This fixes some compiler warnings:
> > tools/default_image.c:141: warning: initialization from
> > incompatible pointer type
> > tools/fit_image.c:202: warning: initialization from
> > incompatible pointer type
> > and changes to code to use "const" attributes in a few places where
> > it's appropriate.
>
> 99% of the changes in this patch is to add const attributes.
Yes, indeed.
> Can you pls explain here- how useful it is to add const.
Well, adding "const" where appropriate is definitely a good thing, as
it const augments data-hiding and encapsulation and allows the
compiler to check for (and prevent!) unintended modification of data
structures, i. e. for programming errors. Also, it helps the compiler
for better optimization.
> Or do it make more sense just to fix the warnings in respective functions?
> I have posted a patch for the same
I did not see any patch form you addressing these warnings?
My "const"-adding patch was the more or less direct result of getting
rid of the warnings without using additional type casts.
I think using const is a good thing. I am aware that it sometimes
becomes painful, and some consider it a waste of time.
Best regards,
Wolfgang Denk
--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
God made machine language; all the rest is the work of man.
^ permalink raw reply [flat|nested] 5+ messages in thread
* [U-Boot] [PATCH "mkimage" branch] tools/mkimage: fix compiler warnings, use "const"
2009-08-20 9:28 ` Wolfgang Denk
@ 2009-08-20 9:50 ` Prafulla Wadaskar
0 siblings, 0 replies; 5+ messages in thread
From: Prafulla Wadaskar @ 2009-08-20 9:50 UTC (permalink / raw)
To: u-boot
> -----Original Message-----
> From: Wolfgang Denk [mailto:wd at denx.de]
> Sent: Thursday, August 20, 2009 2:58 PM
> To: Prafulla Wadaskar
> Cc: u-boot at lists.denx.de
> Subject: Re: [U-Boot] [PATCH "mkimage" branch] tools/mkimage:
> fix compiler warnings, use "const"
>
> Dear Prafulla,
>
> In message
> <73173D32E9439E4ABB5151606C3E19E202E3915996@SC-VEXCH1.marvell.
> com> you wrote:
> >
> > > This fixes some compiler warnings:
> > > tools/default_image.c:141: warning: initialization from
> > > incompatible pointer type
> > > tools/fit_image.c:202: warning: initialization from
> > > incompatible pointer type
> > > and changes to code to use "const" attributes in a few
> places where
> > > it's appropriate.
> >
> > 99% of the changes in this patch is to add const attributes.
>
> Yes, indeed.
>
> > Can you pls explain here- how useful it is to add const.
>
> Well, adding "const" where appropriate is definitely a good thing, as
> it const augments data-hiding and encapsulation and allows the
> compiler to check for (and prevent!) unintended modification of data
> structures, i. e. for programming errors. Also, it helps the compiler
> for better optimization.
Ack
>
> > Or do it make more sense just to fix the warnings in
> respective functions?
> > I have posted a patch for the same
>
> I did not see any patch form you addressing these warnings?
It's in my mailq :-(, I will repost it just FYI
Regards..
Prafulla . .
^ permalink raw reply [flat|nested] 5+ messages in thread
* [U-Boot] [PATCH "mkimage" branch] tools/mkimage: fix compiler warnings, use "const"
2009-08-19 9:54 [U-Boot] [PATCH "mkimage" branch] tools/mkimage: fix compiler warnings, use "const" Wolfgang Denk
2009-08-20 8:37 ` Prafulla Wadaskar
@ 2009-09-10 8:39 ` Wolfgang Denk
1 sibling, 0 replies; 5+ messages in thread
From: Wolfgang Denk @ 2009-09-10 8:39 UTC (permalink / raw)
To: u-boot
In message <1250675656-12022-1-git-send-email-wd@denx.de> you wrote:
> This fixes some compiler warnings:
> tools/default_image.c:141: warning: initialization from incompatible pointer type
> tools/fit_image.c:202: warning: initialization from incompatible pointer type
> and changes to code to use "const" attributes in a few places where
> it's appropriate.
>
> Signed-off-by: Wolfgang Denk <wd@denx.de>
> ---
> common/image.c | 39 ++++++++++++++++++++-------------------
> include/image.h | 34 +++++++++++++++++-----------------
> tools/mkimage.h | 2 +-
> 3 files changed, 38 insertions(+), 37 deletions(-)
Applied to "mkimage" branch.
Best regards,
Wolfgang Denk
--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
Technology is dominated by those who manage what they do not under-
stand.
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2009-09-10 8:39 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-08-19 9:54 [U-Boot] [PATCH "mkimage" branch] tools/mkimage: fix compiler warnings, use "const" Wolfgang Denk
2009-08-20 8:37 ` Prafulla Wadaskar
2009-08-20 9:28 ` Wolfgang Denk
2009-08-20 9:50 ` Prafulla Wadaskar
2009-09-10 8:39 ` Wolfgang Denk
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox