source: src/GenPoly/InstantiateGeneric.h @ bf1cbde

Last change on this file since bf1cbde was 04db9f6, checked in by Andrew Beach <ajbeach@…>, 9 months ago

Updated some documentation about the Instantiate Generic pass.

  • Property mode set to 100644
File size: 1.1 KB
RevLine 
[ea5daeb]1//
2// Cforall Version 1.0.0 Copyright (C) 2016 University of Waterloo
3//
4// The contents of this file are covered under the licence agreement in the
5// file "LICENCE" distributed with Cforall.
6//
[04db9f6]7// InstantiateGeneric.h -- Create concrete instances of generic types.
[ea5daeb]8//
9// Author           : Aaron B. Moss
10// Created On       : Thu Aug 04 18:33:00 2016
[6b0b624]11// Last Modified By : Peter A. Buhr
12// Last Modified On : Sat Jul 22 09:22:42 2017
13// Update Count     : 2
[ea5daeb]14//
15
[6b0b624]16#pragma once
[ea5daeb]17
[08fc48f]18#include <list>  // for list
19
20class Declaration;
[3606fe4]21namespace ast {
22        class TranslationUnit;
23}
[ea5daeb]24
25namespace GenPoly {
[04db9f6]26
[3606fe4]27void instantiateGeneric( std::list< Declaration* > &translationUnit );
28void instantiateGeneric( ast::TranslationUnit & translationUnit );
[04db9f6]29/// Replaces all generic types that have static layout with concrete
30/// instantiations. Sized types are replaced with the concrete argument types
31/// while unsized types are erased to a void type.
32/// This pass can cause designators to ignore the pretty print option.
33
[ea5daeb]34} // namespace GenPoly
35
36// Local Variables: //
37// tab-width: 4 //
38// mode: c++ //
39// compile-command: "make install" //
40// End: //
Note: See TracBrowser for help on using the repository browser.