diff --git a/trick_source/codegen/Interface_Code_Gen/FieldDescription.cpp b/trick_source/codegen/Interface_Code_Gen/FieldDescription.cpp index eaf5c59a..763099aa 100644 --- a/trick_source/codegen/Interface_Code_Gen/FieldDescription.cpp +++ b/trick_source/codegen/Interface_Code_Gen/FieldDescription.cpp @@ -145,6 +145,14 @@ void FieldDescription::parseComment(std::string comment) { comment = get_regex_field(comment , "(.*)@?trick_chkpnt_io[\\({]([^\\)}]+)[\\)}]" , 1) + get_regex_field(comment , "@?trick_chkpnt_io[\\({]([^\\)}]+)[\\)}](.*)" , 2) ; } + ret_str = get_regex_field(comment , "@?cio[\\({]([^\\)}]+)[\\)}]" , 1) ; + if ( ! ret_str.empty()) { + chkpnt_io = io_map[ret_str] ; + if(debug_level >= 4) std::cout << "go for cio " << io << std::endl ; + chkpnt_io_found = true ; + comment = get_regex_field(comment , "(.*)@?cio[\\({]([^\\)}]+)[\\)}]" , 1) + + get_regex_field(comment , "@?cio[\\({]([^\\)}]+)[\\)}](.*)" , 2) ; + } ret_str = get_regex_field(comment , "@?trick_io[\\({]([^\\)}]+)[\\)}]" , 1) ; if ( ! ret_str.empty()) { @@ -154,6 +162,14 @@ void FieldDescription::parseComment(std::string comment) { comment = get_regex_field(comment , "(.*)@?trick_io[\\({]([^\\)}]+)[\\)}]" , 1) + get_regex_field(comment , "@?trick_io[\\({]([^\\)}]+)[\\)}](.*)" , 2) ; } + ret_str = get_regex_field(comment , "@?io[\\({]([^\\)}]+)[\\)}]" , 1) ; + if ( ! ret_str.empty()) { + io = io_map[ret_str] ; + if(debug_level >= 4) std::cout << "go for io " << io << std::endl ; + io_found = true ; + comment = get_regex_field(comment , "(.*)@?io[\\({]([^\\)}]+)[\\)}]" , 1) + + get_regex_field(comment , "@?io[\\({]([^\\)}]+)[\\)}](.*)" , 2) ; + } /* Units can include parenthesis now. We need to match the parenthesis in