LINUX.ORG.RU

История изменений

Исправление Siborgium, (текущая версия) :

Прикинь, можно вот этого всего не делать и просто в цикле 1..5 назначить 5.

Вы же понимаете, что это игрушечный пример, так?

ок, фича возможна

то все разваливается и нужно городить еще более сложный компилятор.

Ну конечно разваливается, потому что это говно примитивное. Все индексы известны в компайл-тайме, он не может посчитать, что куда обращаться будет. И для рантайма можно было бы посчитать, это не рокет сайнс, а довольно простой проход оптимизации. Только вот оптимизацию за rustc делает ллвм, а сами они подобный анализ не осилили. Уже и на polonius мигрировали, а все еще не осилили. Жаль.

Исходная версия Siborgium, :

Прикинь, можно вот этого всего не делать и просто в цикле 1..5 назначить 5.

Вы же понимаете, что это игрушечный пример, так?

ок, фича возможна

то все разваливается и нужно городить еще более сложный компилятор.

Ну конечно разваливается, потому что это говно примитивное. Все индексы известны в компайл-тайме, он не может посчитать, что куда обращаться будет. И для рантайма можно было бы посчитать, это не рокет сайнс, а довольно простой проход оптимизации. Только вот оптимизацию за rustc делает ллвм, а сами они подобный анализ не осилили. Уже и на polonius мигрировали, а все еще не работает.