Avoid dumb casts
authorPanu Matilainen <pmatilai@redhat.com>
Wed, 20 Aug 2008 09:01:38 +0000 (12:01 +0300)
committerPanu Matilainen <pmatilai@redhat.com>
Tue, 2 Sep 2008 06:42:32 +0000 (09:42 +0300)
- switch-case on rpmTag enum makes gcc go crazy without a default case

build/rpmfc.c
build/spec.c

index 6f15b2c..94fb68e 100644 (file)
@@ -314,13 +314,15 @@ static char * rpmfcFileDep(int ix, rpmds ds)
 
     assert(tagN == RPMTAG_PROVIDENAME || tagN == RPMTAG_REQUIRENAME);
 
-    switch ((rpm_tag_t) tagN) {
+    switch (tagN) {
     case RPMTAG_PROVIDENAME:
        deptype = 'P';
        break;
     case RPMTAG_REQUIRENAME:
        deptype = 'R';
        break;
+    default: /* can't happen */
+       break;
     }
 
     rasprintf(&buf, "%08d%c %s %s 0x%08x", ix, deptype,
index b8bdb33..76b22a2 100644 (file)
@@ -252,7 +252,7 @@ int addSource(rpmSpec spec, Package pkg, const char *field, rpmTag tag)
     char *buf = NULL;
     uint32_t num = 0;
 
-    switch ((rpm_tag_t) tag) {
+    switch (tag) {
       case RPMTAG_SOURCE:
        flag = RPMBUILD_ISSOURCE;
        name = "source";
@@ -267,6 +267,9 @@ int addSource(rpmSpec spec, Package pkg, const char *field, rpmTag tag)
        flag = RPMBUILD_ISICON;
        fieldp = NULL;
        break;
+      default:
+       return -1;
+       break;
     }
 
     /* Get the number */