private void checkAttributeNamesIllegalCharacters(ValueType type) {
    for (ValueAttribute a : type.attributes) {
      if (!ATTRIBUTE_NAME_CHARS.matchesAllOf(a.name())) {
        a.report()
            .warning(About.INCOMPAT,
                "Name '%s' contains some unsupported characters (a-z,A-Z,0-9,_ are ok),"
                    + " name formatting might not work as expected",
                a.name());
      }
    }
  }
It may grow later in some better abstraction, but as it stands now, currently it is
just a glue between new "protoclass" model and old discovery routines.
value-processor/src/org/immutables/value/processor/meta/ValueTypeComposer.java