return_type.check (context);
if (!external_package) {
context.analyzer.check_type (return_type);
- if (return_type is DelegateType) {
- return_type.check_type_arguments (context);
- }
+ return_type.check_type_arguments (context, !(return_type is DelegateType));
}
if (return_type.type_symbol == context.analyzer.va_list_type.type_symbol) {
variable_type.check (context);
if (!external_package) {
context.analyzer.check_type (variable_type);
+ variable_type.check_type_arguments (context, true);
// check symbol availability
if (variable_type.type_symbol != null) {
}
if (!external_package) {
context.analyzer.check_type (variable_type);
+ variable_type.check_type_arguments (context, true);
}
}
return_type.check (context);
if (!external_package) {
context.analyzer.check_type (return_type);
- if (return_type is DelegateType) {
- return_type.check_type_arguments (context);
- }
+ return_type.check_type_arguments (context, !(return_type is DelegateType));
}
if (return_type.type_symbol == context.analyzer.va_list_type.type_symbol) {
if (!ellipsis) {
if (!external_package) {
context.analyzer.check_type (variable_type);
- if (variable_type is DelegateType) {
- variable_type.check_type_arguments (context);
- }
+ variable_type.check_type_arguments (context, !(variable_type is DelegateType));
// check symbol availability
if ((parent_symbol == null || !parent_symbol.external_package) && variable_type.type_symbol != null) {
property_type.check (context);
if (!external_package) {
context.analyzer.check_type (property_type);
+ property_type.check_type_arguments (context, true);
}
if (get_accessor == null && set_accessor == null) {
return_type.check (context);
if (!external_package) {
context.analyzer.check_type (return_type);
- if (return_type is DelegateType) {
- return_type.check_type_arguments (context);
- }
+ return_type.check_type_arguments (context, !(return_type is DelegateType));
}
if (return_type.type_symbol == context.analyzer.va_list_type.type_symbol) {