Commit 67ff589
authored
Commit 5: Remove Ruby-only parser features; shift to ECMAScript dialect
- ParseRegExp.qll:
- specialCharacter: remove \A, \Z, \z, \G (Ruby-only anchors); keep only \b, \B
- firstPart: remove \A arm; keep only ^ for start-of-string
- lastPart: remove \Z, \z arms; keep only $ for end-of-string
- nonCapturingGroupStart: remove < from char set (handled by namedGroupStart
and lookbehindAssertionStart; was causing mis-tokenization of lookbehind)
- namedGroupStart: remove Ruby-only single-quote (?'name'...) branch; keep
only ECMAScript (?<name>...) syntax
- RegexTreeView.qll:
- RegExpCharacterClassEscape: remove h, H (Ruby hex-digit classes); keep
d, D, s, S, w, W (ECMAScript set)
- RegExpAnchor: change to [^, $] only (remove \A, \Z, \z)
- RegExpDollar: change to $ only (remove \Z, \z)
- RegExpCaret: change to ^ only (remove \A)
- test.cpp:
- r_cc3: replace \A[+-]?\d+ with ^[+-]?\d+ (ECMAScript caret)
- r_meta5 \h\H: removed (Ruby-only hex classes)
- r_anc1 \Gabc: removed (\G not in ECMAScript)
- Regenerated parse.expected and regexp.expected via codeql test run --learn
(CodeQL 2.26.1); all 2 tests pass.1 parent 96c7e2d commit 67ff589
5 files changed
Lines changed: 137 additions & 162 deletions
File tree
- cpp/ql
- lib/semmle/code/cpp/regex
- internal
- test/library-tests/regex
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
631 | 631 | | |
632 | 632 | | |
633 | 633 | | |
| 634 | + | |
| 635 | + | |
634 | 636 | | |
635 | 637 | | |
636 | 638 | | |
| |||
640 | 642 | | |
641 | 643 | | |
642 | 644 | | |
643 | | - | |
| 645 | + | |
644 | 646 | | |
645 | 647 | | |
646 | 648 | | |
| |||
921 | 923 | | |
922 | 924 | | |
923 | 925 | | |
924 | | - | |
925 | | - | |
926 | | - | |
927 | | - | |
928 | | - | |
929 | | - | |
| 926 | + | |
| 927 | + | |
930 | 928 | | |
931 | 929 | | |
932 | | - | |
| 930 | + | |
933 | 931 | | |
934 | 932 | | |
935 | 933 | | |
936 | 934 | | |
937 | 935 | | |
938 | | - | |
| 936 | + | |
939 | 937 | | |
940 | 938 | | |
941 | 939 | | |
| |||
944 | 942 | | |
945 | 943 | | |
946 | 944 | | |
947 | | - | |
| 945 | + | |
948 | 946 | | |
949 | 947 | | |
950 | 948 | | |
951 | 949 | | |
952 | 950 | | |
953 | 951 | | |
954 | 952 | | |
955 | | - | |
| 953 | + | |
956 | 954 | | |
957 | 955 | | |
958 | 956 | | |
| |||
961 | 959 | | |
962 | 960 | | |
963 | 961 | | |
964 | | - | |
| 962 | + | |
965 | 963 | | |
966 | 964 | | |
967 | 965 | | |
| |||
Lines changed: 22 additions & 22 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
468 | 468 | | |
469 | 469 | | |
470 | 470 | | |
| 471 | + | |
| 472 | + | |
471 | 473 | | |
472 | 474 | | |
473 | 475 | | |
| |||
480 | 482 | | |
481 | 483 | | |
482 | 484 | | |
483 | | - | |
| 485 | + | |
484 | 486 | | |
485 | 487 | | |
486 | 488 | | |
| |||
642 | 644 | | |
643 | 645 | | |
644 | 646 | | |
645 | | - | |
| 647 | + | |
| 648 | + | |
| 649 | + | |
| 650 | + | |
| 651 | + | |
| 652 | + | |
646 | 653 | | |
647 | 654 | | |
648 | 655 | | |
649 | | - | |
| 656 | + | |
650 | 657 | | |
651 | 658 | | |
652 | 659 | | |
| |||
659 | 666 | | |
660 | 667 | | |
661 | 668 | | |
662 | | - | |
663 | | - | |
| 669 | + | |
| 670 | + | |
664 | 671 | | |
665 | 672 | | |
666 | 673 | | |
667 | 674 | | |
668 | | - | |
669 | | - | |
670 | | - | |
671 | | - | |
672 | | - | |
673 | | - | |
674 | | - | |
675 | | - | |
676 | | - | |
677 | | - | |
678 | | - | |
679 | | - | |
680 | | - | |
| 675 | + | |
| 676 | + | |
| 677 | + | |
| 678 | + | |
| 679 | + | |
| 680 | + | |
681 | 681 | | |
682 | 682 | | |
683 | 683 | | |
| |||
962 | 962 | | |
963 | 963 | | |
964 | 964 | | |
965 | | - | |
966 | | - | |
| 965 | + | |
| 966 | + | |
967 | 967 | | |
968 | 968 | | |
969 | 969 | | |
| |||
988 | 988 | | |
989 | 989 | | |
990 | 990 | | |
991 | | - | |
992 | | - | |
| 991 | + | |
| 992 | + | |
993 | 993 | | |
994 | 994 | | |
995 | 995 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
90 | 90 | | |
91 | 91 | | |
92 | 92 | | |
93 | | - | |
| 93 | + | |
94 | 94 | | |
95 | | - | |
96 | | - | |
| 95 | + | |
| 96 | + | |
97 | 97 | | |
98 | 98 | | |
99 | 99 | | |
100 | | - | |
| 100 | + | |
101 | 101 | | |
102 | 102 | | |
103 | 103 | | |
104 | | - | |
| 104 | + | |
105 | 105 | | |
106 | 106 | | |
107 | | - | |
| 107 | + | |
108 | 108 | | |
109 | | - | |
| 109 | + | |
110 | 110 | | |
111 | | - | |
| 111 | + | |
112 | 112 | | |
113 | | - | |
| 113 | + | |
114 | 114 | | |
115 | 115 | | |
116 | | - | |
| 116 | + | |
117 | 117 | | |
118 | 118 | | |
119 | | - | |
| 119 | + | |
120 | 120 | | |
121 | 121 | | |
122 | | - | |
| 122 | + | |
123 | 123 | | |
124 | | - | |
| 124 | + | |
125 | 125 | | |
126 | | - | |
| 126 | + | |
127 | 127 | | |
128 | 128 | | |
129 | 129 | | |
130 | 130 | | |
131 | | - | |
| 131 | + | |
132 | 132 | | |
133 | | - | |
| 133 | + | |
134 | 134 | | |
135 | 135 | | |
136 | 136 | | |
137 | 137 | | |
138 | | - | |
| 138 | + | |
139 | 139 | | |
140 | | - | |
| 140 | + | |
141 | 141 | | |
142 | | - | |
| 142 | + | |
143 | 143 | | |
144 | | - | |
| 144 | + | |
145 | 145 | | |
146 | 146 | | |
147 | | - | |
| 147 | + | |
148 | 148 | | |
149 | | - | |
| 149 | + | |
150 | 150 | | |
151 | 151 | | |
152 | 152 | | |
153 | | - | |
| 153 | + | |
154 | 154 | | |
155 | | - | |
| 155 | + | |
156 | 156 | | |
157 | 157 | | |
158 | | - | |
| 158 | + | |
159 | 159 | | |
160 | | - | |
| 160 | + | |
161 | 161 | | |
162 | 162 | | |
163 | | - | |
| 163 | + | |
164 | 164 | | |
165 | | - | |
| 165 | + | |
166 | 166 | | |
167 | 167 | | |
168 | | - | |
| 168 | + | |
169 | 169 | | |
170 | | - | |
| 170 | + | |
171 | 171 | | |
172 | 172 | | |
173 | | - | |
| 173 | + | |
174 | 174 | | |
175 | | - | |
| 175 | + | |
176 | 176 | | |
177 | 177 | | |
178 | 178 | | |
179 | | - | |
| 179 | + | |
180 | 180 | | |
181 | 181 | | |
182 | 182 | | |
183 | | - | |
| 183 | + | |
184 | 184 | | |
185 | | - | |
| 185 | + | |
186 | 186 | | |
187 | | - | |
| 187 | + | |
188 | 188 | | |
189 | 189 | | |
190 | 190 | | |
191 | | - | |
| 191 | + | |
192 | 192 | | |
193 | | - | |
| 193 | + | |
194 | 194 | | |
195 | | - | |
| 195 | + | |
196 | 196 | | |
197 | | - | |
| 197 | + | |
198 | 198 | | |
199 | 199 | | |
200 | 200 | | |
| |||
224 | 224 | | |
225 | 225 | | |
226 | 226 | | |
227 | | - | |
228 | | - | |
229 | | - | |
230 | | - | |
231 | | - | |
232 | | - | |
233 | | - | |
234 | | - | |
235 | 227 | | |
236 | 228 | | |
237 | 229 | | |
| |||
243 | 235 | | |
244 | 236 | | |
245 | 237 | | |
246 | | - | |
247 | | - | |
248 | | - | |
249 | | - | |
250 | | - | |
251 | | - | |
252 | | - | |
253 | | - | |
254 | 238 | | |
255 | 239 | | |
256 | 240 | | |
| |||
0 commit comments