Language: C

#include <stdio.h>
#include <string.h>
#include <stdlib.h> 
struct Node
{
    int value;
    Node *prev,*next;
};
/*void init()*/
//{
    //node = (Node *)malloc(sizeof(Node));
    //node->prev = node;
    //node->prev = node;
    //return;
/*}*/
void insert(Node *head, int val)
{
    Node *node = (Node *)malloc(sizeof(Node));
    node->value = val;
    node->next = head->next;
    node->prev = head;
    head->next->prev = node;
    head->next = node;
} 
Node *listSearch(Node *head, int val)
{
    Node *cur = head->next;
    while(cur!=NULL && cur->value!=val)
    {
        cur = cur->next;
    }
    return cur;
}
void deleteNode(Node *node)
{
    if(node==NULL) return;
    node->prev->next = node->next;
    node->next->prev = node->prev;
    free(node);
    return;
}
void deleteFirst(Node *head)
{
    deleteNode(head->next);
    return;
}
void deleteLast(Node *head)
{
    deleteNode(head->prev);        
    return;
}

void print(Node *head)
{
    while(head->next!=head)
    {

        printf("%d",head->next->value);
        head = head->next;
        if (head->next==head) break;
        printf(" ");
    }
    printf("\n");
    return;
}

int main()
{
    int n;
    char com[20];
    int val;
    Node *node;
    node = (Node *)malloc(sizeof(Node));
    node->prev = node;
    node->next = node;
    scanf("%d",&n);
    for (int i = 0; i < n; i++)
    {
        scanf("%s %d",com,&val);
        if (com[0]=='i')
        { 
            insert(node, val); 
        } else if (com[0]=='d')
        { 
            if (strlen(com)>6)
            { 
                if (com[6]=='F')
                { 
                    deleteFirst(node->next); 
                }else if (com[6]=='L')
                {
                    deleteLast(node->prev);
                }
            } else
            {
                deleteNode(listSearch(node,val));
            }
        }
    }
    print(node);
    return 0;
}

Compiler output:
main.c:7:5: error: unknown type name 'Node'
    7 |     Node *prev,*next;
      |     ^~~~
main.c:16:13: error: unknown type name 'Node'
   16 | void insert(Node *head, int val)
      |             ^~~~
main.c:25:1: error: unknown type name 'Node'; use 'struct' keyword to refer to the type
   25 | Node *listSearch(Node *head, int val)
      | ^~~~
      | struct 
main.c:25:18: error: unknown type name 'Node'
   25 | Node *listSearch(Node *head, int val)
      |                  ^~~~
main.c:34:17: error: unknown type name 'Node'
   34 | void deleteNode(Node *node)
      |                 ^~~~
main.c:42:18: error: unknown type name 'Node'
   42 | void deleteFirst(Node *head)
      |                  ^~~~
main.c:47:17: error: unknown type name 'Node'
   47 | void deleteLast(Node *head)
      |                 ^~~~
main.c:53:12: error: unknown type name 'Node'
   53 | void print(Node *head)
      |            ^~~~
main.c: In function 'main':
main.c:72:5: error: unknown type name 'Node'; use 'struct' keyword to refer to the type
   72 |     Node *node;
      |     ^~~~
      |     struct 
main.c:73:13: error: 'Node' undeclared (first use in this function)
   73 |     node = (Node *)malloc(sizeof(Node));
      |             ^~~~
main.c:73:13: note: each undeclared identifier is reported only once for each function it appears in
main.c:73:19: error: expected expression before ')' token
   73 |     node = (Node *)malloc(sizeof(Node));
      |                   ^
main.c:74:9: error: request for member 'prev' in something not a structure or union
   74 |     node->prev = node;
      |         ^~
main.c:75:9: error: request for member 'next' in something not a structure or union
   75 |     node->next = node;
      |         ^~
main.c:82:13: error: implicit declaration of function 'insert' [-Wimplicit-function-declaration]
   82 |             insert(node, val);
      |             ^~~~~~
main.c:89:21: error: implicit declaration of function 'deleteFirst' [-Wimplicit-function-declaration]
   89 |                     deleteFirst(node->next);
      |                     ^~~~~~~~~~~
main.c:89:37: error: request for member 'next' in something not a structure or union
   89 |                     deleteFirst(node->next);
      |                                     ^~
main.c:92:21: error: implicit declaration of function 'deleteLast' [-Wimplicit-function-declaration]
   92 |                     deleteLast(node->prev);
      |                     ^~~~~~~~~~
main.c:92:36: error: request for member 'prev' in something not a structure or union
   92 |                     deleteLast(node->prev);
      |                                    ^~
main.c:96:17: error: implicit declaration of function 'deleteNode' [-Wimplicit-function-declaration]
   96 |                 deleteNode(listSearch(node,val));
      |                 ^~~~~~~~~~
main.c:96:28: error: implicit declaration of function 'listSearch'; did you mean 'bsearch'? [-Wimplicit-function-declaration]
   96 |                 deleteNode(listSearch(node,val));
      |                            ^~~~~~~~~~
      |                            bsearch
main.c:100:5: error: implicit declaration of function 'print'; did you mean 'printf'? [-Wimplicit-function-declaration]
  100 |     print(node);
      |     ^~~~~
      |     printf