#include "stdio.h"
#include "limits.h"

typedef struct TempStruct TempStruct;

struct TempStruct
{
    int a;
    TempStruct *next;
};

int function1(TempStruct *param)
{
    return param == NULL;
}

int function2(TempStruct **param)
{
    if(function1(param))
    {
        return INT_MIN;
    }
    *param = (*param)->next;
    return 0;
}

int main()
{
    TempStruct *tempStructObj = NULL;
    function2(&tempStructObj);
    printf("Does not reach here!!!");
    return 0;
}