рд╢реБрдХреНрд░рд╡рд╛рд░, 2 рдСрдЧрд╕реНрдЯ рд░реЛрдЬреА, re2c, C рдЖрдгрд┐ C++ рднрд╛рд╖рд╛рдВрд╕рд╛рдареА рд▓реЗрдХреНрд╕рд┐рдХрд▓ рд╡рд┐рд╢реНрд▓реЗрд╖рдХрд╛рдВрдЪреЗ рд╡рд┐рдирд╛рдореВрд▓реНрдп рдЬрдирд░реЗрдЯрд░, рд░рд┐рд▓реАрдЬ рдЭрд╛рд▓реЗ. Re2c рд╣реЗ 1993 рдордзреНрдпреЗ рдкреАрдЯрд░ рдмрд╛рдВрдмреМрд▓рд┐рд╕ рдпрд╛рдВрдиреА рдЕрддрд┐рд╢рдп рд╡реЗрдЧрд╡рд╛рди рд▓реЗрдХреНрд╕рд┐рдХрд▓ рд╡рд┐рд╢реНрд▓реЗрд╖рдХрд╛рдВрдЪреЗ рдкреНрд░рд╛рдпреЛрдЧрд┐рдХ рдЬрдирд░реЗрдЯрд░ рдореНрд╣рдгреВрди рд▓рд┐рд╣рд┐рд▓реЗ рд╣реЛрддреЗ, рдЬреЗ рдЬрдирд░реЗрдЯ рдХреЗрд▓реЗрд▓реНрдпрд╛ рдХреЛрдбрдЪреНрдпрд╛ рдЧрддреАрдиреЗ рдЖрдгрд┐ рд╡рд┐рд▓рдХреНрд╖рдг рд▓рд╡рдЪрд┐рдХ рд╡рд╛рдкрд░рдХрд░реНрддрд╛ рдЗрдВрдЯрд░рдлреЗрд╕рджреНрд╡рд╛рд░реЗ рдЗрддрд░ рдЬрдирд░реЗрдЯрд░рдкреЗрдХреНрд╖рд╛ рд╡реЗрдЧрд│реЗ рд╣реЛрддреЗ рдЬреЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдХрд╛рдВрдирд╛ рд╡рд┐рджреНрдпрдорд╛рди рдХреЛрдб рдмреЗрд╕рдордзреНрдпреЗ рд╕рд╣рдЬ рдЖрдгрд┐ рдХрд╛рд░реНрдпрдХреНрд╖рдорддреЗрдиреЗ рдПрдореНрдмреЗрдб рдХреЗрд▓реЗ рдЬрд╛рдК рд╢рдХрддреЗ. рддреЗрд╡реНрд╣рд╛рдкрд╛рд╕реВрди, рд╣рд╛ рдкреНрд░рдХрд▓реНрдк рд╕рдореБрджрд╛рдпрд╛рджреНрд╡рд╛рд░реЗ рд╡рд┐рдХрд╕рд┐рдд рдХреЗрд▓рд╛ рдЧреЗрд▓рд╛ рдЖрд╣реЗ рдЖрдгрд┐ рдФрдкрдЪрд╛рд░рд┐рдХ рд╡реНрдпрд╛рдХрд░рдг рдЖрдгрд┐ рдорд░реНрдпрд╛рджрд┐рдд рд░рд╛рдЬреНрдп рдорд╢реАрдирдЪреНрдпрд╛ рдХреНрд╖реЗрддреНрд░рд╛рддреАрд▓ рдкреНрд░рдпреЛрдЧ рдЖрдгрд┐ рд╕рдВрд╢реЛрдзрдирд╛рд╕рд╛рдареА рдПрдХ рд╡реНрдпрд╛рд╕рдкреАрда рдЖрд╣реЗ.

