Report internal error for missing type argument
authorJürg Billeter <j@bitron.ch>
Sun, 1 Jun 2008 09:45:59 +0000 (09:45 +0000)
committerJürg Billeter <juergbi@src.gnome.org>
Sun, 1 Jun 2008 09:45:59 +0000 (09:45 +0000)
2008-06-01  Jürg Billeter  <j@bitron.ch>

* vala/valasemanticanalyzer.vala:

Report internal error for missing type argument

svn path=/trunk/; revision=1525

ChangeLog
vala/valasemanticanalyzer.vala

index 4b9cd30..eff7433 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2008-06-01  Jürg Billeter  <j@bitron.ch>
+
+       * vala/valasemanticanalyzer.vala:
+
+       Report internal error for missing type argument
+
 2008-05-31  Jürg Billeter  <j@bitron.ch>
 
        * vala/valasemanticanalyzer.vala:
index 1450ce2..f54d2bd 100644 (file)
@@ -2108,6 +2108,11 @@ public class Vala.SemanticAnalyzer : CodeVisitor {
                                        node_reference.error = true;
                                        return null;
                                }
+                               if (instance_type.get_type_arguments ().size <= param_index) {
+                                       Report.error (node_reference.source_reference, "internal error: missing type argument for type parameter `%s' in `%s'".printf (type_arg.type_parameter.get_full_name (), instance_type.to_string ()));
+                                       node_reference.error = true;
+                                       return null;
+                               }
                                type_arg = instance_type.get_type_arguments ().get (param_index);
                        }
                        instance_base_type.add_type_argument (type_arg);