Skip to content

A procedural Java to low-level C transcompiler developed for the University of Coimbra's B.S. Informatics Engineering Compilers course. Written in ANSI C with lex and yacc.

Rafael-Ribeiro/pjavac

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TODOs:
	Semantics:
		- functions with the same name as variables need to be allowed

	Semantic choices
		don't allow:
			"float[] a[]" in function parameters
			function overloading
			function var args (ellipsis)
			% and %= operators envolving floating point types (because C doesn't allow them)
		- function overload

		allow:
			for (i= 0; i < n; i++)
				int i;

			==, !=, <, >, <= and >= on strings
			redefinition of global variables (that would make them inaccessible)

TODO: LEX
	Range validation on size (http://linux.die.net/man/3/strtoll  ERANGE)

About

A procedural Java to low-level C transcompiler developed for the University of Coimbra's B.S. Informatics Engineering Compilers course. Written in ANSI C with lex and yacc.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages