anchor.diff:        return "The 'name' argument for Intl.message must be a simple string "
             "literal.";
       }
  +    if (outerName != null && outerName != messageName.expression.value) {
  +      return "The 'name' argument for Intl.message must match "
  +          "the name of the containing function ("
  +          "'${messageName.expression.value}' vs. '$outerName')";
  +    }
       var simpleArguments = arguments.where(
           (each) => each is NamedExpression
           && ["desc", "name"].contains(each.name.label.name));
  
positive.code:             "a simple string literal";
        }
      }
    }
  
    /**
  
negative.code:    * the name.
     */
    String get name => _name == null ? computeName() : _name;
    set name(String newName) { _name = newName; }
  
    String computeName() => name = expanded((msg, chunk) => "");
  
  