anchor.diff:          query: query,
           viewQuery: viewQuery);
     }).toList();
  +}
  +
  +final Logger _deprecationLogger = new Logger('angular2.transformer');
  +void _reportDeprecation(
  +    ClassDeclaration classDecl, CompileQueryMetadata query) {
  +  String source = classDecl == null
  +      ? '${query?.propertyName}'
  +      : 'in class ${classDecl.name.name}';
  +  _deprecationLogger.warning('Queries inside constructors are deprecated, '
  +      'please replace with query annotations on fields $source');
   }
   
   Annotation _getAnnotation(p, String attrName) =>
  
positive.code:           moduleUrl: toAssetUri(_assetId),
            name: node.name.toString(),
            diDeps: _getCompileDiDependencyMetadata(
                node.functionExpression.parameters, {}),
            runtime: null // Intentionally `null`, cannot be provided here.
            );
      }
  
negative.code:     if (_hasAnnotation(p, "Query")) {
        query =
            _createQueryMetadata(_getAnnotation(p, "Query"), null, first: false);
        _reportDeprecation(classDecl, query);
      }
      if (_hasAnnotation(p, "ContentChildren")) {
        query = _createQueryMetadata(_getAnnotation(p, "ContentChildren"), null,
            defaultDescendantsValue: true, first: false);
        _reportDeprecation(classDecl, query);
      }
  
      var viewQuery;
      if (_hasAnnotation(p, "ViewQuery")) {
        viewQuery = _createQueryMetadata(_getAnnotation(p, "ViewQuery"), null,
            first: false);
        _reportDeprecation(classDecl, viewQuery);
      }
      if (_hasAnnotation(p, "ViewChildren")) {
        viewQuery = _createQueryMetadata(_getAnnotation(p, "ViewChildren"), null,
            defaultDescendantsValue: true, first: false);
        _reportDeprecation(classDecl, viewQuery);
      }
      if (token == null) {
        throw new ArgumentError(
  