type_reference.add_type_argument (type_arg);
}
+ if (!type_reference.check (context)) {
+ error = true;
+ return false;
+ }
+
+ context.analyzer.check_type (type_reference);
+ // check whether there is the expected amount of type-arguments
+ if (!type_reference.check_type_arguments (context)) {
+ error = true;
+ return false;
+ }
+
value_type = type_reference.copy ();
value_type.value_owned = true;
}
}
- // check whether there is the expected amount of type-arguments
- if (!type_reference.check_type_arguments (context)) {
- error = true;
- return false;
- }
-
if (symbol_reference == null && argument_list.size != 0) {
value_type = null;
error = true;
context.analyzer.check_arguments (this, new MethodType (m), m.get_parameters (), argument_list);
} else if (type_reference is ErrorType) {
- if (type_reference != null) {
- type_reference.check (context);
- }
-
if (member_name != null) {
member_name.check (context);
}
}
}
- if (!type.external_package) {
- context.analyzer.check_type (type_reference);
- }
-
// Unwrap chained member initializers
foreach (MemberInitializer init in get_object_initializer ()) {
if (!(init.initializer is MemberInitializer)) {