Two things I would think when looking at your post,
the first is to ask if you have you added bson Tags
to your structure, e.g., something like:
type Status struct {
Code int64 `bson:"_id"`
Type StatusType `bson:"type"`
Desc string `bson:"desc"`
}
I think that as long as you've got it typed you ought
to be able to pass in the pointer to the slice as you
were attempting.
The second, since you seem to be simply looping
through the returned structures and calling a single
function, have you considered using the Iter.Next()
function instead of getting back a slice?
...
iter := session.Find(nil).Iter()
status := Status{}
for iter.Next(&status) {
... do something with status ...
}
err = iter.Close()
if err != nil {
...