рдЖрд╡реГрддреНрддреА рез.реи рдордзреАрд▓ рдореБрдЦреНрдп рдирд╡рдХрд▓реНрдкрдирд╛:

  • рдЗрдирдкреБрдЯ рдбреЗрдЯрд╛рдЪрд╛ рд╢реЗрд╡рдЯ рддрдкрд╛рд╕рдгреНрдпрд╛рд╕рд╛рдареА рдПрдХ рдирд╡реАрди (рд╕рд░рд▓реАрдХреГрдд) рдорд╛рд░реНрдЧ рдЬреЛрдбрд▓рд╛
    (рдЗрдВрдЧреНрд░рдЬреА "EOF рдирд┐рдпрдо").
    рдпрд╛рд╕рд╛рдареА, re2c:eof рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рдЬреЛрдбрд▓реЗ рдЖрд╣реЗ,
    рддреБрдореНрд╣рд╛рд▓рд╛ рдЯрд░реНрдорд┐рдирд▓ рд╡рд░реНрдг рдирд┐рд╡рдбрдгреНрдпрд╛рдЪреА рдкрд░рд╡рд╛рдирдЧреА рджреЗрддреЗ,
    рдЖрдгрд┐ рдПрдХ рд╡рд┐рд╢реЗрд╖ $ рдирд┐рдпрдо рдЬреЛ рд▓реЗрдХреНрд╕рд░ рдЕрд╕рд▓реНрдпрд╛рд╕ рдлрд╛рдпрд░ рдХрд░рддреЛ
    рдЗрдирдкреБрдЯ рдбреЗрдЯрд╛рдЪреНрдпрд╛ рд╢реЗрд╡рдЯреА рдпрд╢рд╕реНрд╡реАрд░рд┐рддреНрдпрд╛ рдкреЛрд╣реЛрдЪрд▓реЛ.
    рдРрддрд┐рд╣рд╛рд╕рд┐рдХрджреГрд╖реНрдЯреНрдпрд╛, re2c рдЕрдиреЗрдХ рдкрдбрддрд╛рд│рдгреА рдкрджреНрдзрддреАрдВрдЪреА рдирд┐рд╡рдб рдкреНрд░рджрд╛рди рдХрд░рддреЗ
    рдорд░реНрдпрд╛рджрд╛, рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдЖрдгрд┐ рд╕рд╛рдзреЗрдкрдгрд╛рдордзреНрдпреЗ рднрд┐рдиреНрди рдЕрд╕рд▓реЗрд▓реНрдпрд╛ рдЗрдирдкреБрдЯрдЪрд╛ рд╢реЗрд╡рдЯ
    рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдирд╡реАрди рдкрджреНрдзрдд рдХреЛрдб рд▓рд┐рд╣рд┐рдгреЗ рд╕реЛрдкреЗ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдбрд┐рдЭрд╛рдЗрди рдХреЗрд▓реЗ рдЖрд╣реЗ, рддрд░
    рдкреНрд░рднрд╛рд╡реА рдЖрдгрд┐ рд╡реНрдпрд╛рдкрдХрдкрдгреЗ рд▓рд╛рдЧреВ рдЕрд╕рддрд╛рдирд╛. рдЬреБрдиреЗ рдорд╛рд░реНрдЧ
    рддрд░реАрд╣реА рдХрд╛рд░реНрдп рдХрд░рддреЗ рдЖрдгрд┐ рдХрд╛рд╣реА рдкреНрд░рдХрд░рдгрд╛рдВрдордзреНрдпреЗ рдкреНрд░рд╛рдзрд╛рдиреНрдп рджрд┐рд▓реЗ рдЬрд╛рдК рд╢рдХрддреЗ.

  • рдирд┐рд░реНрджреЗрд╢ рд╡рд╛рдкрд░реВрди рдмрд╛рд╣реНрдп рдлрд╛рдпрд▓реА рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдХрд░рдгреНрдпрд╛рдЪреА рдХреНрд╖рдорддрд╛ рдЬреЛрдбрд▓реА
    /*!рд╕рдорд╛рд╡реЗрд╢:re2c "file.re" */ рдЬреЗрдереЗ file.re
    рд╣реЗ рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдлрд╛рдЗрд▓рдЪреЗ рдирд╛рд╡ рдЖрд╣реЗ. Re2c рдлрд╛рдЗрд▓ рдирд┐рд░реНрджреЗрд╢рд┐рдХреЗрдд рдлрд╛рдЗрд▓реНрд╕ рд╢реЛрдзрддреЗ,
    рддрд╕реЗрдЪ -I рдкрд░реНрдпрд╛рдп рд╡рд╛рдкрд░реВрди рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХреЗрд▓реЗрд▓реНрдпрд╛ рдкрдерд╛рдВрдЪреНрдпрд╛ рд╕реВрдЪреАрдордзреНрдпреЗ.
    рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдХреЗрд▓реЗрд▓реНрдпрд╛ рдлрд╛рдпрд▓реАрдВрдордзреНрдпреЗ рдЗрддрд░ рдлрд╛рдпрд▓реАрдВрдЪрд╛ рд╕рдорд╛рд╡реЗрд╢ рдЕрд╕реВ рд╢рдХрддреЛ.
    Re2c рд╕рдорд╛рд╡рд┐рд╖реНрдЯ/ рдирд┐рд░реНрджреЗрд╢рд┐рдХреЗрдд "рдорд╛рдирдХ" рдлрд╛рдЗрд▓реНрд╕ рдкреНрд░рджрд╛рди рдХрд░рддреЗ
    рдкреНрд░рдХрд▓реНрдк - рддреЗрдереЗ рдЙрдкрдпреБрдХреНрдд рд╡реНрдпрд╛рдЦреНрдпрд╛ рдЬрдорд╛ рд╣реЛрддреАрд▓ рдЕрд╢реА рдЕрдкреЗрдХреНрд╖рд╛ рдЖрд╣реЗ
    рдирд┐рдпрдорд┐рдд рдЕрднрд┐рд╡реНрдпрдХреНрддреА, рдорд╛рдирдХ рд▓рд╛рдпрдмреНрд░рд░реАрд╕рд╛рд░рдЦреЗ рдХрд╛рд╣реАрддрд░реА.
    рдЖрддрд╛рдкрд░реНрдпрдВрдд, рдХрд╛рдордЧрд╛рд░рд╛рдВрдЪреНрдпрд╛ рд╡рд┐рдирдВрддреАрдиреБрд╕рд╛рд░, рдпреБрдирд┐рдХреЛрдб рд╢реНрд░реЗрдгреАрдВрдЪреНрдпрд╛ рд╡реНрдпрд╛рдЦреНрдпрд╛ рдЕрд╕рд▓реЗрд▓реА рдПрдХ рдлрд╛рдЗрд▓ рдЬреЛрдбрд▓реА рдЧреЗрд▓реА рдЖрд╣реЗ.

  • рдЕрдирд┐рдпрдВрддреНрд░рд┐рддрдкрдгреЗ рд╢реАрд░реНрд╖рд▓реЗрдЦ рдлрд╛рдпрд▓реА рдирд┐рд░реНрдорд╛рдг рдХрд░рдгреНрдпрд╛рдЪреА рдХреНрд╖рдорддрд╛ рдЬреЛрдбрд▓реА
    -t --type-header рдкрд░реНрдпрд╛рдп рд╡рд╛рдкрд░реВрди рд╕рд╛рдордЧреНрд░реА (рдХрд┐рдВрд╡рд╛ рдпреЛрдЧреНрдп
    рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди) рдЖрдгрд┐ рдирд╡реАрди рдирд┐рд░реНрджреЗрд╢ /*!header:re2c:on*/ рдЖрдгрд┐
    /*!header:re2c:off*/. рд╣реЗ рдЕрд╢рд╛ рдкреНрд░рдХрд░рдгрд╛рдВрдордзреНрдпреЗ рдЙрдкрдпреБрдХреНрдд рдард░реВ рд╢рдХрддреЗ
    рдЬреЗрд╡реНрд╣рд╛ re2c рд▓рд╛ рд╡реНрд╣реЗрд░рд┐рдПрдмрд▓реНрд╕, рд╕реНрдЯреНрд░рдХреНрдЪрд░реНрд╕ рдЖрдгрд┐ рдореЕрдХреНрд░реЛрдЪреА рд╡реНрдпрд╛рдЦреНрдпрд╛ рддрдпрд╛рд░ рдХрд░рд╛рдпрдЪреА рдЕрд╕рддреЗ,
    рдЗрддрд░ рднрд╛рд╖рд╛рдВрддрд░ рдпреБрдирд┐рдЯреНрд╕рдордзреНрдпреЗ рд╡рд╛рдкрд░рд▓реЗ рдЬрд╛рддреЗ.

  • Re2c рдЖрддрд╛ рд░реЗрдЧреНрдпреБрд▓рд░ рдПрдХреНрд╕реНрдкреНрд░реЗрд╢рдирдордзреАрд▓ UTF8 рдЕрдХреНрд╖рд░реЗ рдЖрдгрд┐ рд╡рд░реНрдг рд╡рд░реНрдЧ рд╕рдордЬрддреЗ.
    рдбреАрдлреЙрд▓реНрдЯрдиреБрд╕рд╛рд░, re2c "тИАx тИГy" рд╕рд╛рд░рдЦреЗ рдЕрднрд┐рд╡реНрдпрдХреНрддреА рдкрд╛рд░реНрд╕ рдХрд░рддреЗ.
    1-рдмрд┐рдЯ ASCII рд╡рд░реНрдгрд╛рдВрдЪрд╛ рдХреНрд░рдо e2 88 80 78 20 e2 88 83 79
    (рд╣реЗрдХреНрд╕ рдХреЛрдб), рдЖрдгрд┐ рд╡рд╛рдкрд░рдХрд░реНрддреНрдпрд╛рдВрдирд╛ рд╕реНрд╡рд╣рд╕реНрддреЗ рдпреБрдирд┐рдХреЛрдб рд╡рд░реНрдг рд╕реЛрдбрд╛рд╡реЗ рд▓рд╛рдЧрддрд╛рдд:
    "u2200x u2203y". рд╣реЗ рдЕрдиреЗрдХрд╛рдВрд╕рд╛рдареА рдЦреВрдк рдЧреИрд░рд╕реЛрдпреАрдЪреЗ рдЖрдгрд┐ рдЕрдирдкреЗрдХреНрд╖рд┐рдд рдЖрд╣реЗ
    рд╡рд╛рдкрд░рдХрд░реНрддреЗ (рд╕рддрдд рдмрдЧ рдЕрд╣рд╡рд╛рд▓рд╛рдВрджреНрд╡рд╛рд░реЗ рдкреБрд░рд╛рд╡реНрдпрд╛рдВрдиреБрд╕рд╛рд░). рддрд░ рдЖрддрд╛
    re2c --input-encoding рдкрд░реНрдпрд╛рдп рдкреБрд░рд╡рддреЛ ,
    рдЬреЗ рддреБрдореНрд╣рд╛рд▓рд╛ рд╡рд░реНрддрди рдмрджрд▓рдгреНрдпрд╛рдЪреА рдЖрдгрд┐ "тИАx тИГy" рдЪреЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рдгреНрдпрд╛рд╕ рдЕрдиреБрдорддреА рджреЗрддреЗ
    2200 78 20 2203 79.

  • Re2c рдЖрддрд╛ рдирд┐рдпрдорд┐рдд re2c рдмреНрд▓реЙрдХреНрд╕рдЪрд╛ -r --reuse рдореЛрдбрдордзреНрдпреЗ рд╡рд╛рдкрд░ рдХрд░рдгреНрдпрд╛рд╕ рдкрд░рд╡рд╛рдирдЧреА рджреЗрддреЛ.
    рдЬрд░ рдЗрдирдкреБрдЯ рдлрд╛рдЗрд▓рдордзреНрдпреЗ рдЕрдиреЗрдХ рдмреНрд▓реЙрдХ рдЕрд╕рддреАрд▓ рдЖрдгрд┐ рддреНрдпрд╛рдкреИрдХреА рдХрд╛рд╣реА рдЕрд╕рддреАрд▓ рддрд░ рд╣реЗ рд╕реЛрдпреАрдЪреЗ рдЖрд╣реЗ
    рдкреБрдиреНрд╣рд╛ рд╡рд╛рдкрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ.

  • рдЖрддрд╛ рддреБрдореНрд╣реА рдЪреЗрддрд╛рд╡рдгреА рдЖрдгрд┐ рддреНрд░реБрдЯреА рд╕рдВрджреЗрд╢рд╛рдВрдЪреЗ рд╕реНрд╡рд░реВрдк рд╕реЗрдЯ рдХрд░реВ рд╢рдХрддрд╛
    рдирд╡реАрди --location-format рдкрд░реНрдпрд╛рдп рд╡рд╛рдкрд░реВрди . GNU рд╕реНрд╡рд░реВрдк рдкреНрд░рджрд░реНрд╢рд┐рдд рдХреЗрд▓реЗ рдЖрд╣реЗ
    filename:line:column:, рдЖрдгрд┐ MSVC рдлреЙрд░рдореЕрдЯ рдлрд╛рдЗрд▓рдирд╛рд╡(рд▓рд╛рдЗрди,рд╕реНрддрдВрдн) рдореНрд╣рдгреВрди.
    рд╣реЗ рд╡реИрд╢рд┐рд╖реНрдЯреНрдп IDE рдкреНрд░реЗрдореАрдВрд╕рд╛рдареА рдЙрдкрдпреБрдХреНрдд рдард░реВ рд╢рдХрддреЗ.
    рдПрдХ --verbose рдкрд░реНрдпрд╛рдп рджреЗрдЦреАрд▓ рдЬреЛрдбрд▓рд╛ рдЧреЗрд▓рд╛ рдЖрд╣реЗ, рдЬреЛ рдпрд╢рд╕реНрд╡реА рдЭрд╛рд▓реНрдпрд╛рд╕ рдПрдХ рд▓рд╣рд╛рди рд╡рд┐рдЬрдп рд╕рдВрджреЗрд╢ рдЫрд╛рдкрддреЛ.

  • рдлреНрд▓реЗрдХреНрд╕рд╕рд╣ "рд╕реБрд╕рдВрдЧрддрддрд╛" рдореЛрдб рд╕реБрдзрд╛рд░рд▓рд╛ рдЧреЗрд▓рд╛ рдЖрд╣реЗ - рдХрд╛рд╣реА рдкрд╛рд░реНрд╕рд┐рдВрдЧ рддреНрд░реБрдЯреА рдирд┐рд╢реНрдЪрд┐рдд рдХреЗрд▓реНрдпрд╛ рдЧреЗрд▓реНрдпрд╛ рдЖрд╣реЗрдд рдЖрдгрд┐
    рджреБрд░реНрдорд┐рд│ рдкреНрд░рдХрд░рдгрд╛рдВрдордзреНрдпреЗ рдЪреБрдХреАрдЪреЗ рдСрдкрд░реЗрдЯрд░ рдкреНрд░рд╛рдзрд╛рдиреНрдп.
    рдРрддрд┐рд╣рд╛рд╕рд┐рдХрджреГрд╖реНрдЯреНрдпрд╛, -F --flex-support рдкрд░реНрдпрд╛рдпрд╛рдиреЗ рддреБрдореНрд╣рд╛рд▓рд╛ рдХреЛрдб рд▓рд┐рд╣рд┐рдгреНрдпрд╛рдЪреА рдкрд░рд╡рд╛рдирдЧреА рджрд┐рд▓реА
    рдлреНрд▓реЗрдХреНрд╕ рд╢реИрд▓реА рдЖрдгрд┐ re2c рд╢реИрд▓реАрдордзреНрдпреЗ рдорд┐рд╢реНрд░рд┐рдд, рдЬреЗ рдкрд╛рд░реНрд╕рд┐рдВрдЧ рдереЛрдбреЗ рдХрдареАрдг рдХрд░рддреЗ.
    рдирд╡реАрди рдХреЛрдбрдордзреНрдпреЗ рдлреНрд▓реЗрдХреНрд╕ рд╕реБрд╕рдВрдЧрддрддрд╛ рдореЛрдб рдХреНрд╡рдЪрд┐рддрдЪ рд╡рд╛рдкрд░рд▓рд╛ рдЬрд╛рддреЛ,
    рдкрд░рдВрддреБ re2c рдмреЕрдХрд╡рд░реНрдб рдХрдВрдкреЕрдЯрд┐рдмрд┐рд▓рд┐рдЯреАрд╕рд╛рдареА рд╕рдорд░реНрдерди рджреЗрдд рдЖрд╣реЗ.

  • рд╡рд░реНрдг рд╡рд░реНрдЧ рд╡рдЬрд╛рдмрд╛рдХреА рдСрдкрд░реЗрдЯрд░ / рдЖрддрд╛ рд▓рд╛рдЧреВ рд╣реЛрддреЛ
    рдПрдиреНрдХреЛрдбрд┐рдВрдЧрдЪрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рдгреНрдпрд╛рдкреВрд░реНрд╡реА, рдЬреЗ рддреНрдпрд╛рд╕ рдореЛрдареНрдпрд╛ рд╕рдВрдЦреНрдпреЗрдиреЗ рдкреНрд░рдХрд░рдгрд╛рдВрдордзреНрдпреЗ рд╡рд╛рдкрд░рдгреНрдпрд╛рдЪреА рдкрд░рд╡рд╛рдирдЧреА рджреЗрддреЗ,
    рдЬрд░ рд╡реНрд╣реЗрд░рд┐рдПрдмрд▓ рдХреЕрд░реЗрдХреНрдЯрд░ рд▓рд╛рдВрдмреА рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рд╡рд╛рдкрд░рд▓реЗ рдЕрд╕реЗрд▓ (рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде UTF8).

  • рдЖрдКрдЯрдкреБрдЯ рдлрд╛рдЗрд▓ рдЖрддрд╛ рдЕрдгреБ рдкрджреНрдзрддреАрдиреЗ рддрдпрд╛рд░ рдХреЗрд▓реА рдЖрд╣реЗ: re2c рдкреНрд░рдердо рддрд╛рддреНрдкреБрд░рддреА рдлрд╛рдЗрд▓ рддрдпрд╛рд░ рдХрд░рддреЗ
    рдЖрдгрд┐ рддреНрдпрд╛рдд рдирд┐рдХрд╛рд▓ рд▓рд┐рд╣рд┐рддреЛ, рдЖрдгрд┐ рдирдВрддрд░ рддрд╛рддреНрдкреБрд░рддреНрдпрд╛ рдлрд╛рдИрд▓рдЪреЗ рдЖрдЙрдЯрдкреБрдЯрд╡рд░ рдирд╛рд╡ рдмрджрд▓рддреЛ
    рдПрдХ рдСрдкрд░реЗрд╢рди.

  • рджрд╕реНрддрдРрд╡рдЬреАрдХрд░рдг рдкреВрд░реНрдг рдЭрд╛рд▓реЗ рдЖрдгрд┐ рдкреБрдиреНрд╣рд╛ рд▓рд┐рд╣рд┐рд▓реЗ рдЧреЗрд▓реЗ; рд╡рд┐рд╢реЗрд╖рддрдГ, рдирд╡реАрди рдЬреЛрдбрд▓реЗ рдЧреЗрд▓реЗ
    рдЕрдзреНрдпрд╛рдп рдмрдлрд░ рднрд░рдгреНрдпрд╛рдмрджреНрджрд▓
    ╨╕ рдЗрдирдкреБрдЯ рдбреЗрдЯрд╛рдЪрд╛ рд╢реЗрд╡рдЯ рддрдкрд╛рд╕рдгреНрдпрд╛рдЪреНрдпрд╛ рдорд╛рд░реНрдЧрд╛рдВрдмрджреНрджрд▓.
    рдирд╡реАрди рдХрд╛рдЧрджрдкрддреНрд░реЗ рдлреЙрд░реНрдордордзреНрдпреЗ рдЧреЛрд│рд╛ рдХреЗрд▓реА рдЬрд╛рддрд╛рдд
    рдПрдХ рд╕рд░реНрд╡рд╕рдорд╛рд╡реЗрд╢рдХ рдПрдХ-рдкрд╛рди рдкреБрд╕реНрддрд┐рдХрд╛
    рдЙрджрд╛рд╣рд░рдгрд╛рдВрд╕рд╣ (рд╕рдорд╛рди рд╕реНрд░реЛрдд рдореЕрдирдкреЗрдЬ рдЖрдгрд┐ рдСрдирд▓рд╛рдЗрди рджрд╕реНрддрдРрд╡рдЬреАрдХрд░рдгрд╛рдд рдкреНрд░рд╕реНрддреБрдд рдХреЗрд▓реЗ рдЖрд╣реЗрдд).
    рдлреЛрдирд╡рд░ рд╕рд╛рдЗрдЯрдЪреА рд╡рд╛рдЪрдиреАрдпрддрд╛ рд╕реБрдзрд╛рд░рдгреНрдпрд╛рд╕рд╛рдареА рдЦрд░рд╛рдм рдкреНрд░рдпрддреНрди рдХреЗрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗрдд.

  • рд╡рд┐рдХрд╕рдХрд╛рдВрдЪреНрдпрд╛ рджреГрд╖реНрдЯрд┐рдХреЛрдирд╛рддреВрди, re2c рдиреЗ рдЕрдзрд┐рдХ рд╕рдВрдкреВрд░реНрдг рдЙрдкрдкреНрд░рдгрд╛рд▓реА рдкреНрд░рд╛рдкреНрдд рдХреЗрд▓реА рдЖрд╣реЗ
    рдбреАрдмрдЧрд┐рдВрдЧ рдбрд┐рдмрдЧрд┐рдВрдЧ рдХреЛрдб рдЖрддрд╛ рд░рд┐рд▓реАрдЭ рдмрд┐рд▓реНрдб рдЖрдгрд┐ рдордзреНрдпреЗ рдЕрдХреНрд╖рдо рдЖрд╣реЗ
    рдХреЙрдиреНрдлрд┐рдЧрд░ рдкрд░реНрдпрд╛рдп --enable-debug рд╡рд╛рдкрд░реВрди рд╕рдХреНрд╖рдо рдХреЗрд▓реЗ рдЬрд╛рдК рд╢рдХрддреЗ.

