Re: post C++ template/inlining resolution

"Ira Baxter" <idbaxter@semdesigns.com>
29 May 2003 03:07:54 -0400

          From comp.compilers

Related articles
post C++ template/inlining resolution simon_newsgroup@mookstar.co.uk (Simon) (2003-05-24)
Re: post C++ template/inlining resolution idbaxter@semdesigns.com (Ira Baxter) (2003-05-29)
Re: post C++ template/inlining resolution sbeasley@cs.uic.edu (2003-06-03)
Re: post C++ template/inlining resolution comeau@panix.com (2003-06-05)
Re: post C++ template/inlining resolution comeau@panix.com (2003-06-05)
| List of all articles for this month |

From: "Ira Baxter" <idbaxter@semdesigns.com>
Newsgroups: comp.compilers,comp.lang.c++
Date: 29 May 2003 03:07:54 -0400
Organization: Compilers Central
References: 03-05-174
Keywords: C++
Posted-Date: 29 May 2003 03:07:54 EDT

"Simon" <simon_newsgroup@mookstar.co.uk> wrote in message
news:03-05-174@comp.compilers...
> I would like somehow to be able to define a set of C++ template types
> (including inline methods that are fairly simple), and pass it through
> something to get out an intermediate version (in C or some
> representation that is vaguely human readable) ...
> Is there anything out there to do this, be it a primary function or
> some flag that dumps out an intermediate representation of some form.


So you want the templates expanded and then want to see the source? I
don't know any compiler switches that do this.


The DMS Software Reengineering Toolkit has a C++ front end, parses C++
into ASTs and does full name and type resolution. We've talked about
expanding out the templates literally and then printing the tree. We
haven't done it, but with type information and DMS's ability to
compose trees, this seems like it would be straightforward to do. May
be a bit more work than you want to go through to get this result.


See http://www.semdesigns.com/Products/DMS/DMSToolkit.html.


--
Ira D. Baxter, Ph.D., CTO 512-250-1018
Semantic Designs, Inc. www.semdesigns.com


Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.