patch 7.4.1073
Problem:    Alloc_id depends on numbers, may use the same one twice.  It's not
            clear from the number what it's for.
Solution:   Use an enum.  Add a function to lookup the enum value from the
            name.
diff --git a/src/alloc.h b/src/alloc.h
new file mode 100644
index 0000000..c237ef3
--- /dev/null
+++ b/src/alloc.h
@@ -0,0 +1,20 @@
+/* vi:set ts=8 sts=4 sw=4:
+ *
+ * VIM - Vi IMproved	by Bram Moolenaar
+ *
+ * Do ":help uganda"  in Vim to read copying and usage conditions.
+ * Do ":help credits" in Vim to see a list of people who contributed.
+ */
+
+/*
+ * alloc.h: enumeration of alloc IDs.
+ * Each entry must be on exactly one line, GetAllocId() depends on that.
+ */
+typedef enum {
+	aid_none = 0,
+	aid_qf_dirname_start,
+	aid_qf_dirname_now,
+	aid_qf_namebuf,
+	aid_qf_errmsg,
+	aid_qf_pattern,
+} alloc_id_T;