diff src/structs.h @ 19904:bd4f91762d0f v8.2.0508

patch 8.2.0508: Vim9: func and partial types not done yet Commit: https://github.com/vim/vim/commit/d77a8525d5438cae49f670eb473ef60d87ca5f54 Author: Bram Moolenaar <Bram@vim.org> Date: Fri Apr 3 21:59:57 2020 +0200 patch 8.2.0508: Vim9: func and partial types not done yet Problem: Vim9: func and partial types not done yet Solution: Fill in details about func declaration, drop a separate partial declaration.
author Bram Moolenaar <Bram@vim.org>
date Fri, 03 Apr 2020 22:15:03 +0200
parents d73d982499ae
children d4fa9db88d16
line wrap: on
line diff
--- a/src/structs.h
+++ b/src/structs.h
@@ -1342,10 +1342,14 @@ typedef struct type_S type_T;
 struct type_S {
     vartype_T	    tt_type;
     short	    tt_argcount;    // for func, partial, -1 for unknown
+    short	    tt_flags;	    // TTFLAG_ values
     type_T	    *tt_member;	    // for list, dict, func return type
-    type_T	    *tt_args;	    // func arguments
+    type_T	    **tt_args;	    // func arguments, allocated
 };
 
+#define TTFLAG_VARARGS	1	    // func args ends with "..."
+#define TTFLAG_OPTARG	2	    // func arg type with "?"
+
 /*
  * Structure to hold an internal variable without a name.
  */