Date: 13.12.2017 8:03:14
"По всем правилам, *v должен увеличиться на s * soe."
Укажите по какому именно правилу, иначе тема не имеет смысла. В VS 2012 например, код вообще не компилируется. Что выглядит вполне естественно: тип void не имеет определенного размера, и арифметика указателей для него применима.
Date: 13.12.2017 9:13:02
Ни в режиме С, ни в режиме С++ не компилируется.
Ошибка 1 error C2036: void *: неизвестный размер
Я про ваш первый фрагмент, а не тот который на картинке, если что (во втором вообще нет сложения void*, поэтому не понятно, в чем проблема).
"Найти точное описание для арифметики с void* я не смог"
А где искали то? В стандарте ее нет, а в расширениях GCC она определяется как арифметика для char*. (https://gcc.gnu.org/onlinedocs/gcc-5.5.0/gcc/Pointer-Arith.html)
Автор: VadimTagil