Commit Graph

90 Commits

Author SHA1 Message Date
Jacqueline Deans
746311c06e
Exclude memory manager int64_t tests on 32 bit architectures (#1494) 2023-05-01 15:50:39 -05:00
jmpenn
9438bd559b
Add unittests to cover uncovered code in MemoryManager ADEF_ and REF_… (#1483)
* Add unittests to cover uncovered code in MemoryManager ADEF_ and REF_ parsers.

* Remove the second production of the 'user_defined_type' target
because it is superfluous, and impossible to reach. This is
because the NAME token is defined as pattern : '[_a-zA-Z][_a-zA-Z0-9:]*'.
This pattern will always match a string of colon separated names.
Note that the NAME itoken is used for colon separated type-name as well as
colon separated variable names.

* Add a test to MM_declare_var_unittest that covers the HEX token in adef_parser.l.

* Add a unittest for MemoryManager_JSON_Intf.cpp.

* Tweak MM_JSON_Intf.cc to get better code-coverage.
2023-04-27 14:57:55 -05:00
John M. Penn
d3a26b5698 Deleting parameter_types.c. #1482 2023-04-10 12:46:58 -05:00
jmpenn
1b0def8886
Add unit test suite for trickTypeCharString(). (#1467)
* Add unit test suite for trickTypeCharString().

* Rewrite MM test Makefile, Address type warnings in tests.

* Fix test target in Makefile
2023-04-05 15:28:14 -05:00
jmpenn
9478b6a442
Fix mm_mutex locking and unlocking fiasco in clear_all_vars. #1452 (#1455) 2023-02-10 14:06:27 -06:00
Jacqueline Deans
8be3e30f7a
Fix Mac pipeline (#1454) 2023-02-07 15:35:22 -06:00
jmpenn
2a03ff5cf4
Replace sprintf with snprintf in all of Trick source. #1384 (#1392)
* Replace sprintf with snprintf in all of Trick source. #1384

* Don't add -Werror for MacOS because of deprecated sprintf warnings which we cant get rid of because SWIG. #1384

* Fixed an unbalanced parenthesis in S_overrides.mk. #1384
2022-11-15 15:00:05 -06:00
Jacqueline Deans
900f7b18be
Generate test coverage and use Coveralls for tracking and visualization (#1366)
* Add code-coverage make target and github actions workflow
* Upload coverage to coveralls
* Add coverage badge to readme
* Fix some test makefiles to correctly propagate flags
2022-10-13 14:23:16 -05:00
Jacqueline Deans
2519c914a5
Pair checkpointing fix (#1356)
* Fix pair checkpointing bug, add tests
* Documentation update
2022-10-07 17:00:09 -05:00
Jacqueline Deans
3d2e8e52ca
Set checkpointing fix (#1357)
* Fix set checkpointing, add tests
* Documentation update
2022-10-07 14:24:21 -05:00
Jacqueline Deans
f19ba7df78
Test and Document STL Checkpointing (#1355)
* Updates SIM_stl to include checkpoint writing and checkpoint restore, as well as adding more data structures to test
* Thoroughly tests supported STL types with MM_stl_checkpoint and MM_stl_restore
* Adds an option to enable or disable STL restore in accessible interfaces and changes default to true
* Updates documentation on STL checkpointing to clearly state limitations and known bugs
2022-10-07 08:37:09 -05:00
John M. Penn
8eea9e9ab9 Make MemoryManager::reset_memory and class destructors coordinate the deletion of objects. #1348 2022-09-26 16:54:41 -05:00
Thomas Brain
433ae34e55
Fix clearing arrays of strings (#1337)
#1335
2022-08-25 11:05:26 -05:00
Thomas Brain
8132c00165 Fix issue with writing to an array of std::strings. Use sizeof(std::string) instead of sizeof(char *). 2022-08-24 09:53:57 -05:00
John M. Penn
58cbf24d5a Remove 2 arg delete_var unit test case. #1301 2022-07-28 16:43:26 -05:00
John M. Penn
d94d5fc863 Remove destroy flag from MemoryManager::delete_var(). #1301 2022-07-28 15:00:55 -05:00
Scott Fennell
0d60ef0b6f
iss #1219 #1223 #1224 reference ignored in name from address (#1222)
* #1219 added code to check reference mod bit in ClassicCheckPointAgent::getCompositeSubReference, use reference width instead of size.

* #1219 refactor getCompositeSubReference for readability

* #1219 and #1223 add reference width to mod bits in ICG

* check for mod bits in TRICK_STRUCTURED section, refactor function

* #1219 adding MM_ref_name_from_address tests

* #1224 fix logic for offset into arrayed struct

closes #1219 closes #1223 closes #1224 

Co-authored-by: Fennell, Scott P 263712616 <scott.p.fennell@nasa.gov>
2022-02-08 09:59:26 -06:00
Scott Fennell
acdc60050c
change c_intf ref_attributes param to const char ptr, remove casts from calls to function in trick (#1135)
closes #1129 

Co-authored-by: Fennell, Scott P 263712616 <scott.p.fennell@nasa.gov>
2021-05-26 22:12:02 -05:00
Scott Fennell
6691b14e9e
1093 c str (#1119)
* update checkpoint_map.hh #1093

* #1093 update checkpoint_pair.hh

* #1093 update checkpoint_queue.hh

* #1093 update MM_write_checkpoint.cc

* #1093 update units_attach.i

* #1093 update checkpoint_sequence_stl.hh

* #1093 update checkpoint_stack.hh

* #1093 update swig_extend_str.i

* #1093 update swig_int_templates.hh

* #1093 update checkpoint_stack.hh and swig_int_typemap.i

* #1093 fix c_str issue without adding memory leaks

* #1093 fix c_str issue without adding memory leaks

* #1093 remove dangling pointers in injector sim object (without causing memory leaks)

* #1093 remove dangling pointers in injector sim object (without causing memory leaks)

* #1093 remove dangling pointers in Event Manaager sim object (without causing memory leaks)

* #1093 fix MonteCarlo_c_intf dangling pointers

Co-authored-by: Fennell, Scott P 263712616 <scott.p.fennell@nasa.gov>

closes #1093
2021-03-12 13:23:35 -06:00
Derek Bankieris
c428bce49d Add support for references in MM::ref_name
Add an AO_DEREFERENCE ADDRESS_NODE to R->address_path and dereference the
address for REF2->address
2021-02-11 17:36:43 -06:00
Derek Bankieris
1e8228e344 Use -isystem for Trick and Python headers
Closes #1067
2020-10-23 08:28:01 -05:00
Scott Fennell
b724f502b3
fix 32 bit test (#953)
* fix tests for 32 bit mode

* fix issues with mongoose build

* Update docker.yml
2020-02-14 10:23:19 -06:00
Alex Lin
ce0cdc9636
Cmake merge (#901)
* Merging changes from cmake branch to master

* Fixing includes for renamed header files

* still need build rule

* Adding warning for swig code for gcc8+

* Adding CMakeLists.txt for data products

* Cmake merge #901

Making adjustments to get cmake working on the Mac (Mojave)

* Cmake merge #901

Changing string append to list append
2019-11-19 09:01:16 -06:00
Derek Bankieris
04d5f5dd80 Add support for char-sized enums
Fixes #876
2019-10-01 12:26:57 -05:00
sfennell
8ac5cf7a59 changes to support llvm 9.0 closes #869 2019-09-27 16:04:16 -05:00
Scott Fennell
82bae3b0d0 #836 remove all S_default.dat stuff 2019-07-09 15:58:26 -05:00
Derek Bankieris
d135353c90 Infer TRICK_HOME in Makefiles
Closes #358
2019-06-21 13:15:22 -05:00
Alex Lin
497f11f132
Make TRICK_CXX variable to specify c++ compiler #767 (#815)
Changed all references of TRICK_CPPC to TRICK_CXX.  Added a
warning message that TRICK_CPPC has been deprecated.
2019-06-18 11:00:08 -05:00
Scott Fennell
9be53ebb9b #776 default restore_stls to false 2019-06-03 09:44:35 -05:00
Scott Fennell
7f7adca0ac #776 .dat files don't call restore_stls in checkpoint restore 2019-06-01 10:48:31 -05:00
jmpenn
3f35388b49
Change std::endl to linefeed as appropriate. (#773)
* Fix endl issue in variable server JSON generation. Ref #766

* Change std::endl to line feed as appropraite. #766

* Change std::endl to line feed in MemoryManager as appropriate. #766

* Change std::endl to linefeed as appropriate. #766

* Change std::endl to line feed as appropriate in JSONVariableServer. #766

* Change std::endl to line feed as appropriate in still more files. #766
2019-05-13 16:05:01 -05:00
Penn, John M 047828115
0f037e6817 Update trickTypeCharString() for STLs, so their names can be generated. #755 2019-04-17 16:43:12 -05:00
Penn, John M 047828115
05e9535518 Add MemoryManager methods to generate JSON for allocation info. #755 2019-04-17 16:35:29 -05:00
Pappy Van Winkle
af2575da5b Remove all unused variables (style warning). 2018-10-11 22:05:50 -05:00
jmpenn
fccf32093b
Explicitly specify void arg for C functions that take no arguments. (#670)
* Clock empty args to void

* command_line func empty args to void

* DataRecord func empty args to void

* debug_pause func empty args to void

* echojobs func empty args to void

* ExternalApplication func empty args to void

* FrameLog func empty args to void

* MasterSlave func empty args to void

* MonteCarlo func empty args to void

* outdllist func proto empty args to void

* sie func empty args to void

* SimTime func empty args to void

* UnitTest func empty args to void

* var_server func empty args to void

* wcs func empty args to void
2018-09-19 11:25:04 -05:00
jmpenn
7b694931ef
Warning fixes (#658)
* Suppress expected, benign warnings from Bison and Flex generated code.

* Trick::MessageThreadedCout::thread_body should return NULL.
2018-08-16 16:02:11 -05:00
John M. Penn
adf4482135 Update MemoryManager::delete_var to just issue a warning message when debug_level > 0. ref #595 2018-04-10 15:34:06 -05:00
John M. Penn
f3be6c9ec0 Add a Memory Manager Test and a MM input parser error msg fix. Ref #587 2018-04-06 15:18:33 -05:00
Christopher LaChance
6184aa6cd9
Some unit test warnings addressed. (#515)
* Removed purple warnings from unit test compilation.

* "Fixed const corectness bug. Added more warning fixes."

* Fixed warning issue.

* Removed null checking and (char*) casting.

* Changed sizeof parameter to variable from data structure.
2017-11-29 15:35:16 -06:00
Thadeus Fleming
bf2759c5c0 Remove deprecated dynamic exception specifiers.
Resolves #461
2017-07-28 20:49:42 -05:00
John M. Penn
9a5bbb160a Get rid of yyset_lineno in the parsers. Ref #404 2017-03-30 19:53:33 -05:00
John M. Penn
56ce1c75cc Fix yyset_out, yyset_lineno calls and remove yyset_in calls in parsers. Ref #404 2017-03-30 16:14:28 -05:00
Alex Lin
2450f51781 Add name of parameter to error message coming out of MemoryManager_restrore_stls #382
Printing the name now.
2017-02-15 09:00:34 -06:00
Alex Lin
a831cbfaa8 Merge pull request #366 from iamthad/use_stderr
Use std::cerr instead of std::cout for error messages
2016-12-20 15:02:23 -06:00
Derek Bankieris
7a08829d3d Introduce makefile variable TRICK_SYSTEM_LDFLAGS
Like other TRICK_SYSTEM variables, users should not modify this.

This renders TRICK_LDFLAGS and TRICK_USER_LINK_LIBS redundant. While we
would like to eventually remove TRICK_USER_LINK_LIBS, it's not likely to
ever actually happen.

Refs #369
2016-12-14 12:36:21 -06:00
Thadeus Fleming
fb1925e0d8 Use std::cerr instead of std::cout for error messages 2016-12-10 11:49:44 -06:00
Michael Vetter
18f0d7e871 Remove trailing whitespaces
Makes it easier to edit the files. So if we press 'end of line' we are
really at the end of line.
2016-11-08 10:25:07 +01:00
Alex Lin
d875f837f2 ICG produces non-compilable io_* code for this weird example #334
When saving the list of namespaces and classes a particular type is contained in
we have to save the class name and any template args it includes separately.  This
allows us to mangle the names easier.  And we now search for type names to see
if they follow this pattern template_name<template_args>::embedded_class.  If
we are using a template embedded class we need to create attributes for the embedded class.
2016-11-02 13:56:40 -05:00
Derek Bankieris
5484e39f11 Fix spacing in warning message 2016-10-21 10:50:11 -05:00
Derek Bankieris
4f49460a6f Clean up io_* code #330 2016-10-20 14:55:00 -05:00