This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Refactor die_exit.t to loop over a list, rather than iterate on an hash.
[perl5.git] / cpan / Devel-PPPort / TODO
CommitLineData
adfe19db 1TODO:
0a7c7f4f 2
679ad62d
MHM
3* > 3. In several cases, "perl ppport.h --copy=.new" output a new file in
4 > which the only change was the addition of "#include "ppport.h"". In each
5 > case, that actually wasn't necessary because the source file in question
6 > already #included another source file which #included ppport.h itself.
7 > Would it be possible for the analyzer to follow #include directives to
8 > spot cases like this?
9
10 Uh, well, I guess it would be possible. But I have some concerns:
11
12 1. ppport.h is already too big. :-)
13
14 2. There is code in ppport.h to actually remove an
15
16 #include "ppport.h"
17
18 if it appears not to be needed. If it's not needed in your
19 included file, it might be dropped from there and moved to
20 the other file that included the first one. This would make
21 the logic much more complicated.
22
23 3. As ppport.h is configurable, it's not (always) a good idea
24 to put it into a file that's included from another file.
25
26 I guess I'll have to think about this a little more. Maybe I can
27 come up with a fancy solution that doesn't increase the code size
28 too much.
29
30
d2dacc4f
MHM
31* On 14/12/06, Nicholas Clark <nick@ccl4.org> wrote:
32 > On Thu, Dec 14, 2006 at 05:03:24AM +0100, Andreas J. Koenig wrote:
33 >
34 > > Params::Validate and Clone suffer from the same cold:
35 >
36 > The same patch will make both compile and pass tests.
37 > I'm wondering if it might be better to totally drop SVt_PBVM and let source
38 > code fail to compile.
39
40 I don't think so. Because :
41 1. your redefinition of SVt_PBVM is probably what most XS modules want
42 2. anyway, if we remove it from the core, it might appear in Devel::PPPort :)
43
44
679ad62d
MHM
45* maybe backport bytes_from_utf8() for 5.6.0 (or even before)?
46
cac25305
MHM
47* check which of the following we need to support:
48
49 amagic_generation
50 AMG_names
51 an
52 Argv
53 argvgv
54 argvoutgv
55 basetime
56 beginav
57 block_type
58 bodytarget
59 bufend
60 bufptr
61 check
62 chopset
63 Cmd
64 compcv
65 compiling
66 comppad
67 comppad_name
68 comppad_name_fill
69 copline
70 cop_seqmax
71 cryptseen
72 cshlen
73 cshname
74 curcop
75 curinterp
76 curpad
77 curpm
78 curstash
79 curstname
80 dbargs
81 DBgv
82 DBline
83 DBsignal
84 DBsingle
85 DBsub
86 DBtrace
87 debstash
88 debug
89 defgv
90 defoutgv
91 defstash
92 delaymagic
93 diehook
94 dirty
95 doextract
96 doswitches
97 do_undump
98 dowarn
99 egid
100 encoding
101 endav
102 envgv
103 errgv
104 error_count
105 errors
106 euid
107 eval_root
108 evalseq
109 eval_start
110 expect
111 fdpid
112 filemode
113 firstgv
114 fold
115 forkprocess
116 formfeed
117 formtarget
118 freq
119 generation
120 gensym
121 gid
122 hexdigit
123 hints
124 incgv
125 in_eval
126 in_my
127 inplace
128 lastfd
129 last_in_gv
130 last_lop
131 last_lop_op
132 lastscream
133 laststatval
134 laststype
135 last_uni
136 lex_brackets
137 lex_brackstack
138 lex_casemods
139 lex_casestack
140 lex_defer
141 lex_dojoin
142 lex_expect
143 lex_formbrack
144 lex_inpat
145 lex_inwhat
146 lex_op
147 lex_repl
148 lex_starts
149 lex_state
150 lex_stuff
151 lineary
152 linestr
153 localizing
154 main_cv
155 main_root
156 mainstack
157 main_start
158 markstack
159 markstack_max
160 markstack_ptr
161 max_intro_pending
162 maxo
163 maxscream
164 maxsysfd
165 min_intro_pending
166 minus_a
167 minus_c
168 minus_F
169 minus_l
170 minus_n
171 minus_p
172 multi_close
173 multi_end
174 multi_open
175 multi_start
176 na
177 nexttoke
178 nexttype
179 nextval
180 nice_chunk
181 nice_chunk_size
182 No
183 no_aelem
184 no_dir_func
185 no_func
186 no_mem
187 nomemok
188 no_modify
189 no_myglob
190 no_security
191 no_sock_func
192 no_symref
193 no_usym
194 no_wrongref
195 nrs
196 oldbufptr
197 oldname
198 oldoldbufptr
199 op
200 opargs
201 op_desc
202 op_mask
203 op_name
204 op_seq
205 origalen
206 origargc
207 origargv
208 origenviron
209 origfilename
210 osname
211 padix
212 padix_floor
213 pad_reset_pending
214 patchlevel
215 patleave
216 perldb
217 perl_destruct_level
218 pidstatus
219 ppaddr
220 preambleav
221 preambled
222 preprocess
223 profiledata
224 regdummy
225 regendp
226 regeol
227 reginput
228 regkind
229 reglastparen
230 regsize
231 regstartp
232 restartop
233 rs
234 rsfp
235 rsfp_filters
236 runops
237 savestack
238 savestack_ix
239 savestack_max
240 sawampersand
241 scopestack
242 scopestack_ix
243 scopestack_max
244 screamfirst
245 screamnext
246 secondgv
247 signals
248 sig_name
249 sig_num
250 simple
251 sortcop
252 sortstash
253 splitstr
254 stack_base
255 stack_max
256 stack_sp
257 statbuf
258 statcache
259 statgv
260 statname
261 statusvalue
262 stdingv
263 sub_generation
264 subline
265 subname
266 Sv
267 sv_arenaroot
268 sv_count
269 sv_no
270 sv_objcount
271 sv_root
272 sv_undef
273 sv_yes
274 tainted
275 tainting
276 timesbuf
277 tmps_floor
278 tmps_ix
279 tmps_max
280 tmps_stack
281 tokenbuf
282 top_env
283 toptarget
284 uid
285 unsafe
286 varies
287 vtbl_amagic
288 vtbl_amagicelem
289 vtbl_arylen
290 vtbl_bm
291 vtbl_dbline
292 vtbl_env
293 vtbl_envelem
294 vtbl_glob
295 vtbl_isa
296 vtbl_isaelem
297 vtbl_mglob
298 vtbl_pack
299 vtbl_packelem
300 vtbl_pos
301 vtbl_sig
302 vtbl_sigelem
303 vtbl_substr
304 vtbl_sv
305 vtbl_taint
306 vtbl_uvar
307 vtbl_vec
308 warnhook
309 warn_nl
310 warn_nosemi
311 warn_reserved
312 warn_uninit
313 watchaddr
314 watchok
315 Xpv
316 Yes
317
318* have an --env option for soak to set env variable combinations
319
320* only overwrite generated files if they actually changed
321
aef0a14c
MHM
322* try to make parts/apicheck.pl automatically find NEED_ #defines
323
0c96388f
MHM
324* add support for my_vsnprintf?
325
326* try to perform some core consistency checks:
f2ab5a41 327
0c96388f
MHM
328 - check if 'd' flag in embed.fnc matches with
329 supplied documentation
330
331 - check if all public API is documented
332
333* check (during make regen?) if MAX_PERL in PPPort_pm.PL
334 needs to be updated
335
336* see if we can implement sv_catpvf() for < 5.004
f2ab5a41 337
0d0f8426
MHM
338* MULTICALL ?
339
04fc8b94 340* improve apicheck (things like utf8_mg_pos_init() are
9132e1a3 341 not currently checked)
04fc8b94 342
adfe19db 343* more documentation, more tests
0a7c7f4f 344
adfe19db
MHM
345* Resolve dependencies in Makefile.PL and remind of
346 running 'make regen'
0a7c7f4f 347