The third project involves writing the semantic analyzer

Assignment Help Computer Engineering
Reference no: EM13380142

The third project involves writing the semantic analyzer for the compiler that was begun in the previous projects. To simplify the semantic error checking, you are to remove the ability to have multiple functions from the grammar and the ability to make function calls.

In order to perform semantic analysis, the symbol table must be completed in this project. The 70 points that you will receive for the functionality portion of your grade on this project will be based on how many of the following errors that you can detect:

Using Boolean Expression with Arithmetic Operator 5 points
Using Boolean Expression with Relational Operator 5 points
Using Arithmetic Expression with Logical Operator 10 points
Conditional Expression Type Mismatch 5 points
If Condition Not Boolean 5 points
Narrowing Variable Initialization 5 points
Variable Initialization Mismatch 5 points
Undeclared Variable 10 points
Duplicate Variable 10 points
Narrowing Function Return 10 points

Test data that contains each of the following errors will be provided.

This project requires modification to the bison input file, so that it defines the semantic checks necessary to produce these errors and the inclusion of a symbol table to keep track of the declared identifiers.

Variables and parameter names have local scope. The scope rules require that all names be declared and prohibit duplicate names within the same scope. The type correspondence rules are as follows:

  • Boolean operators cannot be used with arithmetic or relational operators.
  • Arithmetic expressions cannot be used with logical operators.
  • The two expressions in a conditional expression must match in type. No coercion is performed.
  • The type of the if condition must be Boolean.
  • A narrowing variable initialization or function return occurs when a real value is being forced into integer. Widening is permitted.
  • Boolean types cannot be mixed with numeric types in variable initializations or function returns.
  • Type coercion from an integer to a real type is performed within arithmetic expressions.

Like syntax errors, the compiler should display the semantic errors in the compilation listing, after the line in which they occur.

Reference no: EM13380142

Questions Cloud

Using a random number generator create an input file that : using a random number generator create an input file that contains 25 numbers ranging from 50 to 100 store those
You have been asked to be the project manager for the : you have been asked to be the project manager for the development of an information technology it project. the system
There will be projects that require a last-minute push to : there will be projects that require a last-minute push to meet the scheduled deadline. in spite of all of the careful
Harley-davidsonmanufactures high-end motorcycles and sells : harley-davidsonmanufactures high-end motorcycles and sells them worldwide. the company sells more than 4 billion in
The third project involves writing the semantic analyzer : the third project involves writing the semantic analyzer for the compiler that was begun in the previous projects. to
Your company is currently investigating the use of linux : your company is currently investigating the use of linux. your manager has asked you to research the feasibility of
1 implement both encryption and decryption of the vigenere : 1. implement both encryption and decryption of the vigenere cipher with 26 english letters and 1 space character in
Convolving with user defined kernelsas described previously : convolving with user defined kernelsas described previously the smooth function gives equal weight to the neighbouring
Have you ever visited a web site and wondered what the : have you ever visited a web site and wondered what the company was thinking when they created it? or perhaps youve

Reviews

Write a Review

Computer Engineering Questions & Answers

  The aim of this assignment is for you to think about the

the aim of this assignment is for you to think about the appropriateness of different kinds of conceptual models that

  How to create a class that player guess anumber

make a class that player guess anumber, the application generates a random number, and player determine whether they are correct. Display a message indicating whether the players guess was correct, too high or too low.

  Illustrate general network design

Illustrate general network design

  Determining the asymptotic formula

Provide an asymptotic formula for each of the following recurrence equations, utilizing big “Θ” rather than just big “O” for better results whenever possible.

  Discuss how a cio might handle schrage scenarios

Must businesses choose between good ethics and financial benefits? Explain your answer using Schrage's scenarios or your own examples.

  1 you may use up to two pages and single-space for this

1. you may use up to two pages and single-space for this question consider a skate rental shop that has two rental

  Write a function named filteronmax that takes a queue

Write a function named filterOnMax that takes a queue of integers and an integer value named max as parameters and returns a new queue of integers that contains only the values in the original queue that are less than or equal to the value of max.

  What are the reasons of project failure

Make sure to contain how and why project was initiated, what setting up was done, how plan went wrong and what was done to solve the trouble. What are the reasons of project failure

  Questionthis is from my the essentials of computer

questionthis is from my the essentials of computer organization and architecture book its 3rd edition and website only

  Write down a program that has a function named presentvalue

Write down a program that has a function named presentValue

  Design a script that will allow the user to enter one

make a script that will allow the user to enter one of several choices from the command line.

  Utilization of authentication

In the 802.11i, authentication always utilizes the SSL/TLS, Outer, Inner, Both A and B, Neither A nor B.

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd