Bug 556543 – reduce compiler warnings
authorTommi Komulainen <tommi.komulainen@iki.fi>
Thu, 16 Oct 2008 17:07:05 +0000 (17:07 +0000)
committerTommi Komulainen <tko@src.gnome.org>
Thu, 16 Oct 2008 17:07:05 +0000 (17:07 +0000)
2008-10-16  Tommi Komulainen  <tommi.komulainen@iki.fi>

Bug 556543 – reduce compiler warnings

* girepository/ginfo.c:
* girepository/girepository.c (register_internal,
count_interfaces, find_interface, find_namespace_version,
parse_version, g_irepository_require):
* girepository/girmodule.c (g_ir_module_build_typelib):
* girepository/girnode.c (init_stats, dump_stats,
_g_irnode_init_stats, _g_irnode_dump_stats,
g_ir_node_can_have_member):
* girepository/girparser.c (firstpass_end_element_handler,
locate_gir, parse_basic, parse_type_internal, resolve_aliases,
start_alias, start_type, end_type_top, parse_include, cleanup,
post_filter):
* girepository/gtypelib.c (validate_function_blob, validate_enum_blob):
* giscanner/giscannermodule.c (directive_get_options,
type_get_child_list):
* giscanner/scannerlexer.l (parse_gtkdoc):
* giscanner/scannerparser.y (ctype_free):
* giscanner/sourcescanner.c:
* giscanner/sourcescanner.h (gi_source_scanner_parse_macros):
* tests/types/gitesttypes.c:
* tools/compiler.c (main):
* tools/generate.c (write_repository): Remove unused variables
and code, add missing includes, declarations and case
statements.

svn path=/trunk/; revision=730

15 files changed:
ChangeLog
girepository/ginfo.c
girepository/girepository.c
girepository/girmodule.c
girepository/girnode.c
girepository/girparser.c
girepository/gtypelib.c
giscanner/giscannermodule.c
giscanner/scannerlexer.l
giscanner/scannerparser.y
giscanner/sourcescanner.c
giscanner/sourcescanner.h
tests/types/gitesttypes.c
tools/compiler.c
tools/generate.c

index 896a014..0849aac 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,34 @@
 2008-10-16  Tommi Komulainen  <tommi.komulainen@iki.fi>
 
+       Bug 556543 – reduce compiler warnings
+
+       * girepository/ginfo.c:
+       * girepository/girepository.c (register_internal,
+       count_interfaces, find_interface, find_namespace_version,
+       parse_version, g_irepository_require):
+       * girepository/girmodule.c (g_ir_module_build_typelib):
+       * girepository/girnode.c (init_stats, dump_stats,
+       _g_irnode_init_stats, _g_irnode_dump_stats,
+       g_ir_node_can_have_member):
+       * girepository/girparser.c (firstpass_end_element_handler,
+       locate_gir, parse_basic, parse_type_internal, resolve_aliases,
+       start_alias, start_type, end_type_top, parse_include, cleanup,
+       post_filter):
+       * girepository/gtypelib.c (validate_function_blob, validate_enum_blob):
+       * giscanner/giscannermodule.c (directive_get_options,
+       type_get_child_list):
+       * giscanner/scannerlexer.l (parse_gtkdoc):
+       * giscanner/scannerparser.y (ctype_free):
+       * giscanner/sourcescanner.c:
+       * giscanner/sourcescanner.h (gi_source_scanner_parse_macros):
+       * tests/types/gitesttypes.c:
+       * tools/compiler.c (main):
+       * tools/generate.c (write_repository): Remove unused variables
+       and code, add missing includes, declarations and case
+       statements.
+
+2008-10-16  Tommi Komulainen  <tommi.komulainen@iki.fi>
+
        Bug 556541 – access union members through UnionBlob rather than
        StructBlob
 
index 86e2ed6..ccb1760 100644 (file)
@@ -19,6 +19,7 @@
  */
 
 #include <stdlib.h>
+#include <string.h>
 
 #include <glib.h>
 #include <glib-object.h>
index 04c32c3..286417d 100644 (file)
@@ -23,6 +23,7 @@
 
 #include <stdio.h>
 #include <string.h>
+#include <stdlib.h>
 
 #include <glib.h>
 #include <glib/gprintf.h>
@@ -261,8 +262,6 @@ register_internal (GIRepository *repository,
   Header *header;
   const gchar *namespace;
   const gchar *version;
-  gboolean was_loaded;
-  gboolean currently_lazy;
 
   g_return_val_if_fail (typelib != NULL, FALSE);
   
@@ -418,17 +417,6 @@ g_irepository_get_default (void)
   return get_repository (NULL);
 }
 
