DefreprXform.cxx File Reference

REPR simplification pass. More...

#include <stdint.h>
#include <stdlib.h>
#include <dirent.h>
#include <fstream>
#include <iostream>
#include <string>
#include <sstream>
#include <errno.h>
#include "Version.hxx"
#include "UocInfo.hxx"
#include "AST.hxx"
#include "Environment.hxx"
#include "inter-pass.hxx"
#include "backend.hxx"

Go to the source code of this file.

Functions

shared_ptr< ASTreprXform (shared_ptr< AST > ast, std::ostream &errStream, bool &errFree)


Detailed Description

REPR simplification pass.

For almost all purposes in the compiler, a DEFREPR form can be treated as a discriminated union form. This pass converts a DEFREPR into a closely corresponding DEFUNION, leaving a marker behind to indicate that it was really a DEFREPR.

Definition in file DefreprXform.cxx.


Function Documentation

shared_ptr<AST> reprXform ( shared_ptr< AST ast,
std::ostream &  errStream,
bool &  errFree 
)

Definition at line 66 of file DefreprXform.cxx.

References at_constraints, at_constructors, at_declares, at_declrepr, at_declunion, at_defrepr, at_defunion, at_reprctr, at_reprctrs, at_tvlist, ctr, FLD_IS_DISCM, AST::make(), and UNION_IS_REPR.


Generated on Sat Feb 4 23:59:29 2012 for BitC Compiler by  doxygen 1.4.7