anchor.diff:        final body = getSyntheticMethod(context, declarationId).second;
         return Some(Tuple2(body, BodyAstToHirIds()));
       }
  +    if (!hasBody(context, declarationId)) return None();
   
       if (declarationId.isFunction) {
         final functionAst = getFunctionDeclarationAst(context, declarationId);
  -      if (functionAst.body == null) return None();
  +      assert(functionAst.body != null);
   
         final result = FunctionContext.lowerFunction(context, declarationId);
         // ignore: only_throw_errors, Iterables of errors are also handled.
  
positive.code:                     moduleIdToDeclarationId(queryContext, it.virtualModuleId)))
                  .expand((trait) => trait.innerDeclarationIds)
                  .where((it) => it.isFunction)
                  .where((it) => getBody(queryContext, it) is Some));
            }))
            .where((id) => id.simplePath.last.nameOrNull == name)
            .mapNotNull((id) {
  
negative.code:             } else if (id.isFunction) {
                final functionHir = getFunctionDeclarationHir(queryContext, id);
                if (functionHir.isStatic) return null;
  
                // TODO(JonasWanke): fix this 💩
                final petitParserExceptionResourceId = ResourceId(
                  PackageId('petit_parser'),
                  'src/parsers/module.candy',
                );
                final baked =
                    declarationId.resourceId == petitParserExceptionResourceId &&
                            declarationId.simplePath.last.nameOrNull == 'end'
                        ? functionHir.functionType
                            .bakeThisType(type)
                            .bakeGenerics(genericsMap)
                        : functionHir.functionType
                            .bakeThisType(type)
                            .bakeGenerics(genericsMap)
                            .bakeGenerics(genericsMap)
                            .bakeGenerics(genericsMap);
                return hir.PropertyIdentifier(
                  id,
                  baked,
                  isMutable: false,
                  base: target,
                  receiver: target,
  