-static void 
-count_interfaces (gpointer key,
-                 gpointer value,
-                 gpointer data)
-{
-  guchar *typelib = ((GTypelib *) value)->data;
-  gint *n_interfaces = (gint *)data;
-  
-  *n_interfaces += ((Header *)typelib)->n_local_entries;
-}
-
 /**
  * g_irepository_get_n_infos
  * @repository: A #GIRepository, may be %NULL for the default
@@ -478,7 +466,6 @@ find_interface (gpointer key,
   IfaceData *iface_data = (IfaceData *)data;
   gint index;
   gint n_entries;
-  guint32 offset;
   const gchar *name;
   const gchar *type;
   DirEntry *entry;    
@@ -804,7 +791,6 @@ find_namespace_version (const gchar  *namespace,
 
   for (ldir = search_path; ldir; ldir = ldir->next)
     {
-      Header *header;
       char *path = g_build_filename (ldir->data, fname, NULL);
       
       mfile = g_mapped_file_new (path, FALSE, &error);
@@ -827,7 +813,7 @@ parse_version (const char *version,
               int *minor)
 {
   const char *dot;
-  const char *end;
+  char *end;
 
   *major = strtol (version, &end, 10);
   dot = strchr (version, '.');
@@ -1012,15 +998,11 @@ g_irepository_require (GIRepository  *repository,
                       GIRepositoryLoadFlags flags,
                       GError       **error)
 {
-  const char *dir;
   GMappedFile *mfile;
   gboolean ret = FALSE;
-  GError *error1 = NULL;
   Header *header;
   GTypelib *typelib = NULL;
-  const gchar *typelib_namespace, *typelib_version, *shlib_fname;
-  GModule *module;
-  guint32 shlib;
+  const gchar *typelib_namespace, *typelib_version;
   gboolean allow_lazy = (flags & G_IREPOSITORY_LOAD_FLAG_LAZY) > 0;
   gboolean is_lazy;
   char *version_conflict = NULL;
@@ -1056,7 +1038,6 @@ g_irepository_require (GIRepository  *repository,
   
   if (mfile == NULL)
     {
-      const char *error_fmt;
       if (version != NULL)
        g_set_error (error, G_IREPOSITORY_ERROR,
                     G_IREPOSITORY_ERROR_TYPELIB_NOT_FOUND,
index ad0ecf5..382d186 100644 (file)
@@ -24,6 +24,9 @@
 #include "girmodule.h"
 #include "girnode.h"
 
+void _g_irnode_init_stats (void);
+void _g_irnode_dump_stats (void);
+
 #define ALIGN_VALUE(this, boundary) \
   (( ((unsigned long)(this)) + (((unsigned long)(boundary)) -1)) & (~(((unsigned long)(boundary))-1)))
 
@@ -111,7 +114,7 @@ g_ir_module_build_typelib (GIrModule  *module,
   }
 
  restart:
-  init_stats ();
+  _g_irnode_init_stats ();
   strings = g_hash_table_new (g_str_hash, g_str_equal);
   types = g_hash_table_new (g_str_hash, g_str_equal);
   n_entries = g_list_length (module->entries);
@@ -243,7 +246,7 @@ g_ir_module_build_typelib (GIrModule  *module,
       entry++;
     }
 
-  dump_stats ();
+  _g_irnode_dump_stats ();
 
   header->annotations = offset2;
   
index 9294652..f4f337a 100644 (file)
@@ -34,7 +34,7 @@ static gulong types_count = 0;
 static gulong unique_types_count = 0;
 
 void
-init_stats (void)
+_g_irnode_init_stats (void)
 {
   string_count = 0;
   unique_string_count = 0;
@@ -45,7 +45,7 @@ init_stats (void)
 }
 
 void
-dump_stats (void)
+_g_irnode_dump_stats (void)
 {
   g_message ("%lu strings (%lu before sharing), %lu bytes (%lu before sharing)",
             unique_string_count, string_count, unique_string_size, string_size);
@@ -870,6 +870,25 @@ g_ir_node_can_have_member (GIrNode    *node)
     case G_IR_NODE_STRUCT:
     case G_IR_NODE_UNION:
       return TRUE;
+    /* list others individually rather than with default: so that compiler
+     * warns if new node types are added without adding them to the switch
+     */
+    case G_IR_NODE_INVALID:
+    case G_IR_NODE_FUNCTION:
+    case G_IR_NODE_CALLBACK:
+    case G_IR_NODE_ENUM:
+    case G_IR_NODE_FLAGS:
+    case G_IR_NODE_CONSTANT:
+    case G_IR_NODE_ERROR_DOMAIN:
+    case G_IR_NODE_PARAM:
+    case G_IR_NODE_TYPE:
+    case G_IR_NODE_PROPERTY:
+    case G_IR_NODE_SIGNAL:
+    case G_IR_NODE_VALUE:
+    case G_IR_NODE_VFUNC:
+    case G_IR_NODE_FIELD:
+    case G_IR_NODE_XREF:
+      return FALSE;
     };
   return FALSE;
 }
