Basically -n prevents the automatic arithmetic behaviour caused by setting a variable to a value of the format
<number> <arithmetic-operator> <number>.
eg. Compare the following:
//set -l %moo 1 + 1 | echo -a Normal: %moo
//set -ln %moo 1 + 1 | echo -a Using -n switch: %moo
It really should prevent the "" behaviour as well IMO so you should post this in either
Bug Reports or
Feature Suggestions.