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

Bug#596089: marked as done (unblock: anjuta/2.30.2.1-1)



Your message dated Thu, 9 Sep 2010 17:34:25 +0200
with message-id <20100909153425.GM2676@radis.liafa.jussieu.fr>
and subject line Re: Bug#596089: unblock: anjuta/2.30.2.1-1
has caused the Debian Bug report #596089,
regarding unblock: anjuta/2.30.2.1-1
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
596089: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=596089
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Package: release.debian.org
Severity: normal
User: release.debian.org@packages.debian.org
Usertags: freeze-exception

anjuta (2:2.30.2.1-1) unstable; urgency=low
 .
   * New upstream release.
   * Remove b0rked GConf schema in clean target. Closes: #577719.

The upstream changes are only bug fixes and translation updates:

        Anjuta 2.30.2.1 "Bye, bye Sourceforge.net" (21 June 2010) -- Johannes Schmid
        
        Bugs fixed:
        libanjuta: bgo#620664  - Drag and drop of multiple source files
        language-support-cpp-java: Support more vim modelines
        
        Anjuta 2.30.2 "Javascript isn't an island at all" (5 June 2010) -- Johannes Schmid
        
        Bugs fixed:
        language-support-cpp-java: bgo#618955  - Smart brace completion is no longer smart
        language-support-cpp-java: bgo#618314  - Anjuta crash on while editing
        message-view: Remove tab position preferences and give colors better defaults
        file-wizard: #616810 Error when creating new c source and header
        language-support-js: bgo#617734 - Load/Unload the plugin properly when a .js file is open
        document-manager: fixed bgo #616739 - doesn't open .ui files, neither in xml mode
        anjuta-tags: bgo #616780. Handle more cases.
        anjuta-tags: bgo #616780 - Wrong return type recognition
        anjuta: Add APR_UTILS to subversion CFLAGS and LIBS (bgo#617149)

The diff for non-{documentation,translation} files is attached. The
large changes in ctags-visitor.c are caused by it being autogenerated
from vala.

Cheers,
-- 
 .''`.
: :' :     “You would need to ask a lawyer if you don't know
`. `'       that a handshake of course makes a valid contract.”
  `-        --  J???rg Schilling
--- anjuta-2.30.1.0/libanjuta/anjuta-utils.c	2010-04-11 15:20:49.000000000 +0200
+++ anjuta-2.30.2.1/libanjuta/anjuta-utils.c	2010-06-21 19:47:10.000000000 +0200
@@ -2313,7 +2313,7 @@ anjuta_utils_drop_get_files (GtkSelectio
 
 	for (i = 0; uris[i] != NULL; i++)
 	{
-		GFile* file = g_file_new_for_commandline_arg (uris[0]);
+		GFile* file = g_file_new_for_uri (uris[i]);
 		files = g_slist_append(files, file);
 	}
 
--- anjuta-2.30.1.0/libanjuta/anjuta-version.h	2010-04-27 18:02:26.000000000 +0200
+++ anjuta-2.30.2.1/libanjuta/anjuta-version.h	2010-06-21 19:48:02.000000000 +0200
@@ -47,14 +47,14 @@
  *
  * Anjuta micro version component (e.g. 3 if %LIBANJUTA_VERSION is 1.2.3)
  */
-#define LIBANJUTA_MICRO_VERSION			(1)
+#define LIBANJUTA_MICRO_VERSION			(2)
 
 /**
  * LIBANJUTA_VERSION
  *
  * Anjuta version.
  */
-#define LIBANJUTA_VERSION					(2.30.1.0)
+#define LIBANJUTA_VERSION					(2.30.2.1)
 
 /**
  * LIBANJUTA_VERSION_S:
@@ -62,7 +62,7 @@
  * Anjuta version, encoded as a string, useful for printing and
  * concatenation.
  */
-#define LIBANJUTA_VERSION_S				"2.30.1.0"
+#define LIBANJUTA_VERSION_S				"2.30.2.1"
 
 /**
  * LIBANJUTA_VERSION_HEX:
--- anjuta-2.30.1.0/plugins/file-wizard/file.c	2010-04-11 15:20:49.000000000 +0200
+++ anjuta-2.30.2.1/plugins/file-wizard/file.c	2010-06-21 19:34:11.000000000 +0200
@@ -358,7 +358,7 @@ on_new_file_okbutton_clicked(GtkWidget *
 			if (file_list->next)
 			{
 				/* Save header file */
-				ianjuta_file_savable_save_as (IANJUTA_FILE_SAVABLE (teh), (GFile *)file_list->data, NULL);		
+				ianjuta_file_savable_save_as (IANJUTA_FILE_SAVABLE (teh), (GFile *)file_list->next->data, NULL);		
 			}		
 
 
--- anjuta-2.30.1.0/plugins/language-support-cpp-java/cpp-java-assist.c	2010-04-26 21:37:52.000000000 +0200
+++ anjuta-2.30.2.1/plugins/language-support-cpp-java/cpp-java-assist.c	2010-06-21 19:47:10.000000000 +0200
@@ -1440,13 +1440,7 @@ cpp_java_assist_finalize (GObject *objec
 	CppJavaAssist *assist = CPP_JAVA_ASSIST (object);
 	cpp_java_assist_uninstall (assist);
 	cpp_java_assist_clear_completion_cache (assist);
-#if 0
-	if (assist->priv->calltip_context)
-	{
-		g_free (assist->priv->calltip_context);
-		assist->priv->calltip_context = NULL;
-	}
-#endif
+	cpp_java_assist_clear_calltip_context (assist);
 	g_object_unref (assist->priv->cancel_calltip_file);
 	g_object_unref (assist->priv->cancel_calltip_project);
 	g_object_unref (assist->priv->cancel_calltip_system);
--- anjuta-2.30.1.0/plugins/language-support-cpp-java/plugin.c	2010-04-11 15:20:49.000000000 +0200
+++ anjuta-2.30.2.1/plugins/language-support-cpp-java/plugin.c	2010-06-21 19:34:11.000000000 +0200
@@ -507,7 +507,7 @@ parse_mode_line_vim (CppJavaPlugin *plug
 {
 	gchar **strv, **ptr;
 	
-	strv = g_strsplit (modeline, " ", -1);
+	strv = g_strsplit_set (modeline, " \t:", -1);
 	ptr = strv;
 	while (*ptr)
 	{
@@ -516,15 +516,15 @@ parse_mode_line_vim (CppJavaPlugin *plug
 		if (keyval[0])
 		{
 			g_strstrip (keyval[0]);
-      if (keyval[1])
-      {
-			  g_strstrip (keyval[1]);
-			  set_indentation_param_vim (plugin, g_strchug (keyval[0]),
-                                     g_strchug (keyval[1]));
-      }
-      else
-			  set_indentation_param_vim (plugin, g_strchug (keyval[0]),
-                                     NULL);        
+			if (keyval[1])
+			{
+				g_strstrip (keyval[1]);
+				set_indentation_param_vim (plugin, g_strchug (keyval[0]),
+				                           g_strchug (keyval[1]));
+			}
+			else
+				set_indentation_param_vim (plugin, g_strchug (keyval[0]),
+				                           NULL);        
 		}
 		g_strfreev (keyval);
 		ptr++;
@@ -549,18 +549,18 @@ extract_mode_line (const gchar *comment_
 		}
 	}
 	/* Search for vim-like modelines */
-	begin_modeline = strstr (comment_text, "vim:set");
+	begin_modeline = strstr (comment_text, "vim:");
 	if (begin_modeline)
 	{
-		begin_modeline += 7;
-		end_modeline = strstr (begin_modeline, ":");
+		begin_modeline += strlen ("vim:");
+		end_modeline = strstr (begin_modeline, "*/");
 		/* Check for escape characters */
 		while (end_modeline)
 		{
 			 if (!g_str_equal ((end_modeline - 1), "\\"))
 				break;
 			end_modeline++;
-			end_modeline = strstr (end_modeline, ":");
+			end_modeline = strstr (end_modeline, "*/");
 		}
 		if (end_modeline)
 		{
@@ -1498,31 +1498,27 @@ on_editor_char_inserted_cpp (IAnjutaEdit
 			/* If the previous char is a ' we don't have to autocomplete */
 			if (*prev_char != '\'')
 			{
-				
+				ianjuta_document_begin_undo_action (IANJUTA_DOCUMENT (editor), NULL);
 				ianjuta_iterable_next (iter, NULL);
 				switch (ch)
 				{
-					case '[': ianjuta_document_begin_undo_action (IANJUTA_DOCUMENT (editor), NULL);
+					case '[': 
 							  ianjuta_editor_insert (editor, iter,
 													 "]", 1, NULL);
-							  ianjuta_document_end_undo_action (IANJUTA_DOCUMENT (editor), NULL);
 							  break;
-					case '(': ianjuta_document_begin_undo_action (IANJUTA_DOCUMENT (editor), NULL);
+					case '(': 
 							  ianjuta_editor_insert (editor, iter,
 													 ")", 1, NULL);
-							  ianjuta_document_end_undo_action (IANJUTA_DOCUMENT (editor), NULL);
 							  break;
-					default: break;
+					default: 
+						       break;
 				}
-
-				ianjuta_document_begin_undo_action (IANJUTA_DOCUMENT (editor), NULL);
-				ianjuta_iterable_previous (iter, NULL);
 				ianjuta_editor_goto_position (editor, iter, NULL);
 				ianjuta_document_end_undo_action (IANJUTA_DOCUMENT (editor), NULL);
 			}
 			g_object_unref (previous);
 		}
-		else if (ch == ']' || ch == ')' || ch == '"' || ch == '\'')
+		else if (ch == '"' || ch == '\'')
 		{
 			gchar *prev_char;
 			IAnjutaIterable *previous;
@@ -1553,8 +1549,6 @@ on_editor_char_inserted_cpp (IAnjutaEdit
 					
 					ianjuta_document_begin_undo_action (IANJUTA_DOCUMENT (editor), NULL);
 					ianjuta_editor_insert (editor, iter, c, 1, NULL);
-
-					ianjuta_iterable_previous (iter, NULL);
 					ianjuta_editor_goto_position (editor, iter, NULL);
 					ianjuta_document_end_undo_action (IANJUTA_DOCUMENT (editor), NULL);	
 					
--- anjuta-2.30.1.0/plugins/message-view/anjuta-message-manager-plugin.ui	2010-04-11 15:20:49.000000000 +0200
+++ anjuta-2.30.2.1/plugins/message-view/anjuta-message-manager-plugin.ui	2010-06-21 19:34:11.000000000 +0200
@@ -1,110 +1,7 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
 <interface>
   <requires lib="gtk+" version="2.16"/>
   <!-- interface-naming-policy toplevel-contextual -->
-  <object class="GtkAdjustment" id="adjustment1">
-    <property name="value">50</property>
-    <property name="lower">1</property>
-    <property name="upper">1000</property>
-    <property name="step_increment">1</property>
-    <property name="page_increment">10</property>
-  </object>
-  <object class="GtkAdjustment" id="adjustment2">
-    <property name="value">50</property>
-    <property name="lower">1</property>
-    <property name="upper">1000</property>
-    <property name="step_increment">1</property>
-    <property name="page_increment">10</property>
-  </object>
-  <object class="GtkListStore" id="model1">
-    <columns>
-      <!-- column-name gchararray -->
-      <column type="gchararray"/>
-    </columns>
-    <data>
-      <row>
-        <col id="0" translatable="yes">Top</col>
-      </row>
-      <row>
-        <col id="0" translatable="yes">Bottom</col>
-      </row>
-      <row>
-        <col id="0" translatable="yes">Left</col>
-      </row>
-      <row>
-        <col id="0" translatable="yes">Right</col>
-      </row>
-    </data>
-  </object>
-  <object class="GtkListStore" id="model2">
-    <columns>
-      <!-- column-name gchararray -->
-      <column type="gchararray"/>
-    </columns>
-    <data>
-      <row>
-        <col id="0" translatable="yes" comments="text style in editor">Underline-Plain</col>
-      </row>
-      <row>
-        <col id="0" translatable="yes" comments="text style in editor">Underline-Squiggle</col>
-      </row>
-      <row>
-        <col id="0" translatable="yes" comments="text style in editor, TT is for typewriter text">Underline-TT</col>
-      </row>
-      <row>
-        <col id="0" translatable="yes" comments="text style in editor">Diagonal</col>
-      </row>
-      <row>
-        <col id="0" translatable="yes" comments="text style in editor">Strike-Out</col>
-      </row>
-    </data>
-  </object>
-  <object class="GtkListStore" id="model3">
-    <columns>
-      <!-- column-name gchararray -->
-      <column type="gchararray"/>
-    </columns>
-    <data>
-      <row>
-        <col id="0" translatable="yes">Underline-Plain</col>
-      </row>
-      <row>
-        <col id="0" translatable="yes">Underline-Squiggle</col>
-      </row>
-      <row>
-        <col id="0" translatable="yes">Underline-TT</col>
-      </row>
-      <row>
-        <col id="0" translatable="yes">Diagonal</col>
-      </row>
-      <row>
-        <col id="0" translatable="yes">Strike-Out</col>
-      </row>
-    </data>
-  </object>
-  <object class="GtkListStore" id="model4">
-    <columns>
-      <!-- column-name gchararray -->
-      <column type="gchararray"/>
-    </columns>
-    <data>
-      <row>
-        <col id="0" translatable="yes">Underline-Plain</col>
-      </row>
-      <row>
-        <col id="0" translatable="yes">Underline-Squiggle</col>
-      </row>
-      <row>
-        <col id="0" translatable="yes">Underline-TT</col>
-      </row>
-      <row>
-        <col id="0" translatable="yes">Diagonal</col>
-      </row>
-      <row>
-        <col id="0" translatable="yes">Strike-Out</col>
-      </row>
-    </data>
-  </object>
   <object class="GtkWindow" id="preferences_dialog_messages">
     <property name="title" translatable="yes">window6</property>
     <child>
@@ -125,19 +22,6 @@
                 <property name="column_spacing">5</property>
                 <property name="row_spacing">5</property>
                 <child>
-                  <object class="GtkLabel" id="label138">
-                    <property name="visible">True</property>
-                    <property name="xalign">0</property>
-                    <property name="label" translatable="yes">Tab position:</property>
-                  </object>
-                  <packing>
-                    <property name="top_attach">3</property>
-                    <property name="bottom_attach">4</property>
-                    <property name="x_options">GTK_FILL</property>
-                    <property name="y_options"></property>
-                  </packing>
-                </child>
-                <child>
                   <object class="GtkSpinButton" id="preferences_spin:int:50:0:truncat.mesg.first">
                     <property name="can_focus">True</property>
                     <property name="adjustment">adjustment1</property>
@@ -207,23 +91,10 @@
                   </packing>
                 </child>
                 <child>
-                  <object class="GtkComboBox" id="preferences_combo:text:Top,Bottom,Left,Right:0:messages.tab.position">
-                    <property name="visible">True</property>
-                    <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                    <property name="model">model1</property>
-                    <child>
-                      <object class="GtkCellRendererText" id="renderer1"/>
-                      <attributes>
-                        <attribute name="text">0</attribute>
-                      </attributes>
-                    </child>
-                  </object>
-                  <packing>
-                    <property name="left_attach">1</property>
-                    <property name="right_attach">2</property>
-                    <property name="top_attach">3</property>
-                    <property name="bottom_attach">4</property>
-                  </packing>
+                  <placeholder/>
+                </child>
+                <child>
+                  <placeholder/>
                 </child>
                 <child>
                   <placeholder/>
@@ -382,7 +253,7 @@
                 <property name="column_spacing">5</property>
                 <property name="row_spacing">5</property>
                 <child>
-                  <object class="GtkColorButton" id="preferences_color:color:#E00000:0:messages.color.error">
+                  <object class="GtkColorButton" id="preferences_color:color:#FF0000:0:messages.color.error">
                     <property name="visible">True</property>
                     <property name="can_focus">True</property>
                     <property name="receives_default">False</property>
@@ -395,7 +266,7 @@
                   </packing>
                 </child>
                 <child>
-                  <object class="GtkColorButton" id="preferences_color:color:#F05000:0:messages.color.warning">
+                  <object class="GtkColorButton" id="preferences_color:color:#00FF00:0:messages.color.warning">
                     <property name="visible">True</property>
                     <property name="can_focus">True</property>
                     <property name="receives_default">False</property>
@@ -459,4 +330,107 @@
       </object>
     </child>
   </object>
+  <object class="GtkListStore" id="model4">
+    <columns>
+      <!-- column-name gchararray -->
+      <column type="gchararray"/>
+    </columns>
+    <data>
+      <row>
+        <col id="0" translatable="yes">Underline-Plain</col>
+      </row>
+      <row>
+        <col id="0" translatable="yes">Underline-Squiggle</col>
+      </row>
+      <row>
+        <col id="0" translatable="yes">Underline-TT</col>
+      </row>
+      <row>
+        <col id="0" translatable="yes">Diagonal</col>
+      </row>
+      <row>
+        <col id="0" translatable="yes">Strike-Out</col>
+      </row>
+    </data>
+  </object>
+  <object class="GtkListStore" id="model3">
+    <columns>
+      <!-- column-name gchararray -->
+      <column type="gchararray"/>
+    </columns>
+    <data>
+      <row>
+        <col id="0" translatable="yes">Underline-Plain</col>
+      </row>
+      <row>
+        <col id="0" translatable="yes">Underline-Squiggle</col>
+      </row>
+      <row>
+        <col id="0" translatable="yes">Underline-TT</col>
+      </row>
+      <row>
+        <col id="0" translatable="yes">Diagonal</col>
+      </row>
+      <row>
+        <col id="0" translatable="yes">Strike-Out</col>
+      </row>
+    </data>
+  </object>
+  <object class="GtkListStore" id="model2">
+    <columns>
+      <!-- column-name gchararray -->
+      <column type="gchararray"/>
+    </columns>
+    <data>
+      <row>
+        <col id="0" translatable="yes" comments="text style in editor">Underline-Plain</col>
+      </row>
+      <row>
+        <col id="0" translatable="yes" comments="text style in editor">Underline-Squiggle</col>
+      </row>
+      <row>
+        <col id="0" translatable="yes" comments="text style in editor, TT is for typewriter text">Underline-TT</col>
+      </row>
+      <row>
+        <col id="0" translatable="yes" comments="text style in editor">Diagonal</col>
+      </row>
+      <row>
+        <col id="0" translatable="yes" comments="text style in editor">Strike-Out</col>
+      </row>
+    </data>
+  </object>
+  <object class="GtkListStore" id="model1">
+    <columns>
+      <!-- column-name gchararray -->
+      <column type="gchararray"/>
+    </columns>
+    <data>
+      <row>
+        <col id="0" translatable="yes">Top</col>
+      </row>
+      <row>
+        <col id="0" translatable="yes">Bottom</col>
+      </row>
+      <row>
+        <col id="0" translatable="yes">Left</col>
+      </row>
+      <row>
+        <col id="0" translatable="yes">Right</col>
+      </row>
+    </data>
+  </object>
+  <object class="GtkAdjustment" id="adjustment2">
+    <property name="lower">1</property>
+    <property name="upper">1000</property>
+    <property name="value">50</property>
+    <property name="step_increment">1</property>
+    <property name="page_increment">10</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment1">
+    <property name="lower">1</property>
+    <property name="upper">1000</property>
+    <property name="value">50</property>
+    <property name="step_increment">1</property>
+    <property name="page_increment">10</property>
+  </object>
 </interface>
--- anjuta-2.30.1.0/plugins/symbol-db/anjuta-tags/c.c	2010-04-11 15:20:50.000000000 +0200
+++ anjuta-2.30.2.1/plugins/symbol-db/anjuta-tags/c.c	2010-06-21 19:34:11.000000000 +0200
@@ -48,7 +48,7 @@
 *   DATA DECLARATIONS
 */
 
-enum { NumTokens = 7 };
+enum { NumTokens = 15 };
 
 typedef enum eException {
 	ExceptionNone, ExceptionEOF, ExceptionFormattingError,
@@ -2135,9 +2135,28 @@ static void parseReturnType (statementIn
 		return;
 	
 	finding_tok = prevToken (st, 2);
-	
+		
 	if (finding_tok->type == TOKEN_DOUBLE_COLON)
-		lower_bound = 3;
+	{
+		/* get the total number of double colons */
+		int j;
+		int num_colons = 0;
+
+		/* we already are at 2nd token */
+		/* the +=2 means that colons are usually found at even places */
+		for (j = 2; j < NumTokens; j+=2)
+		{
+			tokenInfo *curr_tok;
+			curr_tok = prevToken (st, j);
+			if (curr_tok->type == TOKEN_DOUBLE_COLON)
+				num_colons++;
+			else
+				break;
+		}
+
+		/*printf ("FOUND colons %d\n", num_colons);*/
+		lower_bound = 2 * num_colons + 1;
+	}
 	else
 		lower_bound = 1;
 	
@@ -2169,7 +2188,8 @@ static void parseReturnType (statementIn
 				break;
 
 			case TOKEN_KEYWORD:
-				vStringPut (ReturnType, ' ');				
+				vStringPut (ReturnType, ' ');
+				
 			default:
 				vStringCat (ReturnType, curr_tok->name);
 				break;				
@@ -2188,6 +2208,7 @@ static void parseReturnType (statementIn
 	/*/
 	printf ("~~~~~ statement ---->\n");
 	ps (st);
+	printf ("NumTokens: %d\n", NumTokens);
 	printf ("FOUND ReturnType: %s\n", vStringValue (ReturnType));	
 	printf ("<~~~~~\n");
 	//*/
--- anjuta-2.30.1.0/plugins/symbol-db/anjuta-tags/ctags-visitor.c	2010-04-26 21:54:34.000000000 +0200
+++ anjuta-2.30.2.1/plugins/symbol-db/anjuta-tags/ctags-visitor.c	2010-06-21 19:49:14.000000000 +0200
@@ -114,6 +114,7 @@ CTagsEntry* ctags_entry_dup (const CTags
 void ctags_entry_free (CTagsEntry* self);
 void ctags_entry_copy (const CTagsEntry* self, CTagsEntry* dest);
 void ctags_entry_destroy (CTagsEntry* self);
+static void _vala_array_copy1 (char** self, char** dest);
 GType dummy_report_get_type (void);
 enum  {
 	DUMMY_REPORT_DUMMY_PROPERTY
@@ -154,10 +155,22 @@ static void ctags_visitor_real_visit_loc
 void ctags_visitor_parse_vala (CTagsVisitor* self, const char* filename, CTagsEntryMaker maker);
 void ctags_visitor_parse_genie (CTagsVisitor* self, const char* filename, CTagsEntryMaker maker);
 static void ctags_visitor_finalize (ValaCodeVisitor* obj);
+static void _vala_array_destroy (gpointer array, gint array_length, GDestroyNotify destroy_func);
+static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify destroy_func);
 
 
 
+static void _vala_array_copy1 (char** self, char** dest) {
+	int i;
+	char* _tmp0_[2] = {0};
+	for (i = 0; i < 2; i++) {
+		dest[i] = g_strdup (self[i]);
+	}
+}
+
+
 void ctags_entry_copy (const CTagsEntry* self, CTagsEntry* dest) {
+	char* _tmp0_[2] = {0};
 	dest->line_number = self->line_number;
 	dest->name = g_strdup (self->name);
 	dest->kind_name = g_strdup (self->kind_name);
@@ -165,7 +178,7 @@ void ctags_entry_copy (const CTagsEntry*
 	dest->access = g_strdup (self->access);
 	dest->implementation = g_strdup (self->implementation);
 	dest->inheritance = g_strdup (self->inheritance);
-	memcpy (dest->scope, self->scope, 2 * sizeof (char*));
+	memcpy (dest->scope, (_vala_array_copy1 (self->scope, _tmp0_), _tmp0_), 2 * sizeof (char*));
 	dest->signature = g_strdup (self->signature);
 	dest->typeref = g_strdup (self->typeref);
 	dest->returntype = g_strdup (self->returntype);
@@ -178,6 +191,7 @@ void ctags_entry_destroy (CTagsEntry* se
 	_g_free0 (self->access);
 	_g_free0 (self->implementation);
 	_g_free0 (self->inheritance);
+	_vala_array_destroy (self->scope, 2, (GDestroyNotify) g_free);
 	_g_free0 (self->signature);
 	_g_free0 (self->typeref);
 	_g_free0 (self->returntype);
@@ -211,33 +225,33 @@ GType ctags_entry_get_type (void) {
 
 #line 39 "ctags-visitor.vala"
 static void dummy_report_real_warn (ValaReport* base, ValaSourceReference* source, const char* message) {
-#line 215 "ctags-visitor.c"
+#line 229 "ctags-visitor.c"
 	DummyReport * self;
 	self = (DummyReport*) base;
 #line 39 "ctags-visitor.vala"
 	g_return_if_fail (message != NULL);
-#line 220 "ctags-visitor.c"
+#line 234 "ctags-visitor.c"
 }
 
 
 #line 40 "ctags-visitor.vala"
 static void dummy_report_real_err (ValaReport* base, ValaSourceReference* source, const char* message) {
-#line 226 "ctags-visitor.c"
+#line 240 "ctags-visitor.c"
 	DummyReport * self;
 	self = (DummyReport*) base;
 #line 40 "ctags-visitor.vala"
 	g_return_if_fail (message != NULL);
-#line 231 "ctags-visitor.c"
+#line 245 "ctags-visitor.c"
 }
 
 
 #line 38 "ctags-visitor.vala"
 DummyReport* dummy_report_construct (GType object_type) {
-#line 237 "ctags-visitor.c"
+#line 251 "ctags-visitor.c"
 	DummyReport * self;
 #line 38 "ctags-visitor.vala"
 	self = (DummyReport*) vala_report_construct (object_type);
-#line 241 "ctags-visitor.c"
+#line 255 "ctags-visitor.c"
 	return self;
 }
 
@@ -246,7 +260,7 @@ DummyReport* dummy_report_construct (GTy
 DummyReport* dummy_report_new (void) {
 #line 38 "ctags-visitor.vala"
 	return dummy_report_construct (TYPE_DUMMY_REPORT);
-#line 250 "ctags-visitor.c"
+#line 264 "ctags-visitor.c"
 }
 
 
@@ -281,7 +295,7 @@ static void _g_list_free_ctags_entry_fre
 
 #line 50 "ctags-visitor.vala"
 CTagsVisitor* ctags_visitor_construct (GType object_type) {
-#line 285 "ctags-visitor.c"
+#line 299 "ctags-visitor.c"
 	CTagsVisitor* self;
 	ValaParser* _tmp0_;
 	ValaGenieParser* _tmp1_;
@@ -291,7 +305,7 @@ CTagsVisitor* ctags_visitor_construct (G
 	self->priv->vala_parser = (_tmp0_ = vala_parser_new (), _vala_code_visitor_unref0 (self->priv->vala_parser), _tmp0_);
 #line 52 "ctags-visitor.vala"
 	self->priv->genie_parser = (_tmp1_ = vala_genie_parser_new (), _vala_code_visitor_unref0 (self->priv->genie_parser), _tmp1_);
-#line 295 "ctags-visitor.c"
+#line 309 "ctags-visitor.c"
 	return self;
 }
 
@@ -300,57 +314,57 @@ CTagsVisitor* ctags_visitor_construct (G
 CTagsVisitor* ctags_visitor_new (void) {
 #line 50 "ctags-visitor.vala"
 	return ctags_visitor_construct (TYPE_CTAGS_VISITOR);
-#line 304 "ctags-visitor.c"
+#line 318 "ctags-visitor.c"
 }
 
 
 #line 55 "ctags-visitor.vala"
 static char* ctags_visitor_get_access (ValaSymbol* sym) {
-#line 310 "ctags-visitor.c"
+#line 324 "ctags-visitor.c"
 	char* result = NULL;
 #line 55 "ctags-visitor.vala"
 	g_return_val_if_fail (sym != NULL, NULL);
 #line 56 "ctags-visitor.vala"
 	switch (vala_symbol_get_access (sym)) {
-#line 316 "ctags-visitor.c"
+#line 330 "ctags-visitor.c"
 		case VALA_SYMBOL_ACCESSIBILITY_PRIVATE:
 		{
 			result = g_strdup ("private");
 #line 57 "ctags-visitor.vala"
 			return result;
-#line 322 "ctags-visitor.c"
+#line 336 "ctags-visitor.c"
 		}
 		case VALA_SYMBOL_ACCESSIBILITY_INTERNAL:
 		{
 			result = g_strdup ("internal");
 #line 58 "ctags-visitor.vala"
 			return result;
-#line 329 "ctags-visitor.c"
+#line 343 "ctags-visitor.c"
 		}
 		case VALA_SYMBOL_ACCESSIBILITY_PROTECTED:
 		{
 			result = g_strdup ("protected");
 #line 59 "ctags-visitor.vala"
 			return result;
-#line 336 "ctags-visitor.c"
+#line 350 "ctags-visitor.c"
 		}
 		case VALA_SYMBOL_ACCESSIBILITY_PUBLIC:
 		{
 			result = g_strdup ("public");
 #line 60 "ctags-visitor.vala"
 			return result;
-#line 343 "ctags-visitor.c"
+#line 357 "ctags-visitor.c"
 		}
 	}
 #line 62 "ctags-visitor.vala"
 	g_assert_not_reached ();
-#line 348 "ctags-visitor.c"
+#line 362 "ctags-visitor.c"
 }
 
 
 #line 64 "ctags-visitor.vala"
 static char* ctags_visitor_to_string (ValaIterable* seq, const char* sep) {
-#line 354 "ctags-visitor.c"
+#line 368 "ctags-visitor.c"
 	char* result = NULL;
 	GString* str;
 	gboolean first;
@@ -362,20 +376,20 @@ static char* ctags_visitor_to_string (Va
 	str = g_string_new ("");
 #line 66 "ctags-visitor.vala"
 	first = TRUE;
-#line 366 "ctags-visitor.c"
+#line 380 "ctags-visitor.c"
 	{
 		ValaIterator* _type_it;
 		_type_it = vala_iterable_iterator (seq);
 #line 67 "ctags-visitor.vala"
 		while (TRUE) {
-#line 372 "ctags-visitor.c"
+#line 386 "ctags-visitor.c"
 			ValaDataType* type;
 			char* _tmp0_;
 #line 67 "ctags-visitor.vala"
 			if (!vala_iterator_next (_type_it)) {
 #line 67 "ctags-visitor.vala"
 				break;
-#line 379 "ctags-visitor.c"
+#line 393 "ctags-visitor.c"
 			}
 #line 67 "ctags-visitor.vala"
 			type = (ValaDataType*) vala_iterator_get (_type_it);
@@ -383,15 +397,15 @@ static char* ctags_visitor_to_string (Va
 			if (first) {
 #line 69 "ctags-visitor.vala"
 				first = FALSE;
-#line 387 "ctags-visitor.c"
+#line 401 "ctags-visitor.c"
 			} else {
 #line 71 "ctags-visitor.vala"
 				g_string_append (str, sep);
-#line 391 "ctags-visitor.c"
+#line 405 "ctags-visitor.c"
 			}
 #line 73 "ctags-visitor.vala"
 			g_string_append (str, _tmp0_ = vala_data_type_to_qualified_string (type, NULL));
-#line 395 "ctags-visitor.c"
+#line 409 "ctags-visitor.c"
 			_g_free0 (_tmp0_);
 			_vala_code_node_unref0 (type);
 		}
@@ -401,7 +415,7 @@ static char* ctags_visitor_to_string (Va
 	_g_string_free0 (str);
 #line 75 "ctags-visitor.vala"
 	return result;
-#line 405 "ctags-visitor.c"
+#line 419 "ctags-visitor.c"
 }
 
 
@@ -418,7 +432,7 @@ static void _g_list_free_g_free (GList* 
 
 #line 77 "ctags-visitor.vala"
 static char* ctags_visitor_implementation (ValaSymbol* sym) {
-#line 422 "ctags-visitor.c"
+#line 436 "ctags-visitor.c"
 	char* result = NULL;
 	GList* list;
 	GString* ret;
@@ -429,7 +443,7 @@ static char* ctags_visitor_implementatio
 	list = NULL;
 #line 80 "ctags-visitor.vala"
 	if (VALA_IS_SIGNAL (sym)) {
-#line 433 "ctags-visitor.c"
+#line 447 "ctags-visitor.c"
 		ValaSignal* sig;
 #line 81 "ctags-visitor.vala"
 		sig = _vala_code_node_ref0 (VALA_SIGNAL (sym));
@@ -437,13 +451,13 @@ static char* ctags_visitor_implementatio
 		if (vala_signal_get_is_virtual (sig)) {
 #line 83 "ctags-visitor.vala"
 			list = g_list_append (list, g_strdup ("virtual"));
-#line 441 "ctags-visitor.c"
+#line 455 "ctags-visitor.c"
 		}
 		_vala_code_node_unref0 (sig);
 	} else {
 #line 84 "ctags-visitor.vala"
 		if (VALA_IS_CLASS (sym)) {
-#line 447 "ctags-visitor.c"
+#line 461 "ctags-visitor.c"
 			ValaClass* cls;
 #line 85 "ctags-visitor.vala"
 			cls = _vala_code_node_ref0 (VALA_CLASS (sym));
@@ -451,13 +465,13 @@ static char* ctags_visitor_implementatio
 			if (vala_class_get_is_abstract (cls)) {
 #line 87 "ctags-visitor.vala"
 				list = g_list_append (list, g_strdup ("abstract"));
-#line 455 "ctags-visitor.c"
+#line 469 "ctags-visitor.c"
 			}
 			_vala_code_node_unref0 (cls);
 		} else {
 #line 88 "ctags-visitor.vala"
 			if (VALA_IS_METHOD (sym)) {
-#line 461 "ctags-visitor.c"
+#line 475 "ctags-visitor.c"
 				ValaMethod* meth;
 #line 89 "ctags-visitor.vala"
 				meth = _vala_code_node_ref0 (VALA_METHOD (sym));
@@ -465,20 +479,20 @@ static char* ctags_visitor_implementatio
 				if (vala_method_get_is_abstract (meth)) {
 #line 91 "ctags-visitor.vala"
 					list = g_list_append (list, g_strdup ("abstract"));
-#line 469 "ctags-visitor.c"
+#line 483 "ctags-visitor.c"
 				} else {
 #line 92 "ctags-visitor.vala"
 					if (vala_method_get_is_virtual (meth)) {
 #line 93 "ctags-visitor.vala"
 						list = g_list_append (list, g_strdup ("virtual"));
-#line 475 "ctags-visitor.c"
+#line 489 "ctags-visitor.c"
 					}
 				}
 				_vala_code_node_unref0 (meth);
 			} else {
 #line 94 "ctags-visitor.vala"
 				if (VALA_IS_PROPERTY (sym)) {
-#line 482 "ctags-visitor.c"
+#line 496 "ctags-visitor.c"
 					ValaProperty* prop;
 #line 95 "ctags-visitor.vala"
 					prop = _vala_code_node_ref0 (VALA_PROPERTY (sym));
@@ -486,20 +500,20 @@ static char* ctags_visitor_implementatio
 					if (vala_property_get_is_abstract (prop)) {
 #line 97 "ctags-visitor.vala"
 						list = g_list_append (list, g_strdup ("abstract"));
-#line 490 "ctags-visitor.c"
+#line 504 "ctags-visitor.c"
 					} else {
 #line 98 "ctags-visitor.vala"
 						if (vala_property_get_is_virtual (prop)) {
 #line 99 "ctags-visitor.vala"
 							list = g_list_append (list, g_strdup ("virtual"));
-#line 496 "ctags-visitor.c"
+#line 510 "ctags-visitor.c"
 						}
 					}
 					_vala_code_node_unref0 (prop);
 				} else {
 #line 101 "ctags-visitor.vala"
 					g_return_val_if_reached (NULL);
-#line 503 "ctags-visitor.c"
+#line 517 "ctags-visitor.c"
 				}
 			}
 		}
@@ -508,32 +522,32 @@ static char* ctags_visitor_implementatio
 	ret = g_string_new ("");
 #line 104 "ctags-visitor.vala"
 	first = TRUE;
-#line 512 "ctags-visitor.c"
+#line 526 "ctags-visitor.c"
 	{
 		GList* str_collection;
 		GList* str_it;
 #line 105 "ctags-visitor.vala"
 		str_collection = list;
-#line 518 "ctags-visitor.c"
+#line 532 "ctags-visitor.c"
 		for (str_it = str_collection; str_it != NULL; str_it = str_it->next) {
 			char* str;
 #line 105 "ctags-visitor.vala"
 			str = g_strdup ((const char*) str_it->data);
-#line 523 "ctags-visitor.c"
+#line 537 "ctags-visitor.c"
 			{
 #line 106 "ctags-visitor.vala"
 				if (first) {
 #line 107 "ctags-visitor.vala"
 					first = FALSE;
-#line 529 "ctags-visitor.c"
+#line 543 "ctags-visitor.c"
 				} else {
 #line 109 "ctags-visitor.vala"
 					g_string_append (ret, ",");
-#line 533 "ctags-visitor.c"
+#line 547 "ctags-visitor.c"
 				}
 #line 111 "ctags-visitor.vala"
 				g_string_append (ret, str);
-#line 537 "ctags-visitor.c"
+#line 551 "ctags-visitor.c"
 				_g_free0 (str);
 			}
 		}
@@ -543,13 +557,13 @@ static char* ctags_visitor_implementatio
 	_g_string_free0 (ret);
 #line 113 "ctags-visitor.vala"
 	return result;
-#line 547 "ctags-visitor.c"
+#line 561 "ctags-visitor.c"
 }
 
 
 #line 115 "ctags-visitor.vala"
 static char* ctags_visitor_signature (ValaList* parameter) {
-#line 553 "ctags-visitor.c"
+#line 567 "ctags-visitor.c"
 	char* result = NULL;
 	GString* ret;
 	gboolean first;
@@ -559,19 +573,19 @@ static char* ctags_visitor_signature (Va
 	ret = g_string_new ("(");
 #line 117 "ctags-visitor.vala"
 	first = TRUE;
-#line 563 "ctags-visitor.c"
+#line 577 "ctags-visitor.c"
 	{
 		ValaIterator* _p_it;
 		_p_it = vala_iterable_iterator ((ValaIterable*) parameter);
 #line 118 "ctags-visitor.vala"
 		while (TRUE) {
-#line 569 "ctags-visitor.c"
+#line 583 "ctags-visitor.c"
 			ValaFormalParameter* p;
 #line 118 "ctags-visitor.vala"
 			if (!vala_iterator_next (_p_it)) {
 #line 118 "ctags-visitor.vala"
 				break;
-#line 575 "ctags-visitor.c"
+#line 589 "ctags-visitor.c"
 			}
 #line 118 "ctags-visitor.vala"
 			p = (ValaFormalParameter*) vala_iterator_get (_p_it);
@@ -579,28 +593,28 @@ static char* ctags_visitor_signature (Va
 			if (first) {
 #line 120 "ctags-visitor.vala"
 				first = FALSE;
-#line 583 "ctags-visitor.c"
+#line 597 "ctags-visitor.c"
 			} else {
 #line 122 "ctags-visitor.vala"
 				g_string_append (ret, ",");
-#line 587 "ctags-visitor.c"
+#line 601 "ctags-visitor.c"
 			}
 #line 124 "ctags-visitor.vala"
 			if (vala_formal_parameter_get_ellipsis (p)) {
 #line 125 "ctags-visitor.vala"
 				g_string_append (ret, "...");
-#line 593 "ctags-visitor.c"
+#line 607 "ctags-visitor.c"
 			} else {
 				char* _tmp0_;
 #line 127 "ctags-visitor.vala"
 				g_string_append (ret, _tmp0_ = vala_data_type_to_qualified_string (vala_formal_parameter_get_parameter_type (p), NULL));
-#line 598 "ctags-visitor.c"
+#line 612 "ctags-visitor.c"
 				_g_free0 (_tmp0_);
 #line 128 "ctags-visitor.vala"
 				g_string_append (ret, " ");
 #line 129 "ctags-visitor.vala"
 				g_string_append (ret, vala_symbol_get_name ((ValaSymbol*) p));
-#line 604 "ctags-visitor.c"
+#line 618 "ctags-visitor.c"
 			}
 			_vala_code_node_unref0 (p);
 		}
@@ -608,18 +622,18 @@ static char* ctags_visitor_signature (Va
 	}
 #line 132 "ctags-visitor.vala"
 	g_string_append (ret, ")");
-#line 612 "ctags-visitor.c"
+#line 626 "ctags-visitor.c"
 	result = g_strdup (ret->str);
 	_g_string_free0 (ret);
 #line 133 "ctags-visitor.vala"
 	return result;
-#line 617 "ctags-visitor.c"
+#line 631 "ctags-visitor.c"
 }
 
 
 #line 135 "ctags-visitor.vala"
 static void ctags_visitor_scope (ValaSymbol* s, char** scope, int scope_length1) {
-#line 623 "ctags-visitor.c"
+#line 637 "ctags-visitor.c"
 	ValaSymbol* par;
 	gboolean _tmp0_ = FALSE;
 #line 135 "ctags-visitor.vala"
@@ -630,50 +644,50 @@ static void ctags_visitor_scope (ValaSym
 	if (par != NULL) {
 #line 137 "ctags-visitor.vala"
 		_tmp0_ = vala_symbol_get_name (par) != NULL;
-#line 634 "ctags-visitor.c"
+#line 648 "ctags-visitor.c"
 	} else {
 #line 137 "ctags-visitor.vala"
 		_tmp0_ = FALSE;
-#line 638 "ctags-visitor.c"
+#line 652 "ctags-visitor.c"
 	}
 #line 137 "ctags-visitor.vala"
 	if (_tmp0_) {
-#line 642 "ctags-visitor.c"
+#line 656 "ctags-visitor.c"
 		char* _tmp4_;
 #line 138 "ctags-visitor.vala"
 		if (VALA_IS_CLASS (par)) {
-#line 646 "ctags-visitor.c"
+#line 660 "ctags-visitor.c"
 			char* _tmp1_;
 #line 139 "ctags-visitor.vala"
 			scope[0] = (_tmp1_ = g_strdup ("class"), _g_free0 (scope[0]), _tmp1_);
-#line 650 "ctags-visitor.c"
+#line 664 "ctags-visitor.c"
 		} else {
 #line 140 "ctags-visitor.vala"
 			if (VALA_IS_STRUCT (par)) {
-#line 654 "ctags-visitor.c"
+#line 668 "ctags-visitor.c"
 				char* _tmp2_;
 #line 141 "ctags-visitor.vala"
 				scope[0] = (_tmp2_ = g_strdup ("struct"), _g_free0 (scope[0]), _tmp2_);
-#line 658 "ctags-visitor.c"
+#line 672 "ctags-visitor.c"
 			} else {
 #line 142 "ctags-visitor.vala"
 				if (VALA_IS_INTERFACE (par)) {
-#line 662 "ctags-visitor.c"
+#line 676 "ctags-visitor.c"
 					char* _tmp3_;
 #line 143 "ctags-visitor.vala"
 					scope[0] = (_tmp3_ = g_strdup ("interface"), _g_free0 (scope[0]), _tmp3_);
-#line 666 "ctags-visitor.c"
+#line 680 "ctags-visitor.c"
 				} else {
 					_vala_code_node_unref0 (par);
 #line 145 "ctags-visitor.vala"
 					return;
-#line 671 "ctags-visitor.c"
+#line 685 "ctags-visitor.c"
 				}
 			}
 		}
 #line 146 "ctags-visitor.vala"
 		scope[1] = (_tmp4_ = g_strdup (vala_symbol_get_name (par)), _g_free0 (scope[1]), _tmp4_);
-#line 677 "ctags-visitor.c"
+#line 691 "ctags-visitor.c"
 	}
 	_vala_code_node_unref0 (par);
 }
@@ -681,14 +695,14 @@ static void ctags_visitor_scope (ValaSym
 
 #line 153 "ctags-visitor.vala"
 static void ctags_visitor_real_visit_source_file (ValaCodeVisitor* base, ValaSourceFile* source_file) {
-#line 685 "ctags-visitor.c"
+#line 699 "ctags-visitor.c"
 	CTagsVisitor * self;
 	self = (CTagsVisitor*) base;
 #line 153 "ctags-visitor.vala"
 	g_return_if_fail (source_file != NULL);
 #line 154 "ctags-visitor.vala"
 	vala_source_file_accept_children (source_file, (ValaCodeVisitor*) self);
-#line 692 "ctags-visitor.c"
+#line 706 "ctags-visitor.c"
 }
 
 
@@ -699,7 +713,7 @@ static gpointer _ctags_entry_dup0 (gpoin
 
 #line 157 "ctags-visitor.vala"
 static void ctags_visitor_real_visit_class (ValaCodeVisitor* base, ValaClass* cl) {
-#line 703 "ctags-visitor.c"
+#line 717 "ctags-visitor.c"
 	CTagsVisitor * self;
 	CTagsEntry entry = {0};
 	char* _tmp0_;
@@ -711,7 +725,7 @@ static void ctags_visitor_real_visit_cla
 	self = (CTagsVisitor*) base;
 #line 157 "ctags-visitor.vala"
 	g_return_if_fail (cl != NULL);
-#line 715 "ctags-visitor.c"
+#line 729 "ctags-visitor.c"
 	memset (&entry, 0, sizeof (CTagsEntry));
 #line 160 "ctags-visitor.vala"
 	entry.line_number = vala_source_reference_get_first_line (vala_code_node_get_source_reference ((ValaCodeNode*) cl));
@@ -727,7 +741,7 @@ static void ctags_visitor_real_visit_cla
 	entry.implementation = (_tmp3_ = ctags_visitor_implementation ((ValaSymbol*) cl), _g_free0 (entry.implementation), _tmp3_);
 #line 166 "ctags-visitor.vala"
 	entry.inheritance = (_tmp5_ = ctags_visitor_to_string ((ValaIterable*) (_tmp4_ = vala_class_get_base_types (cl)), ","), _g_free0 (entry.inheritance), _tmp5_);
-#line 731 "ctags-visitor.c"
+#line 745 "ctags-visitor.c"
 	_vala_collection_object_unref0 (_tmp4_);
 #line 167 "ctags-visitor.vala"
 	ctags_visitor_scope ((ValaSymbol*) cl, entry.scope, 2);
@@ -735,14 +749,14 @@ static void ctags_visitor_real_visit_cla
 	self->priv->taglist = g_list_append (self->priv->taglist, _ctags_entry_dup0 (&entry));
 #line 171 "ctags-visitor.vala"
 	vala_code_node_accept_children ((ValaCodeNode*) cl, (ValaCodeVisitor*) self);
-#line 739 "ctags-visitor.c"
+#line 753 "ctags-visitor.c"
 	ctags_entry_destroy (&entry);
 }
 
 
 #line 173 "ctags-visitor.vala"
 static void ctags_visitor_real_visit_struct (ValaCodeVisitor* base, ValaStruct* st) {
-#line 746 "ctags-visitor.c"
+#line 760 "ctags-visitor.c"
 	CTagsVisitor * self;
 	CTagsEntry entry = {0};
 	char* _tmp0_;
@@ -751,7 +765,7 @@ static void ctags_visitor_real_visit_str
 	self = (CTagsVisitor*) base;
 #line 173 "ctags-visitor.vala"
 	g_return_if_fail (st != NULL);
-#line 755 "ctags-visitor.c"
+#line 769 "ctags-visitor.c"
 	memset (&entry, 0, sizeof (CTagsEntry));
 #line 175 "ctags-visitor.vala"
 	entry.line_number = vala_source_reference_get_first_line (vala_code_node_get_source_reference ((ValaCodeNode*) st));
@@ -769,14 +783,14 @@ static void ctags_visitor_real_visit_str
 	self->priv->taglist = g_list_append (self->priv->taglist, _ctags_entry_dup0 (&entry));
 #line 184 "ctags-visitor.vala"
 	vala_code_node_accept_children ((ValaCodeNode*) st, (ValaCodeVisitor*) self);
-#line 773 "ctags-visitor.c"
+#line 787 "ctags-visitor.c"
 	ctags_entry_destroy (&entry);
 }
 
 
 #line 186 "ctags-visitor.vala"
 static void ctags_visitor_real_visit_interface (ValaCodeVisitor* base, ValaInterface* iface) {
-#line 780 "ctags-visitor.c"
+#line 794 "ctags-visitor.c"
 	CTagsVisitor * self;
 	CTagsEntry entry = {0};
 	char* _tmp0_;
@@ -787,7 +801,7 @@ static void ctags_visitor_real_visit_int
 	self = (CTagsVisitor*) base;
 #line 186 "ctags-visitor.vala"
 	g_return_if_fail (iface != NULL);
-#line 791 "ctags-visitor.c"
+#line 805 "ctags-visitor.c"
 	memset (&entry, 0, sizeof (CTagsEntry));
 #line 189 "ctags-visitor.vala"
 	entry.line_number = vala_source_reference_get_first_line (vala_code_node_get_source_reference ((ValaCodeNode*) iface));
@@ -801,7 +815,7 @@ static void ctags_visitor_real_visit_int
 	entry.access = (_tmp2_ = ctags_visitor_get_access ((ValaSymbol*) iface), _g_free0 (entry.access), _tmp2_);
 #line 194 "ctags-visitor.vala"
 	entry.inheritance = (_tmp4_ = ctags_visitor_to_string ((ValaIterable*) (_tmp3_ = vala_interface_get_prerequisites (iface)), ","), _g_free0 (entry.inheritance), _tmp4_);
-#line 805 "ctags-visitor.c"
+#line 819 "ctags-visitor.c"
 	_vala_collection_object_unref0 (_tmp3_);
 #line 195 "ctags-visitor.vala"
 	ctags_visitor_scope ((ValaSymbol*) iface, entry.scope, 2);
@@ -809,14 +823,14 @@ static void ctags_visitor_real_visit_int
 	self->priv->taglist = g_list_append (self->priv->taglist, _ctags_entry_dup0 (&entry));
 #line 199 "ctags-visitor.vala"
 	vala_code_node_accept_children ((ValaCodeNode*) iface, (ValaCodeVisitor*) self);
-#line 813 "ctags-visitor.c"
+#line 827 "ctags-visitor.c"
 	ctags_entry_destroy (&entry);
 }
 
 
 #line 202 "ctags-visitor.vala"
 static void ctags_visitor_real_visit_enum (ValaCodeVisitor* base, ValaEnum* en) {
-#line 820 "ctags-visitor.c"
+#line 834 "ctags-visitor.c"
 	CTagsVisitor * self;
 	CTagsEntry entry = {0};
 	char* _tmp0_;
@@ -825,7 +839,7 @@ static void ctags_visitor_real_visit_enu
 	self = (CTagsVisitor*) base;
 #line 202 "ctags-visitor.vala"
 	g_return_if_fail (en != NULL);
-#line 829 "ctags-visitor.c"
+#line 843 "ctags-visitor.c"
 	memset (&entry, 0, sizeof (CTagsEntry));
 #line 205 "ctags-visitor.vala"
 	entry.line_number = vala_source_reference_get_first_line (vala_code_node_get_source_reference ((ValaCodeNode*) en));
@@ -843,14 +857,14 @@ static void ctags_visitor_real_visit_enu
 	self->priv->taglist = g_list_append (self->priv->taglist, _ctags_entry_dup0 (&entry));
 #line 214 "ctags-visitor.vala"
 	vala_code_node_accept_children ((ValaCodeNode*) en, (ValaCodeVisitor*) self);
-#line 847 "ctags-visitor.c"
+#line 861 "ctags-visitor.c"
 	ctags_entry_destroy (&entry);
 }
 
 
 #line 216 "ctags-visitor.vala"
 static void ctags_visitor_real_visit_error_domain (ValaCodeVisitor* base, ValaErrorDomain* edomain) {
-#line 854 "ctags-visitor.c"
+#line 868 "ctags-visitor.c"
 	CTagsVisitor * self;
 	CTagsEntry entry = {0};
 	char* _tmp0_;
@@ -859,7 +873,7 @@ static void ctags_visitor_real_visit_err
 	self = (CTagsVisitor*) base;
 #line 216 "ctags-visitor.vala"
 	g_return_if_fail (edomain != NULL);
-#line 863 "ctags-visitor.c"
+#line 877 "ctags-visitor.c"
 	memset (&entry, 0, sizeof (CTagsEntry));
 #line 219 "ctags-visitor.vala"
 	entry.line_number = vala_source_reference_get_first_line (vala_code_node_get_source_reference ((ValaCodeNode*) edomain));
@@ -877,14 +891,14 @@ static void ctags_visitor_real_visit_err
 	self->priv->taglist = g_list_append (self->priv->taglist, _ctags_entry_dup0 (&entry));
 #line 228 "ctags-visitor.vala"
 	vala_code_node_accept_children ((ValaCodeNode*) edomain, (ValaCodeVisitor*) self);
-#line 881 "ctags-visitor.c"
+#line 895 "ctags-visitor.c"
 	ctags_entry_destroy (&entry);
 }
 
 
 #line 231 "ctags-visitor.vala"
 static void ctags_visitor_real_visit_enum_value (ValaCodeVisitor* base, ValaEnumValue* ev) {
-#line 888 "ctags-visitor.c"
+#line 902 "ctags-visitor.c"
 	CTagsVisitor * self;
 	CTagsEntry entry = {0};
 	char* _tmp0_;
@@ -893,7 +907,7 @@ static void ctags_visitor_real_visit_enu
 	self = (CTagsVisitor*) base;
 #line 231 "ctags-visitor.vala"
 	g_return_if_fail (ev != NULL);
-#line 897 "ctags-visitor.c"
+#line 911 "ctags-visitor.c"
 	memset (&entry, 0, sizeof (CTagsEntry));
 #line 234 "ctags-visitor.vala"
 	entry.line_number = vala_source_reference_get_first_line (vala_code_node_get_source_reference ((ValaCodeNode*) ev));
@@ -909,14 +923,14 @@ static void ctags_visitor_real_visit_enu
 	ctags_visitor_scope ((ValaSymbol*) ev, entry.scope, 2);
 #line 241 "ctags-visitor.vala"
 	self->priv->taglist = g_list_append (self->priv->taglist, _ctags_entry_dup0 (&entry));
-#line 913 "ctags-visitor.c"
+#line 927 "ctags-visitor.c"
 	ctags_entry_destroy (&entry);
 }
 
 
 #line 244 "ctags-visitor.vala"
 static void ctags_visitor_real_visit_error_code (ValaCodeVisitor* base, ValaErrorCode* ecode) {
-#line 920 "ctags-visitor.c"
+#line 934 "ctags-visitor.c"
 	CTagsVisitor * self;
 	CTagsEntry entry = {0};
 	char* _tmp0_;
@@ -925,7 +939,7 @@ static void ctags_visitor_real_visit_err
 	self = (CTagsVisitor*) base;
 #line 244 "ctags-visitor.vala"
 	g_return_if_fail (ecode != NULL);
-#line 929 "ctags-visitor.c"
+#line 943 "ctags-visitor.c"
 	memset (&entry, 0, sizeof (CTagsEntry));
 #line 248 "ctags-visitor.vala"
 	entry.name = (_tmp0_ = g_strdup (vala_symbol_get_name ((ValaSymbol*) ecode)), _g_free0 (entry.name), _tmp0_);
@@ -939,14 +953,14 @@ static void ctags_visitor_real_visit_err
 	ctags_visitor_scope ((ValaSymbol*) ecode, entry.scope, 2);
 #line 254 "ctags-visitor.vala"
 	self->priv->taglist = g_list_append (self->priv->taglist, _ctags_entry_dup0 (&entry));
-#line 943 "ctags-visitor.c"
+#line 957 "ctags-visitor.c"
 	ctags_entry_destroy (&entry);
 }
 
 
 #line 258 "ctags-visitor.vala"
 static void ctags_visitor_real_visit_delegate (ValaCodeVisitor* base, ValaDelegate* d) {
-#line 950 "ctags-visitor.c"
+#line 964 "ctags-visitor.c"
 	CTagsVisitor * self;
 	CTagsEntry entry = {0};
 	char* _tmp0_;
@@ -958,7 +972,7 @@ static void ctags_visitor_real_visit_del
 	self = (CTagsVisitor*) base;
 #line 258 "ctags-visitor.vala"
 	g_return_if_fail (d != NULL);
-#line 962 "ctags-visitor.c"
+#line 976 "ctags-visitor.c"
 	memset (&entry, 0, sizeof (CTagsEntry));
 #line 261 "ctags-visitor.vala"
 	entry.line_number = vala_source_reference_get_first_line (vala_code_node_get_source_reference ((ValaCodeNode*) d));
@@ -976,18 +990,18 @@ static void ctags_visitor_real_visit_del
 	entry.returntype = (_tmp3_ = vala_data_type_to_qualified_string (vala_delegate_get_return_type (d), NULL), _g_free0 (entry.returntype), _tmp3_);
 #line 268 "ctags-visitor.vala"
 	entry.signature = (_tmp5_ = ctags_visitor_signature (_tmp4_ = vala_delegate_get_parameters (d)), _g_free0 (entry.signature), _tmp5_);
-#line 980 "ctags-visitor.c"
+#line 994 "ctags-visitor.c"
 	_vala_collection_object_unref0 (_tmp4_);
 #line 270 "ctags-visitor.vala"
 	self->priv->taglist = g_list_append (self->priv->taglist, _ctags_entry_dup0 (&entry));
-#line 984 "ctags-visitor.c"
+#line 998 "ctags-visitor.c"
 	ctags_entry_destroy (&entry);
 }
 
 
 #line 273 "ctags-visitor.vala"
 static void ctags_visitor_real_visit_signal (ValaCodeVisitor* base, ValaSignal* sig) {
-#line 991 "ctags-visitor.c"
+#line 1005 "ctags-visitor.c"
 	CTagsVisitor * self;
 	CTagsEntry entry = {0};
 	char* _tmp0_;
@@ -1000,7 +1014,7 @@ static void ctags_visitor_real_visit_sig
 	self = (CTagsVisitor*) base;
 #line 273 "ctags-visitor.vala"
 	g_return_if_fail (sig != NULL);
-#line 1004 "ctags-visitor.c"
+#line 1018 "ctags-visitor.c"
 	memset (&entry, 0, sizeof (CTagsEntry));
 #line 276 "ctags-visitor.vala"
 	entry.line_number = vala_source_reference_get_first_line (vala_code_node_get_source_reference ((ValaCodeNode*) sig));
@@ -1020,18 +1034,18 @@ static void ctags_visitor_real_visit_sig
 	entry.returntype = (_tmp4_ = vala_data_type_to_qualified_string (vala_signal_get_return_type (sig), NULL), _g_free0 (entry.returntype), _tmp4_);
 #line 284 "ctags-visitor.vala"
 	entry.signature = (_tmp6_ = ctags_visitor_signature (_tmp5_ = vala_signal_get_parameters (sig)), _g_free0 (entry.signature), _tmp6_);
-#line 1024 "ctags-visitor.c"
+#line 1038 "ctags-visitor.c"
 	_vala_collection_object_unref0 (_tmp5_);
 #line 286 "ctags-visitor.vala"
 	self->priv->taglist = g_list_append (self->priv->taglist, _ctags_entry_dup0 (&entry));
-#line 1028 "ctags-visitor.c"
+#line 1042 "ctags-visitor.c"
 	ctags_entry_destroy (&entry);
 }
 
 
 #line 289 "ctags-visitor.vala"
 static void ctags_visitor_real_visit_field (ValaCodeVisitor* base, ValaField* f) {
-#line 1035 "ctags-visitor.c"
+#line 1049 "ctags-visitor.c"
 	CTagsVisitor * self;
 	CTagsEntry entry = {0};
 	char* _tmp0_;
@@ -1041,7 +1055,7 @@ static void ctags_visitor_real_visit_fie
 	self = (CTagsVisitor*) base;
 #line 289 "ctags-visitor.vala"
 	g_return_if_fail (f != NULL);
-#line 1045 "ctags-visitor.c"
+#line 1059 "ctags-visitor.c"
 	memset (&entry, 0, sizeof (CTagsEntry));
 #line 292 "ctags-visitor.vala"
 	entry.line_number = vala_source_reference_get_first_line (vala_code_node_get_source_reference ((ValaCodeNode*) f));
@@ -1059,14 +1073,14 @@ static void ctags_visitor_real_visit_fie
 	entry.typeref = (_tmp3_ = vala_data_type_to_qualified_string (vala_field_get_field_type (f), NULL), _g_free0 (entry.typeref), _tmp3_);
 #line 300 "ctags-visitor.vala"
 	self->priv->taglist = g_list_append (self->priv->taglist, _ctags_entry_dup0 (&entry));
-#line 1063 "ctags-visitor.c"
+#line 1077 "ctags-visitor.c"
 	ctags_entry_destroy (&entry);
 }
 
 
 #line 303 "ctags-visitor.vala"
 static void ctags_visitor_real_visit_constant (ValaCodeVisitor* base, ValaConstant* c) {
-#line 1070 "ctags-visitor.c"
+#line 1084 "ctags-visitor.c"
 	CTagsVisitor * self;
 	CTagsEntry entry = {0};
 	char* _tmp0_;
@@ -1076,7 +1090,7 @@ static void ctags_visitor_real_visit_con
 	self = (CTagsVisitor*) base;
 #line 303 "ctags-visitor.vala"
 	g_return_if_fail (c != NULL);
-#line 1080 "ctags-visitor.c"
+#line 1094 "ctags-visitor.c"
 	memset (&entry, 0, sizeof (CTagsEntry));
 #line 306 "ctags-visitor.vala"
 	entry.line_number = vala_source_reference_get_first_line (vala_code_node_get_source_reference ((ValaCodeNode*) c));
@@ -1094,14 +1108,14 @@ static void ctags_visitor_real_visit_con
 	entry.typeref = (_tmp3_ = vala_data_type_to_qualified_string (vala_constant_get_type_reference (c), NULL), _g_free0 (entry.typeref), _tmp3_);
 #line 314 "ctags-visitor.vala"
 	self->priv->taglist = g_list_append (self->priv->taglist, _ctags_entry_dup0 (&entry));
-#line 1098 "ctags-visitor.c"
+#line 1112 "ctags-visitor.c"
 	ctags_entry_destroy (&entry);
 }
 
 
 #line 317 "ctags-visitor.vala"
 static void ctags_visitor_real_visit_property (ValaCodeVisitor* base, ValaProperty* prop) {
-#line 1105 "ctags-visitor.c"
+#line 1119 "ctags-visitor.c"
 	CTagsVisitor * self;
 	CTagsEntry entry = {0};
 	char* _tmp0_;
@@ -1112,7 +1126,7 @@ static void ctags_visitor_real_visit_pro
 	self = (CTagsVisitor*) base;
 #line 317 "ctags-visitor.vala"
 	g_return_if_fail (prop != NULL);
-#line 1116 "ctags-visitor.c"
+#line 1130 "ctags-visitor.c"
 	memset (&entry, 0, sizeof (CTagsEntry));
 #line 320 "ctags-visitor.vala"
 	entry.line_number = vala_source_reference_get_first_line (vala_code_node_get_source_reference ((ValaCodeNode*) prop));
@@ -1132,14 +1146,14 @@ static void ctags_visitor_real_visit_pro
 	entry.typeref = (_tmp4_ = vala_data_type_to_qualified_string (vala_property_get_property_type (prop), NULL), _g_free0 (entry.typeref), _tmp4_);
 #line 329 "ctags-visitor.vala"
 	self->priv->taglist = g_list_append (self->priv->taglist, _ctags_entry_dup0 (&entry));
-#line 1136 "ctags-visitor.c"
+#line 1150 "ctags-visitor.c"
 	ctags_entry_destroy (&entry);
 }
 
 
 #line 333 "ctags-visitor.vala"
 static void ctags_visitor_real_visit_method (ValaCodeVisitor* base, ValaMethod* m) {
-#line 1143 "ctags-visitor.c"
+#line 1157 "ctags-visitor.c"
 	CTagsVisitor * self;
 	CTagsEntry entry = {0};
 	char* _tmp0_;
@@ -1152,7 +1166,7 @@ static void ctags_visitor_real_visit_met
 	self = (CTagsVisitor*) base;
 #line 333 "ctags-visitor.vala"
 	g_return_if_fail (m != NULL);
-#line 1156 "ctags-visitor.c"
+#line 1170 "ctags-visitor.c"
 	memset (&entry, 0, sizeof (CTagsEntry));
 #line 336 "ctags-visitor.vala"
 	entry.line_number = vala_source_reference_get_first_line (vala_code_node_get_source_reference ((ValaCodeNode*) m));
@@ -1172,18 +1186,18 @@ static void ctags_visitor_real_visit_met
 	entry.returntype = (_tmp4_ = vala_data_type_to_qualified_string (vala_method_get_return_type (m), NULL), _g_free0 (entry.returntype), _tmp4_);
 #line 344 "ctags-visitor.vala"
 	entry.signature = (_tmp6_ = ctags_visitor_signature (_tmp5_ = vala_method_get_parameters (m)), _g_free0 (entry.signature), _tmp6_);
-#line 1176 "ctags-visitor.c"
+#line 1190 "ctags-visitor.c"
 	_vala_collection_object_unref0 (_tmp5_);
 #line 346 "ctags-visitor.vala"
 	self->priv->taglist = g_list_append (self->priv->taglist, _ctags_entry_dup0 (&entry));
-#line 1180 "ctags-visitor.c"
+#line 1194 "ctags-visitor.c"
 	ctags_entry_destroy (&entry);
 }
 
 
 #line 350 "ctags-visitor.vala"
 static void ctags_visitor_real_visit_local_variable (ValaCodeVisitor* base, ValaLocalVariable* local) {
-#line 1187 "ctags-visitor.c"
+#line 1201 "ctags-visitor.c"
 	CTagsVisitor * self;
 	CTagsEntry entry = {0};
 	char* _tmp0_;
@@ -1192,7 +1206,7 @@ static void ctags_visitor_real_visit_loc
 	self = (CTagsVisitor*) base;
 #line 350 "ctags-visitor.vala"
 	g_return_if_fail (local != NULL);
-#line 1196 "ctags-visitor.c"
+#line 1210 "ctags-visitor.c"
 	memset (&entry, 0, sizeof (CTagsEntry));
 #line 353 "ctags-visitor.vala"
 	entry.line_number = vala_source_reference_get_first_line (vala_code_node_get_source_reference ((ValaCodeNode*) local));
@@ -1206,14 +1220,14 @@ static void ctags_visitor_real_visit_loc
 	entry.access = (_tmp2_ = ctags_visitor_get_access ((ValaSymbol*) local), _g_free0 (entry.access), _tmp2_);
 #line 359 "ctags-visitor.vala"
 	self->priv->taglist = g_list_append (self->priv->taglist, _ctags_entry_dup0 (&entry));
-#line 1210 "ctags-visitor.c"
+#line 1224 "ctags-visitor.c"
 	ctags_entry_destroy (&entry);
 }
 
 
 #line 363 "ctags-visitor.vala"
 void ctags_visitor_parse_vala (CTagsVisitor* self, const char* filename, CTagsEntryMaker maker) {
-#line 1217 "ctags-visitor.c"
+#line 1231 "ctags-visitor.c"
 	GList* _tmp0_;
 	ValaCodeContext* context;
 	DummyReport* _tmp1_;
@@ -1229,7 +1243,7 @@ void ctags_visitor_parse_vala (CTagsVisi
 	context = vala_code_context_new ();
 #line 369 "ctags-visitor.vala"
 	vala_code_context_set_report (context, (ValaReport*) (_tmp1_ = dummy_report_new ()));
-#line 1233 "ctags-visitor.c"
+#line 1247 "ctags-visitor.c"
 	_g_object_unref0 (_tmp1_);
 #line 370 "ctags-visitor.vala"
 	source_file = vala_source_file_new (context, filename, g_str_has_suffix (filename, "vapi"), NULL);
@@ -1241,22 +1255,22 @@ void ctags_visitor_parse_vala (CTagsVisi
 	vala_parser_parse (self->priv->vala_parser, context);
 #line 375 "ctags-visitor.vala"
 	vala_code_context_accept (context, (ValaCodeVisitor*) self);
-#line 1245 "ctags-visitor.c"
+#line 1259 "ctags-visitor.c"
 	{
 		GList* tagentry_collection;
 		GList* tagentry_it;
 #line 376 "ctags-visitor.vala"
 		tagentry_collection = self->priv->taglist;
-#line 1251 "ctags-visitor.c"
+#line 1265 "ctags-visitor.c"
 		for (tagentry_it = tagentry_collection; tagentry_it != NULL; tagentry_it = tagentry_it->next) {
 			CTagsEntry* tagentry;
 #line 376 "ctags-visitor.vala"
 			tagentry = _ctags_entry_dup0 ((CTagsEntry*) tagentry_it->data);
-#line 1256 "ctags-visitor.c"
+#line 1270 "ctags-visitor.c"
 			{
 #line 377 "ctags-visitor.vala"
 				maker (tagentry);
-#line 1260 "ctags-visitor.c"
+#line 1274 "ctags-visitor.c"
 				_ctags_entry_free0 (tagentry);
 			}
 		}
@@ -1265,7 +1279,7 @@ void ctags_visitor_parse_vala (CTagsVisi
 	self->priv->taglist = (_tmp2_ = NULL, __g_list_free_ctags_entry_free0 (self->priv->taglist), _tmp2_);
 #line 380 "ctags-visitor.vala"
 	vala_code_context_pop ();
-#line 1269 "ctags-visitor.c"
+#line 1283 "ctags-visitor.c"
 	_vala_code_context_unref0 (context);
 	_vala_source_file_unref0 (source_file);
 }
@@ -1273,7 +1287,7 @@ void ctags_visitor_parse_vala (CTagsVisi
 
 #line 382 "ctags-visitor.vala"
 void ctags_visitor_parse_genie (CTagsVisitor* self, const char* filename, CTagsEntryMaker maker) {
-#line 1277 "ctags-visitor.c"
+#line 1291 "ctags-visitor.c"
 	GList* _tmp0_;
 	ValaCodeContext* context;
 	DummyReport* _tmp1_;
@@ -1289,7 +1303,7 @@ void ctags_visitor_parse_genie (CTagsVis
 	context = vala_code_context_new ();
 #line 385 "ctags-visitor.vala"
 	vala_code_context_set_report (context, (ValaReport*) (_tmp1_ = dummy_report_new ()));
-#line 1293 "ctags-visitor.c"
+#line 1307 "ctags-visitor.c"
 	_g_object_unref0 (_tmp1_);
 #line 386 "ctags-visitor.vala"
 	source_file = vala_source_file_new (context, filename, FALSE, NULL);
@@ -1301,22 +1315,22 @@ void ctags_visitor_parse_genie (CTagsVis
 	vala_genie_parser_parse (self->priv->genie_parser, context);
 #line 391 "ctags-visitor.vala"
 	vala_code_context_accept (context, (ValaCodeVisitor*) self);
-#line 1305 "ctags-visitor.c"
+#line 1319 "ctags-visitor.c"
 	{
 		GList* tagentry_collection;
 		GList* tagentry_it;
 #line 392 "ctags-visitor.vala"
 		tagentry_collection = self->priv->taglist;
-#line 1311 "ctags-visitor.c"
+#line 1325 "ctags-visitor.c"
 		for (tagentry_it = tagentry_collection; tagentry_it != NULL; tagentry_it = tagentry_it->next) {
 			CTagsEntry* tagentry;
 #line 392 "ctags-visitor.vala"
 			tagentry = _ctags_entry_dup0 ((CTagsEntry*) tagentry_it->data);
-#line 1316 "ctags-visitor.c"
+#line 1330 "ctags-visitor.c"
 			{
 #line 393 "ctags-visitor.vala"
 				maker (tagentry);
-#line 1320 "ctags-visitor.c"
+#line 1334 "ctags-visitor.c"
 				_ctags_entry_free0 (tagentry);
 			}
 		}
@@ -1325,7 +1339,7 @@ void ctags_visitor_parse_genie (CTagsVis
 	self->priv->taglist = (_tmp2_ = NULL, __g_list_free_ctags_entry_free0 (self->priv->taglist), _tmp2_);
 #line 396 "ctags-visitor.vala"
 	vala_code_context_pop ();
-#line 1329 "ctags-visitor.c"
+#line 1343 "ctags-visitor.c"
 	_vala_code_context_unref0 (context);
 	_vala_source_file_unref0 (source_file);
 }
@@ -1380,5 +1394,23 @@ GType ctags_visitor_get_type (void) {
 }
 
 
+static void _vala_array_destroy (gpointer array, gint array_length, GDestroyNotify destroy_func) {
+	if ((array != NULL) && (destroy_func != NULL)) {
+		int i;
+		for (i = 0; i < array_length; i = i + 1) {
+			if (((gpointer*) array)[i] != NULL) {
+				destroy_func (((gpointer*) array)[i]);
+			}
+		}
+	}
+}
+
+
+static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify destroy_func) {
+	_vala_array_destroy (array, array_length, destroy_func);
+	g_free (array);
+}
+
+
 
 

--- End Message ---
--- Begin Message ---
On Wed, Sep  8, 2010 at 17:51:40 +0200, Josselin Mouette wrote:

> anjuta (2:2.30.2.1-1) unstable; urgency=low

Unblocked.

Cheers,
Julien

Attachment: signature.asc
Description: Digital signature


--- End Message ---

Reply to: