PyCallExpression (@Nullable PyExpression source) { if (source instanceof PyCallExpression call) { final PyExpression callee = call.getCallee(); if (callee instanceof PyReferenceExpression ref) { if (!ref.isQualified() && PyNames.PROPERTY.equals(callee.getName()) && (isBuiltinFile(source.getContainingFile()) || PyResolveUtil.resolveLocally(ref).stream().allMatch(Objects::isNull))) { // we assume that a non-local name 'property' is a built-in name. // ref.resolve() is not used because we run in stub building phase where resolve() is frowned upon. // NOTE: this logic fails if (quite unusually) name 'property' is directly imported from builtins. return call; } } } return null; }