Running
"
R.<x, y> = QQ[]
F = FreeModule(R, 1)
G = F.submodule([F([0])])
vec = F([1])
vec in G
"
returns True (at least in Sage 9.8 and 10.6 which I've tested). This is not the expected behaviour, unless I have wildly misunderstood some implicit assumptions made about the module; I would expect G to be the R-span of [0], i.e. just {[0]}, which should not contain [1]. This behaviour does not occur if the first line is just "R.<x> = QQ[]", and does not look to depend on whether the QQ, ZZ, GF(p), CC, etc. are taken.
I have search the existing issues and cannot find a mention of this bug. I do not know how to investigate it, as I don't know how the "vec in G" is implemented, but if someone can point me to that I can investigate.