When should you use flag or report, or is there a reason to always use one or the other?
In my current situation I will be using icons, let's say these two:
But if there are only studies based on text these are also welcome.
In general use:
Users report system problems.
Users flag community problems.
I'm not aware of any studies on the topic, so let's think about the terms semantically.
When I encounter a problem with your system I want to send it over to be placed in a queue of issues. I want to "report" it.
When I encounter something inappropriate, offensive, harmful, or malicious I want to call your immediate attention to deal with it as quickly as possible. I want to "raise a flag" to alert you.
Like I said, it's just semantics, not a study. But if you're looking for a way distinguish the two, it's a reasonable guide.
It's worth noting that this is relative to the larger system and cultural contexts. For instance, on the system side, I've worked on a couple of systems where we "flagged" things for the user. When they saw a flag in the interface, it meant that there was a pattern that needed their attention, not something they wanted to call our attention to.