Typically used with umbrella headers, e.g. GTK:
#if !defined (GTK_H_INSIDE) && !defined (GTK_COMPILATION)
#error "Only <gtk/gtk.h> can be included directly."
#endif
Heuristic is fairly conservative, a quick code search over github showed
a fair number of hits and few/no false positives. (Not all were umbrella
headers, but I'd be happy avoiding include insertion for all of them).
We may want to relax the heuristic later to catch more cases.
DontIncludeMePattern or DontIncludeMeRegex?