Re: [PATCH 2/2] Work around gcc bug #492973

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, 2009-03-30 at 14:25 -1000, David Cantrell wrote:
> Problem with -O2 and some string functions with the latest version of
> gcc in rawhide.  Work around the problem for now so we can compile,
> ideally we can revert this patch in the future.

Ugly, but not your fault. Ack.

> 
> gcc bug:
> https://bugzilla.redhat.com/show_bug.cgi?id=492973
> ---
>  isys/eddsupport.c   |    2 +-
>  loader/copy.c       |    2 +-
>  loader/dirbrowser.c |    4 ++--
>  loader/fwloader.c   |    2 +-
>  loader/getparts.c   |    2 +-
>  loader/loader.c     |    2 +-
>  loader/net.c        |    2 +-
>  loader/nfsinstall.c |    2 +-
>  loader/undomounts.c |    4 ++--
>  loader/urls.c       |    2 +-
>  10 files changed, 12 insertions(+), 12 deletions(-)
> 
> diff --git a/isys/eddsupport.c b/isys/eddsupport.c
> index ae974c5..242021a 100644
> --- a/isys/eddsupport.c
> +++ b/isys/eddsupport.c
> @@ -168,7 +168,7 @@ static int mapBiosDisks(struct device** devices,const char *path) {
>      }
>  
>      while ((entry = readdir(dirHandle)) != NULL) {
> -        if(!strncmp(entry->d_name,".",1) || !strncmp(entry->d_name,"..",2)) {
> +        if(!(strncmp)(entry->d_name,".",1) || !(strncmp)(entry->d_name,"..",2)) {
>              continue;
>          }
>          ret = sscanf((entry->d_name+9), "%x", &biosNum);
> diff --git a/loader/copy.c b/loader/copy.c
> index 1c61233..3a7a0c7 100644
> --- a/loader/copy.c
> +++ b/loader/copy.c
> @@ -63,7 +63,7 @@ int copyDirectory(char * from, char * to, void (*warnFn)(char *),
>  
>      errno = 0;
>      while ((ent = readdir(dir))) {
> -        if (!strcmp(ent->d_name, ".") || !strcmp(ent->d_name, ".."))
> +        if (!(strcmp)(ent->d_name, ".") || !(strcmp)(ent->d_name, ".."))
>             continue;
>  
>          sprintf(filespec, "%s/%s", from, ent->d_name);
> diff --git a/loader/dirbrowser.c b/loader/dirbrowser.c
> index 6c713ec..eb10c5d 100644
> --- a/loader/dirbrowser.c
> +++ b/loader/dirbrowser.c
> @@ -83,9 +83,9 @@ static char ** get_file_list(char * dirname,
>      files = malloc(numfiles * sizeof(char *));
>  
>      while ((entry = readdir(dir))) {
> -        if ((strlen(entry->d_name) == 1) && !strncmp(entry->d_name, ".", 1))
> +        if ((strlen(entry->d_name) == 1) && !(strncmp)(entry->d_name, ".", 1))
>              continue;
> -        if ((strlen(entry->d_name) == 2) && !strncmp(entry->d_name, "..", 2))
> +        if ((strlen(entry->d_name) == 2) && !(strncmp)(entry->d_name, "..", 2))
>              continue;
>          if (filterfunc && filterfunc(dirname, entry))
>              continue;
> diff --git a/loader/fwloader.c b/loader/fwloader.c
> index 2ab8c7f..f4fac38 100644
> --- a/loader/fwloader.c
> +++ b/loader/fwloader.c
> @@ -209,7 +209,7 @@ static int get_netlink_msg(struct fw_loader *fwl, struct uevent *uevent)
>          size = sizeof (buffer) - 1;
>      buffer[size] = '\0';
>  
> -    len = strcspn(buffer, "@");
> +    len = (strcspn)(buffer, "@");
>      if (!buffer[len])
>          return -1;
>  
> diff --git a/loader/getparts.c b/loader/getparts.c
> index 8d2b7c4..6907229 100644
> --- a/loader/getparts.c
> +++ b/loader/getparts.c
> @@ -94,7 +94,7 @@ char **getPartitionsList(char * disk) {
>  			break;
>  		} else if (toknum == 2) {
>  		    /* if size is exactly 1 then ignore it as an extended */
> -		    if (!strcmp(b, "1"))
> +		    if (!(strcmp)(b, "1"))
>  			break;
>  		} else if (toknum == 3) {
>  		    /* this should be the partition name */
> diff --git a/loader/loader.c b/loader/loader.c
> index 98ea24c..019b2d7 100644
> --- a/loader/loader.c
> +++ b/loader/loader.c
> @@ -2082,7 +2082,7 @@ int main(int argc, char ** argv) {
>  
>      path = getenv("PATH");
>      while (path && path[0]) {
> -        int n = strcspn(path, ":");
> +        int n = (strcspn)(path, ":");
>          char c, *binpath;
>  
>          c = path[n];
> diff --git a/loader/net.c b/loader/net.c
> index 3a3fae9..3da4f1e 100644
> --- a/loader/net.c
> +++ b/loader/net.c
> @@ -86,7 +86,7 @@ static void cidrCallback(newtComponent co, void * dptr) {
>              abort();
>          }
>  
> -        if (strcmp(data->ipv4, ""))
> +        if ((strcmp)(data->ipv4, ""))
>              upper = 32;
>  #ifdef ENABLE_IPV6
>      } else if (co == data->cidr6Entry) {
> diff --git a/loader/nfsinstall.c b/loader/nfsinstall.c
> index 1a81547..d15e7a6 100644
> --- a/loader/nfsinstall.c
> +++ b/loader/nfsinstall.c
> @@ -89,7 +89,7 @@ static int nfsGetSetup(char ** hostptr, char ** dirptr) {
>      do {
>          rc = newtWinEntries(_("NFS Setup"), buf, 60, 5, 15,
>                              24, entries, _("OK"), _("Back"), NULL);
> -    } while (!strcmp(newServer, "") || !strcmp(newDir, ""));
> +    } while (!(strcmp)(newServer, "") || !(strcmp)(newDir, ""));
>  
>      free(buf);
>      free(entries[1].text);
> diff --git a/loader/undomounts.c b/loader/undomounts.c
> index 1884ce6..798bf11 100644
> --- a/loader/undomounts.c
> +++ b/loader/undomounts.c
> @@ -156,8 +156,8 @@ void unmountFilesystems(void) {
>  	while (*chptr != ' ') chptr++;
>  	*chptr++ = '\0';
>  
> -	if (strcmp(start, "/") && strcmp(start, "/tmp") && 
> -            strcmp(start, "/dev")) {
> +	if ((strcmp)(start, "/") && (strcmp)(start, "/tmp") && 
> +            (strcmp)(start, "/dev")) {
>  	    filesystems[numFilesystems].name = strdup(start);
>  	    filesystems[numFilesystems].what = FS;
>  	    filesystems[numFilesystems].mounted = 1;
> diff --git a/loader/urls.c b/loader/urls.c
> index a46e034..9158fa8 100644
> --- a/loader/urls.c
> +++ b/loader/urls.c
> @@ -136,7 +136,7 @@ static char * getLoginName(char * login, struct iurlinfo *ui) {
>  char *convertUIToURL(struct iurlinfo *ui) {
>      char *login, *finalPrefix, *url, *p;
>  
> -    if (!strcmp(ui->prefix, "/"))
> +    if (!(strcmp)(ui->prefix, "/"))
>  	finalPrefix = "/.";
>      else
>  	finalPrefix = ui->prefix;

_______________________________________________
Anaconda-devel-list mailing list
Anaconda-devel-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/anaconda-devel-list

[Index of Archives]     [Kickstart]     [Fedora Users]     [Fedora Legacy List]     [Fedora Maintainers]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [Yosemite Photos]     [KDE Users]     [Fedora Tools]
  Powered by Linux