Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Changes In Branch tkt-4a4e443ce9-pt-oo-fail-fix Excluding Merge-Ins
This is equivalent to a diff from 5c8a247da3 to 7b5c2a0853
2015-06-08
| ||
20:15 | Ticket [4a4e443ce9]. Merge fix into main line. check-in: 06fb32c333 user: aku tags: trunk | |
20:14 | Ticket [4a4e443ce9]. Merge fix into work on pt rdengine tracing. check-in: 4b9b73cc20 user: aku tags: tkt-4a4e443ce9-pt-oo-fail | |
20:13 | pt::peg::to::tclparam - Fixed ticket [4a4e443ce9]. Corrected tclparam code generator mishandling of the ! (neg. lookahead) operator when calling on parsing expressions generating AST nodes. Version bump to 1.0.3. Updated output for the new test case added for debugging. Note how no other test case had to be changed, i.e. this was not covered by the tests. Thanks for the report. Fix is fork before tracing changes to allow separate testing that these work. Closed-Leaf check-in: 7b5c2a0853 user: aku tags: tkt-4a4e443ce9-pt-oo-fail-fix | |
2015-06-05
| ||
22:15 | Replaced the homegrown narrative TRACEing of the snit rdengine with "debug" (and "debug::caller"). check-in: 923f8e15ff user: andreask tags: tkt-4a4e443ce9-pt-oo-fail | |
03:33 | pt - Ticket [4a4e443ce9]. Completed testsuite, added all necessary files for the new testcase and grammar. Running it confirms that - peg interp is OK, - peg oo parser FAILS It further finds that the "peg snit parser" also fails, in the same manner. The critcl implementation however is OK. check-in: 5c8a247da3 user: aku tags: tkt-4a4e443ce9-pt-oo-fail | |
2015-06-04
| ||
21:14 | pt - Ticket [4a4e443ce9]. Created investigation branch. Putting example into the testsuite. check-in: 9034b39a70 user: andreask tags: tkt-4a4e443ce9-pt-oo-fail | |
Changes to modules/pt/pkgIndex.tcl.
︙ | ︙ | |||
40 41 42 43 44 45 46 | # Export core functionality: Conversion from PEG to a specific format. package ifneeded pt::peg::to::container 1 [list source [file join $dir pt_peg_to_container.tcl]] package ifneeded pt::peg::to::cparam 1.1.3 [list source [file join $dir pt_peg_to_cparam.tcl]] package ifneeded pt::peg::to::json 1 [list source [file join $dir pt_peg_to_json.tcl]] package ifneeded pt::peg::to::param 1.0.1 [list source [file join $dir pt_peg_to_param.tcl]] package ifneeded pt::peg::to::peg 1.0.2 [list source [file join $dir pt_peg_to_peg.tcl]] | | | 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 | # Export core functionality: Conversion from PEG to a specific format. package ifneeded pt::peg::to::container 1 [list source [file join $dir pt_peg_to_container.tcl]] package ifneeded pt::peg::to::cparam 1.1.3 [list source [file join $dir pt_peg_to_cparam.tcl]] package ifneeded pt::peg::to::json 1 [list source [file join $dir pt_peg_to_json.tcl]] package ifneeded pt::peg::to::param 1.0.1 [list source [file join $dir pt_peg_to_param.tcl]] package ifneeded pt::peg::to::peg 1.0.2 [list source [file join $dir pt_peg_to_peg.tcl]] package ifneeded pt::peg::to::tclparam 1.0.3 [list source [file join $dir pt_peg_to_tclparam.tcl]] # Import core functionality: Conversion from a specific format to PEG. package ifneeded pt::peg::from::json 1 [list source [file join $dir pt_peg_from_json.tcl]] package ifneeded pt::peg::from::peg 1.0.3 [list source [file join $dir pt_peg_from_peg.tcl]] # PARAM runtime. package ifneeded pt::rde 1.0.3 [list source [file join $dir pt_rdengine.tcl]] |
︙ | ︙ |
Changes to modules/pt/pt_peg_to_tclparam.man.
1 2 3 4 5 | [comment {--- doctools ---}] [vset PACKAGE tclparam] [vset NAME TCLPARAM] [vset REQUIRE tclparam] [vset CONFIG tclparam] | | | 1 2 3 4 5 6 7 | [comment {--- doctools ---}] [vset PACKAGE tclparam] [vset NAME TCLPARAM] [vset REQUIRE tclparam] [vset CONFIG tclparam] [vset VERSION 1.0.3] [include include/export/to.inc] |
Changes to modules/pt/pt_peg_to_tclparam.tcl.
︙ | ︙ | |||
577 578 579 580 581 582 583 | Asm::Call $expression #Asm::Ins i_ast_pop_discard/rewind #Asm::Ins i_loc_pop_rewind #Asm::Ins i_status_negate | | | 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 | Asm::Call $expression #Asm::Ins i_ast_pop_discard/rewind #Asm::Ins i_loc_pop_rewind #Asm::Ins i_status_negate Asm::Ins si:value_notahead_exit } $expression } else { Asm::Function [Asm::NewBlock notahead] { # The sub-expression cannot generate AST elements. We can # ignore AS/ARS, simplifying the code. Asm::Ins i_loc_push |
︙ | ︙ | |||
1265 1266 1267 1268 1269 1270 1271 | # which behalf the conversion has # been invoked. } # ### ### ### ######### ######### ######### ## Ready | | | 1265 1266 1267 1268 1269 1270 1271 1272 1273 | # which behalf the conversion has # been invoked. } # ### ### ### ######### ######### ######### ## Ready package provide pt::peg::to::tclparam 1.0.3 return |
Changes to modules/pt/tests/data/ok/peg_tclparam-snit/27_ticket_4a4e443ce9.
︙ | ︙ | |||
220 221 222 223 224 225 226 | proc notahead_15 {} { upvar 1 myparser myparser # ! # (X) $myparser si:value_notahead_start sym_X | | | 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 | proc notahead_15 {} { upvar 1 myparser myparser # ! # (X) $myparser si:value_notahead_start sym_X $myparser si:value_notahead_exit return } proc optional_23 {} { upvar 1 myparser myparser # ? # (X) |
︙ | ︙ |
Changes to modules/pt/tests/data/ok/peg_tclparam-tcloo/27_ticket_4a4e443ce9.
︙ | ︙ | |||
206 207 208 209 210 211 212 | method notahead_15 {} { # ! # (X) my si:value_notahead_start my sym_X | | | 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 | method notahead_15 {} { # ! # (X) my si:value_notahead_start my sym_X my si:value_notahead_exit return } method optional_23 {} { # ? # (X) |
︙ | ︙ |
Changes to modules/pt/tests/data/ok/peg_tclparam/27_ticket_4a4e443ce9.
︙ | ︙ | |||
163 164 165 166 167 168 169 | <<def>> <<ns>>notahead_15 {} { # ! # (X) <<runtime>> si:value_notahead_start <<self>> sym_X | | | 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 | <<def>> <<ns>>notahead_15 {} { # ! # (X) <<runtime>> si:value_notahead_start <<self>> sym_X <<runtime>> si:value_notahead_exit return } <<def>> <<ns>>optional_23 {} { # ? # (X) |
︙ | ︙ |