I've got (set-face-attribute 'default nil :height 100) in my init.el because I find the default font size a little too large. However, it doesn't get executed when emacs is loaded.
I don't have an init.elc file that's not representative updated version of my init.el, and I know the rest of the my init.el is being executed.
There are no other (set-face-attribute ...) sexps after it that could be overwriting it.
Going back in to my init.el after loading emacs and executing it myself sets the property correctly (i.e. for all buffers (but not new frames), persistently)
init.elis not overwriting it, it could still be having no effect. Perhapsset-face-attributeis a per-buffer property? (This is all from memory). You could try putting the command in a hook that gets executed later. – alexis Oct 16 '13 at 10:10set-face-attribute . . .), well, then you have a conflict with something else in your other settings. If you have already grepped for other possibleset-face-attribute, and come up with nothing, and if you have disabled your color themes, you will need to slowly re-enable the rest of your settings until you find the conflict. Also look for frame settings with font specifications, likedefault-frame-alist. – lawlist Oct 16 '13 at 16:01