I'm not clear on exactly what you're observing. I'm also not aware of
anyone reporting a problem with the reading of 'formatoptions' at
startup, or at any other time, so I doubt very much that you've found a
bug in vim.
You say you have
set fo=cro
in your ~/.vimrc file, so it should be true that starting vim without a
file name and executing
:verbose set fo?
displays
formatoptions=cro
Last set from ~/.vimrc
Is that true? Then you say that you edit a file and type
:set formatoptions=croql
so it should be true that again executing
:verbose set fo?
displays
formatoptions=croql
without any "Last set from" line. Is that true? Then you say "it"
changes. I assume you mean the value of 'formatoptions' changes. If
so, to find out what changed it, again execute
:verbose set fo?
and see what it reports.
--
Gary Johnson