Yacc file which parses C file based on tokens specified in func.l and…
 Yacc file which parses C file based on tokens specified in func.l and generates entries of global varibles, functions, threads, function definition log, semaphore and based on these entries it finds critical region in multithreaded programming.
Lex program contains tokens used to parse c source code. Done with defferent states for comments, preprocessors, double quotes, etc.
Header file contains structure of threads, funtions, globals, semaphores, log tables, etc.
Remaining with the three very important cases.
semaphore test cases that need to be handled while identifying proper locks.
Simple thread program which contains two threads with two global varibles and having some locking mechanism.