Skip to content

rottiakash/SSCD_Function_Parser

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SSCD_Function_Parser

SS&CD Project

Steps to run

Make sure LEX,YACC and python3 is installed

To install on Ubuntu using apt package manager:

sudo apt-get install bison flex

To run the program:

./run.sh

Example

Input file

#include <stdio.h>
int a = 10;
int b = 20;

int add(int, int);

void main()
{
    int sum = add(a, b);
    printf("The sum is %d", sum);
}

int add(int a, int b)
{
    return (a + b);
}

Execution

Execution Terminal

Output


Function Declaration Parsed
Function Name: add
Function Return Type: int
Number of Parameter:2
Parameter of type int
Parameter of type int

*****************


Function Defination Parsed
Function Name: main
Function Return Type: void
Number of Parameter:0

*****************


Function Defination Parsed
Function Name: add
Function Return Type: int
Number of Parameter:2
Parameter b of type int
Parameter a of type int

*****************

Starting static type checker
[
    {
        "type": "Declaration",
        "params": [
            "int",
            "int"
        ],
        "name": "add",
        "Return Type": "int"
    },
    {
        "type": "Defination",
        "params": [],
        "name": "main",
        "Return Type": "void"
    },
    {
        "type": "Defination",
        "params": [
            "int",
            "int"
        ],
        "name": "add",
        "Return Type": "int"
    }
]

*****************


No Type Errors found

*****************