index 0b9e619..249aa1b 100644 (file)
@@ -116,8 +116,6 @@ firstpass_end_element_handler (GMarkupParseContext *context,
                               gpointer             user_data,
                               GError             **error)
 {
-  ParseContext *ctx = user_data;
-
 }
 
 static GMarkupParser firstpass_parser = 
@@ -136,8 +134,6 @@ locate_gir (const char *name, const char *version, const char * const* extra_pat
   const gchar *const *dir;
   char *girname;
   char *path = NULL;
-  GSList *link;
-  gboolean firstpass = TRUE;
       
   datadirs = g_get_system_data_dirs ();
       
@@ -267,9 +263,6 @@ parse_basic (const char *str)
 {
   gint i;
   gint n_basic = G_N_ELEMENTS (basic_types);
-  gchar *temporary_type = NULL;
-  const gchar *start;
-  const gchar *end;
   
   for (i = 0; i < n_basic; i++)
     {
@@ -414,7 +407,7 @@ parse_type_internal (const gchar *str, char **next, gboolean in_glib,
   g_free (temporary_type);
   return type;
 
- error:
+/* error: */
   g_ir_node_free ((GIrNode *)type);
   g_free (temporary_type);  
   return NULL;
@@ -430,7 +423,7 @@ resolve_aliases (ParseContext *ctx, const gchar *type)
   seen_values = g_slist_prepend (seen_values, (char*)type);
   while (g_hash_table_lookup_extended (ctx->aliases, type, &orig, &value))
     {
-      g_debug ("Resolved: %s => %s", type, value);
+      g_debug ("Resolved: %s => %s", type, (char*)value);
       type = value;
       if (g_slist_find_custom (seen_values, type,
                               (GCompareFunc)strcmp) != NULL)
@@ -444,11 +437,9 @@ resolve_aliases (ParseContext *ctx, const gchar *type)
 static GIrNodeType *
 parse_type (ParseContext *ctx, const gchar *type)
 {
-  gchar *str;
   GIrNodeType *node;
   const BasicTypeInfo *basic;
   gboolean in_glib, in_gobject;
-  gboolean matched_special = FALSE;
 
   in_glib = strcmp (ctx->namespace, "GLib") == 0;
   in_gobject = strcmp (ctx->namespace, "GObject") == 0;
@@ -944,7 +935,6 @@ start_alias (GMarkupParseContext *context,
 {
   const gchar *name;
   const gchar *target;
-  const gchar *type;
   char *key;
   char *value;
 
@@ -1474,6 +1464,28 @@ start_type (GMarkupParseContext *context,
                vfunc->is_varargs = TRUE;
              }
              break;
+           /* list others individually rather than with default: so that compiler
+            * warns if new node types are added without adding them to the switch
+            */
+           case G_IR_NODE_INVALID:
+           case G_IR_NODE_ENUM:
+           case G_IR_NODE_FLAGS:
+           case G_IR_NODE_CONSTANT:
+           case G_IR_NODE_ERROR_DOMAIN:
+           case G_IR_NODE_PARAM:
+           case G_IR_NODE_TYPE:
+           case G_IR_NODE_PROPERTY:
+           case G_IR_NODE_SIGNAL:
+           case G_IR_NODE_VALUE:
+           case G_IR_NODE_FIELD:
+           case G_IR_NODE_XREF:
+           case G_IR_NODE_STRUCT:
+           case G_IR_NODE_BOXED:
+           case G_IR_NODE_OBJECT:
+           case G_IR_NODE_INTERFACE:
+           case G_IR_NODE_UNION:
+             g_assert_not_reached ();
+             break;
            }
        }
       ctx->type_stack = NULL;
@@ -1496,7 +1508,6 @@ start_type (GMarkupParseContext *context,
     {
       const char *zero;
       const char *len;
-      int i;
 
       typenode = (GIrNodeType *)g_ir_node_new (G_IR_NODE_TYPE);
 
@@ -1604,7 +1615,6 @@ end_type_top (ParseContext *ctx)
 static void
 end_type_recurse (ParseContext *ctx)
 {
-  GList *types;
   GIrNodeType *parent;
   GIrNodeType *param = NULL;
 
@@ -2051,7 +2061,6 @@ parse_include (GMarkupParseContext *context,
               GError             **error)
 {
   ParseContext sub_ctx = { 0 };
-  GMarkupParseContext *sub_context;
   gchar *buffer;
   gsize length;
   char *girpath;
@@ -2748,7 +2757,6 @@ cleanup (GMarkupParseContext *context,
 {
   ParseContext *ctx = user_data;
   GList *m;
-  int line_number, char_number;
 
   for (m = ctx->modules; m; m = m->next)
     g_ir_module_free (m->data);
@@ -2800,7 +2808,6 @@ post_filter (GIrModule *module)
   iter = module->entries;
   while (iter)
     {
-      GList *link = iter;
       GIrNode *node = iter->data;
 
       iter = iter->next;
index 7a7a31f..1d35983 100644 (file)
@@ -808,7 +808,6 @@ validate_function_blob (ValidateContext *ctx,
                                                           blob->signature,
                                                           error);
       InterfaceTypeBlob *iface_type;
-      InterfaceBlob *iface;
 
       if (!simple)
        return FALSE;
@@ -1281,8 +1280,7 @@ validate_enum_blob (ValidateContext *ctx,
 {
   GTypelib *typelib = ctx->typelib;
   EnumBlob *blob;
-  ValueBlob *v1, *v2;
-  gint i, j; 
+  gint i;
 
   if (typelib->len < offset + sizeof (EnumBlob))
     {
index e33b597..3f21bb1 100644 (file)
@@ -126,7 +126,7 @@ static PyObject *
 directive_get_options (PyGISourceDirective *self,
                       void                *context)
 {
-  GSList *l, *symbols;
+  GSList *l;
   PyObject *list;
   int i = 0;
 
@@ -327,7 +327,7 @@ static PyObject *
 type_get_child_list (PyGISourceType *self,
                     void           *context)
 {
-  GList *l, *symbols;
+  GList *l;
   PyObject *list;
   int i = 0;
 
index dd02cb4..9bda1cc 100644 (file)
@@ -252,7 +252,6 @@ parse_gtkdoc (GISourceScanner *scanner,
           char *ptr = g_strdup (parts[1]);
          char *start;
          char *end;
-         char **option_parts, **option_part;
 
          options = NULL;
          start = strchr (ptr, '(');
index 69d39a5..21151bd 100644 (file)
@@ -43,6 +43,8 @@ extern char *yytext;
 extern int yylex (GISourceScanner *scanner);
 static void yyerror (GISourceScanner *scanner, const char *str);
  
+extern void ctype_free (GISourceType * type);
+
 static int last_enum_value = -1;
 static GHashTable *const_table = NULL;
 %}
index 34cb57f..ebdcf0d 100644 (file)
@@ -21,6 +21,7 @@
  */
 
 #include "sourcescanner.h"
+#include <string.h>
 
 GISourceSymbol *
 gi_source_symbol_new (GISourceSymbolType type)
index 3e2aacd..9ba8c52 100644 (file)
@@ -143,6 +143,8 @@ gboolean            gi_source_scanner_lex_filename     (GISourceScanner  *igener
                                                        const gchar      *filename);
 gboolean            gi_source_scanner_parse_file       (GISourceScanner  *igenerator,
                                                        FILE             *file);
+void                gi_source_scanner_parse_macros     (GISourceScanner  *scanner,
+                                                       GList            *filenames);
 void                gi_source_scanner_set_macro_scan   (GISourceScanner  *scanner,
                                                        gboolean          macro_scan);
 GSList *            gi_source_scanner_get_symbols      (GISourceScanner  *scanner);
index b172715..89b45c1 100644 (file)
@@ -1,5 +1,6 @@
 
 #include <gitesttypes.h>
+#include <string.h>
 
 /* basic types */
 gboolean test_boolean (gboolean in)
index 6af0a89..50ba37e 100644 (file)
@@ -169,7 +169,7 @@ main (int argc, char ** argv)
 {
   GOptionContext *context;
   GError *error = NULL;
-  GList *c, *m, *modules; 
+  GList *m, *modules;
   gint i;
   g_typelib_check_sanity ();
 
index 74dd41a..0e286fb 100644 (file)
@@ -1121,7 +1121,6 @@ write_repository (const char   *namespace,
                  gboolean      needs_prefix)
 {
   FILE *ofile;
-  gchar *ns;
   gint i, j;
   char **dependencies;
   GIRepository *repository;