рдпрд╛ рдкреНрд░рдХрд╛рд╢рдирд╛рд╕ рдмрд░рд╛рдЪ рд╡реЗрд│ рд▓рд╛рдЧрд▓рд╛ - рдЬрд╡рд│рдЬрд╡рд│ рд╕рдВрдкреВрд░реНрдг рд╡рд░реНрд╖.
рдмрд╣реБрддреЗрдХ рд╡реЗрд│, рдиреЗрд╣рдореАрдкреНрд░рдорд╛рдгреЗ, рдПрдХ рд╕реИрджреНрдзрд╛рдВрддрд┐рдХ рдлреНрд░реЗрдорд╡рд░реНрдХ рдЖрдгрд┐ рд▓реЗрдЦрди рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдгреНрдпрд╛рдд рдШрд╛рд▓рд╡рд▓рд╛ рдЧреЗрд▓рд╛
рд▓реЗрдЦ "NFA рд╡рд░ рдкреНрд░рднрд╛рд╡реА POSIX рд╕рдмрдореЕрдЪ рдПрдХреНрд╕реНрдЯреНрд░реЕрдХреНрд╢рди".
рд▓реЗрдЦрд╛рдд рд╡рд░реНрдгрди рдХреЗрд▓реЗрд▓реЗ рдЕрд▓реНрдЧреЛрд░рд┐рджрдо рдкреНрд░рд╛рдпреЛрдЧрд┐рдХ рд▓рд╛рдпрдмреНрд░рд░реА libre2c рдордзреНрдпреЗ рд▓рд╛рдЧреВ рдХреЗрд▓реЗ рдЖрд╣реЗрдд
(рд▓рд╛рдпрдмреНрд░рд░реА рдЖрдгрд┐ рдмреЗрдВрдЪрдорд╛рд░реНрдХ рддрдпрд╛рд░ рдХрд░рдгреЗ рдбреАрдлреЙрд▓реНрдЯрдиреБрд╕рд╛рд░ рдЕрдХреНрд╖рдо рдХреЗрд▓реЗ рдЬрд╛рддреЗ рдЖрдгрд┐ рдХреЙрдиреНрдлрд┐рдЧрд░ рдкрд░реНрдпрд╛рдпрд╛рджреНрд╡рд╛рд░реЗ рд╕рдХреНрд╖рдо рдХреЗрд▓реЗ рдЬрд╛рддреЗ.
--enable-libs). рд▓рд╛рдпрдмреНрд░рд░реА рдЕрд╕реНрддрд┐рддреНрд╡рд╛рдд рдЕрд╕рд▓реЗрд▓реНрдпрд╛ рд╕реНрдкрд░реНрдзрдХ рдореНрд╣рдгреВрди рдХрд▓реНрдкрд┐рдд рдирд╛рд╣реА
RE2 рд╕рд╛рд░рдЦреЗ рдкреНрд░рдХрд▓реНрдк, рдкрд░рдВрддреБ рдирд╡реАрди рд╡рд┐рдХрд╛рд╕рд╛рд╕рд╛рдареА рд╕рдВрд╢реЛрдзрди рд╡реНрдпрд╛рд╕рдкреАрда рдореНрд╣рдгреВрди
рдЕрд▓реНрдЧреЛрд░рд┐рджрдо (рдЬреЗ рдирдВрддрд░ re2c рдХрд┐рдВрд╡рд╛ рдЗрддрд░ рдкреНрд░рдХрд▓реНрдкрд╛рдВрдордзреНрдпреЗ рд╡рд╛рдкрд░рд▓реЗ рдЬрд╛рдК рд╢рдХрддреЗ).
рдЪрд╛рдЪрдгреА, рдмреЗрдВрдЪрдорд╛рд░реНрдХ рдЖрдгрд┐ рдЗрддрд░ рднрд╛рд╖рд╛рдВрдордзреНрдпреЗ рдмрдВрдзрдиреЗ рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рдЪреНрдпрд╛ рджреГрд╖реНрдЯрд┐рдХреЛрдирд╛рддреВрди рджреЗрдЦреАрд▓ рд╣реЗ рд╕реЛрдпреАрдЪреЗ рдЖрд╣реЗ.

рд╣реЗ рдкреНрд░рдХрд╛рд╢рди рд╣реЛрдгреНрдпрд╛рд╕ рдорджрдд рдХрд░рдгрд╛рд▒реНрдпрд╛ рдкреНрд░рддреНрдпреЗрдХрд╛рд▓рд╛ re2c рд╡рд┐рдХрд╕рдХрд╛рдВрдХрдбреВрди рдзрдиреНрдпрд╡рд╛рдж,
рдЖрдгрд┐ рд╕рд░реНрд╡рд╕рд╛рдзрд╛рд░рдгрдкрдгреЗ рдХрд▓реНрдкрдирд╛, рдмрдЧ рдЕрд╣рд╡рд╛рд▓, рдкреЕрдЪ, рдордиреЛрдмрд▓ рдЗрддреНрдпрд╛рджреАрдВрд╕рд╛рдареА рд╕рдореБрджрд╛рдпрд╛рд▓рд╛. ;]

рд╕реНрддреНрд░реЛрдд: linux.org.ru

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╛