code: public void annotateDefaultValueLater(JCExpression defaultValue, Env<AttrContext> localEnv,
              MethodSymbol m, DiagnosticPosition deferPos)
      {
          normal(() -> {
              JavaFileObject prev = log.useSource(localEnv.toplevel.sourcefile);
              DiagnosticPosition prevLintPos = deferredLintHandler.setPos(deferPos);
              try {
                  enterDefaultValue(defaultValue, localEnv, m);
              } finally {
                  deferredLintHandler.setPos(prevLintPos);
                  log.useSource(prev);
              }
          });
  
          validate(() -> { //validate annotations
              JavaFileObject prev = log.useSource(localEnv.toplevel.sourcefile);
              try {
                  // if default value is an annotation, check it is a well-formed
                  // annotation value (e.g. no duplicate values, no missing values, etc.)
                  chk.validateAnnotationTree(defaultValue);
              } finally {
                  log.useSource(prev);
              }
          });
      }
docs: Queue processing of an attribute default value.