Am I missing something?
packadd-ing an opt is fine, but something under a start is appended to my runtimepath:
C:\Users\desjardinsm/vimfiles,C:\Program Files\Vim/vimfiles,C:\Program Files\Vim\vim74,C:\Program Files\Vim\vim74\pack\dist\opt\matchit,C:\Program Files\Vim/vimfiles/after,C:\Users\desjardinsm/vimfiles/after,C:/Users/desjardinsm/vimfiles/pack/test/start/test
I don't think that mixes slashes is the problem. I have mixed slashes in my runtimepath, and it works fine. Windows happily uses either kind (or even both) without caring.
No suggestions on a fix, but thanks for the pointer! This workaround, placed at the beginning of my .vimrc, lets Vim put package directories in the correct location for now:
if has('win32')
let &runtimepath=substitute(&rtp, '/', '\\', 'g')
endif
Interestingly, going the other way (changing from backslash to forward slash) does not work, even with 'shellslash' set.