anchor.diff:  // (as opposed to stdout and stderr which are swallowed). If given, [target]
   // is used to indicate a source code location.
   // ignore:unused_element
  -void _emitMessage(String message, [Element target]) {
  +Future<void> _emitMessage(String message, [Element target]) async {
     var formattedMessage =
  -      target != null ? _formatDiagnosticMessage(message, target) : message;
  +      target != null ? await _formatDiagnosticMessage(message, target) : message;
     log.warning(formattedMessage);
   }
  
positive.code:     }
      String metadataCode = "null";
      if (_capabilities._supportsMetadata) {
        var resolvedLibrary =
            await element.session.getResolvedLibraryByElement(element.library);
        var declaration = resolvedLibrary.getElementDeclaration(element);
        FormalParameter node = declaration.node;
        if (node == null) {
          metadataCode = "const []";
        } else {
  
negative.code:   /// is used to decide whether the output should be a simple `typedef`
    /// name or a fully spelled-out generic function type (and it has no
    /// effect when [dartType] is not a generic function type).
    Future<String> _typeCodeOfTypeArgument(
        DartType dartType,
        _ImportCollector importCollector,
        Set<String> typeVariablesInScope,
        Map<FunctionType, int> typedefs,
        {bool useNameOfGenericFunctionType = true}) async {
      Future<String> fail() async {
        log.warning(await _formatDiagnosticMessage(
            "Attempt to generate code for an "
            "unsupported kind of type: $dartType (${dartType.runtimeType}). "
            "Generating `dynamic`.",
  