import org.checkerframework.common.reflection.qual.MethodVal;

public class MethodNameTest {
  @MethodVal(className = "", methodName = "_MethodName", params = 0) Object o;

  @MethodVal(className = "", methodName = "$methname", params = 0) Object o1;

  @MethodVal(className = "", methodName = "Method_Name", params = 0) Object o2;

  @MethodVal(className = "", methodName = "<init>", params = 0) Object o3;

  // :: error: (illegal.methodname)
  @MethodVal(className = "", methodName = "[]MethodName", params = 0) Object o4;
  // :: error: (illegal.methodname)
  @MethodVal(className = "", methodName = "Meht.name", params = 0) Object o5;
  // :: error: (illegal.methodname)
  @MethodVal(className = "", methodName = ".emethos", params = 0) Object o6;

  @MethodVal(
      className = "c",
      methodName = "m",
      params = {0, 0})
  // :: error: (invalid.methodval)
  Object o7;

  @MethodVal(
      className = "c",
      methodName = {"m", "m"},
      params = {0, 0})
  // :: error: (invalid.methodval)
  Object o8;

  @MethodVal(
      className = "c",
      methodName = {"m", "m"},
      params = {0})
  // :: error: (invalid.methodval)
  Object o9;
}
