* Fix several bugs with processing templates in ICG
- Fixed an issue where io_src code for some templates was being placed in the
wrong file.
- Fixed an issue with templates being instantiated with templates as parameters.
- Fixed an issue with templates that instantiate templates.
Added additional tests to cover these cases.
* Moved the list of template argument header dependencies from ClassValues to PrintFileContents10 so they can be printed to the io_ file regardless of the order in which class info is printed.
* Moved the list of template argument header dependencies from ClassValues to PrintFileContents10 so they can be printed to the io_ file regardless of the order in which class info is printed.
Moved the list of template argument header dependencies from ClassValues to PrintFileContents10 so they can be printed to the io_ file regardless of the order in which class info is printed.
* Added support to handle template enum class type argument and removed some commented code.
Added support to handle template enum class type argument and removed some commented code.
---------
Co-authored-by: Hong Chen <hchen99@users.noreply.github.com>
Added a new environment variable TRICK_ICG_IGNORE_TYPES. Class/struct/enum
types found in this semicolon delimited list will not have attributes written
out.
Check the return value of CXXRecordVisitor::TraverseCXXRecordDecl and
don't add information from excluded parents.
Add a parameter to PrintAttributes::isHeaderExcluded to toggle exlusion
of TRICK_EXT_LIB_DIRS paths. When traversing a CXX record, we don't
actually want to skip these paths since their io code should exist in
the Trickified library.
Fix memory leak.
Refs #435
Added a new TRICK_EXT_LIB_DIRS variable that allows users to
tell Trick about external libraries, rather than trying to
use TRICK_EXCLUDE. Added back getting multiple library dependency
sections from source files.
refs #86
Moved most generated files into the build directory. All object code,
io_src realated files, and swig related files are now in build.
Realized that ICG should be creating the makefile for the io_src
code. ICG knows which files it created.
refs #80
Added 2 flags to trick-ICG. "-o" will specify an output directory. Added this
option to the calls to trick-ICG for the Memory Manager tests. Also added
a "-m" option to create the map files ICG creates for sims. The memory manager
tests do not need these maps so we don't include the option. Added the -m option
to the sim makefile and the master makefile so we do create the map when compile
Trick core and sims.
refs #72
Changed all header file once include variables to follow the same naming
convention and not start with any underscores. Also deleted old
incorrect copyright notices. Also removed $Id: tags from all files.
Fixes#14. Fixes#22.