Определённая структура программы ломает отладчик


#1

Я понимаю что то как оно отображается в отладке зависит только от типа переменной, а он разный в разных случаях, но это не отвечает на главный вопрос: Почему именно в той программе в отладке отображает пустое окно для первого элемента ms? Кроме того, если свернуть и снова развернуть элементы массива ms - первый элемент всё ещё не будет показывать, но оно развернётся другого размера:

image

image

То есть оно пытается туда засунуть какую то информацию, но безуспешно…

И в конце концов, то что отладчик не может отобразить какой то тип на столько, что даже не пишет его название/то что возвращает ToString - это не правильно.


#2

Вот кстати попроще пример, хотя я очень сомневаюсь что это из той же оперы:

begin
  var ms := Arr&<object>(0, 1);
end.

Ну integer то оно должно читать? А вот нет…

image


#3

потому что COM-овский отладчик .NET его не вычисляет. исключение подавляется и показывается пустая строка. COM это гадость, поэтому придется терпеть.