Ignore:
Timestamp:
Aug 5, 2014, 2:37:07 PM (5 years ago)
Author:
daled
Message:

Multibyte character code classes parsed from hex notation are now using named byte sequences.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • icGREP/icgrep-devel/icgrep/pbix_compiler.cpp

    r3958 r3961  
    224224            else //Name::unicode
    225225            {
    226                 std::string t_retVal = symgen.gensym("t");
    227                 std::string u_retVal = symgen.gensym("u");
    228                 std::string v_retVal = symgen.gensym("v");
    229                 std::string new_cur_retVal = symgen.gensym("new_cur");
    230 
    231                 cg_state.stmtsl.push_back(new Assign(t_retVal, new Or(new CharClass(m_name_map.find("internal.nonfinal")->second), new CharClass(rep_name->getName()))));
    232                 cg_state.stmtsl.push_back(new Assign(u_retVal, new MatchStar(new Var(cg_state.newsym), new Var(t_retVal))));
    233                 cg_state.stmtsl.push_back(new Assign(v_retVal, new And(new Var(u_retVal), new CharClass(m_name_map.find("internal.initial")->second))));
    234                 cg_state.stmtsl.push_back(new Assign(new_cur_retVal, new And(new Var(u_retVal), new Not(new Var(t_retVal)))));
    235 
    236                 cg_state.stmtsl.push_back(new Assign(gs_retVal, new Or(new Var(v_retVal), new Var(new_cur_retVal))));
     226                cg_state.stmtsl.push_back(new Assign(gs_retVal,
     227                    new And(new MatchStar(new Var(cg_state.newsym), new Or(new CharClass(m_name_map.find("internal.nonfinal")->second),
     228                                                                           new CharClass(rep_name->getName()))), new CharClass(m_name_map.find("internal.initial")->second))));
    237229            }
    238230
Note: See TracChangeset for help on using the changeset viewer.