diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt
index 8dbc5b0..36133d8 100644
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -3771,6 +3771,12 @@
 		Get item with key {key} from |Dictionary| {dict}.  When this
 		item is not available return {default}.  Return zero when
 		{default} is omitted.
+get({partial}, {what})
+		Get an item with from Funcref {partial}.  Possible values for
+		{what} are:
+			'func'	The function
+			'dict'	The dictionary
+			'args'	The list with arguments
 
 							*getbufline()*
 getbufline({expr}, {lnum} [, {end}])
diff --git a/src/eval.c b/src/eval.c
index a653b89..99b948c 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -12423,6 +12423,45 @@
 		tv = &di->di_tv;
 	}
     }
+    else if (argvars[0].v_type == VAR_PARTIAL)
+    {
+	partial_T	*pt = argvars[0].vval.v_partial;
+
+	if (pt != NULL)
+	{
+	    char_u *what = get_tv_string(&argvars[1]);
+
+	    if (STRCMP(what, "func") == 0)
+	    {
+		rettv->v_type = VAR_STRING;
+		if (pt->pt_name == NULL)
+		    rettv->vval.v_string = NULL;
+		else
+		    rettv->vval.v_string = vim_strsave(pt->pt_name);
+	    }
+	    else if (STRCMP(what, "dict") == 0)
+	    {
+		rettv->v_type = VAR_DICT;
+		rettv->vval.v_dict = pt->pt_dict;
+		if (pt->pt_dict != NULL)
+		    ++pt->pt_dict->dv_refcount;
+	    }
+	    else if (STRCMP(what, "args") == 0)
+	    {
+		rettv->v_type = VAR_LIST;
+		if (rettv_list_alloc(rettv) == OK)
+		{
+		    int i;
+
+		    for (i = 0; i < pt->pt_argc; ++i)
+			list_append_tv(rettv->vval.v_list, &pt->pt_argv[i]);
+		}
+	    }
+	    else
+		EMSG2(_(e_invarg2), what);
+	    return;
+	}
+    }
     else
 	EMSG2(_(e_listdictarg), "get()");
 
diff --git a/src/testdir/test_partial.vim b/src/testdir/test_partial.vim
index 8b11200..30e1df9 100644
--- a/src/testdir/test_partial.vim
+++ b/src/testdir/test_partial.vim
@@ -279,3 +279,12 @@
   call assert_equal('dict1', dict2.f2())
   call assert_equal('dict1', dict2['f2']())
 endfunc
+
+func Test_get_partial_items()
+  let dict = {'name': 'hello'}
+  let Cb = function('MyDictFunc', ["foo", "bar"], dict)
+  call assert_equal('MyDictFunc', get(Cb, 'func'))
+  call assert_equal(["foo", "bar"], get(Cb, 'args'))
+  call assert_equal(dict, get(Cb, 'dict'))
+  call assert_fails('call get(Cb, "xxx")', 'E475:')
+endfunc
diff --git a/src/version.c b/src/version.c
index 46aff53..b53a744 100644
--- a/src/version.c
+++ b/src/version.c
@@ -754,6 +754,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1839,
+/**/
     1838,
 /**/
     1837,
