+/*--------------------------------------------.
+| Create a list containing TYPE_NAME at LOC. |
+`--------------------------------------------*/
+
+symbol_list *
+symbol_list_type_new (uniqstr type_name, location loc)
+{
+ symbol_list *res = xmalloc (sizeof *res);
+
+ res->content_type = SYMLIST_TYPE;
+ res->content.type_name = type_name;
+ res->location = loc;
+ res->next = NULL;
+
+ return res;
+}
+
+
+/*----------------------------------------.
+| Create a list containing a <*> at LOC. |
+`----------------------------------------*/
+
+symbol_list *
+symbol_list_default_tagged_new (location loc)
+{
+ symbol_list *res = xmalloc (sizeof *res);
+
+ res->content_type = SYMLIST_DEFAULT_TAGGED;
+ res->location = loc;
+ res->next = NULL;
+
+ return res;
+}
+
+
+/*---------------------------------------.
+| Create a list containing a <> at LOC. |
+`---------------------------------------*/
+
+symbol_list *
+symbol_list_default_tagless_new (location loc)
+{
+ symbol_list *res = xmalloc (sizeof *res);
+
+ res->content_type = SYMLIST_DEFAULT_TAGLESS;
+ res->location = loc;
+ res->next = NULL;
+
+ return res;
+}
+
+
+/*-----------------------------------------------------------------------.
+| Print this list, for which every content_type must be SYMLIST_SYMBOL. |
+`-----------------------------------------------------------------------*/