summaryrefslogtreecommitdiff
path: root/warnings.pl
Commit message (Collapse)AuthorAgeFilesLines
* Move regen scripts to regen/Steffen Mueller2010-10-101-831/+0
| | | | | Moves the various scripts that are called by regen.pl to a subdirectory to reduce clutter.
* Remove from warnings.pl various long commented out and dead code.Nicholas Clark2010-09-221-8/+0
| | | | | This code was commented out/rendered vestigial in 1998, 2000 and 2002 by 599cee73f2261c5e, d3a7d8c7d7e4d69d and 0d658bf5a06395c2.
* rename &warnings::register to avoid ambiguityRicardo Signes2010-09-121-2/+2
| | | | | until this change code calling "warnings::register->import" was confused by &warnings::register existing.
* Bump $warnings{,::register}::VERSIONFlorian Ragwitz2010-09-101-1/+1
|
* Update warnings.pl with the ::register changesFlorian Ragwitz2010-09-101-1/+33
| | | | Also regenerate lib/warnings.pm from that.
* warnings.pl: Silence perl compiler warningsKarl Williamson2010-07-261-4/+4
| | | | warnings.pl was trying to read two beyond the end of an array.
* Move parameter validation, and carp/croak generation into warnings::__chk.Nicholas Clark2010-06-231-27/+27
| | | | | This results in enabled, fatal_enabled, warnif, and warn as wrappers to __chk selecting their desired behaviour, and eliminates duplicated code.
* Move the repeated vec logic into warnings::__chk.Nicholas Clark2010-06-231-21/+23
|
* No need to return $i from warnings::__chk, as the value is not used.Nicholas Clark2010-06-231-5/+5
| | | | | $i holds the depth of the caller frame from which the warnings bitmask is read. The value has not been used by any caller of __chk() since c3186b657097c822.
* Make warnings::__chk default the returned caller's bitmask to 0.Nicholas Clark2010-06-231-5/+3
| | | | This removes defined checks in subsequence code paths, reducing complexity.
* Merge the guts of warnings::import and warnings::bits into _bits.Nicholas Clark2010-06-231-35/+11
| | | | | | Additionally, removing the scope entry caused by the {} in the fast path of &import reduces instruction count and L1 cache misses for warnings->import() by 3%.
* warnings::import() can exit quickly and efficiently if @_ is empty.Nicholas Clark2010-06-231-6/+9
| | | | | For this platform, cachegrind reckons warnings->import() uses 7% fewer instructions executed and has 9% fewer L1 cache references.
* Some tiding of warnings::__chk().Nicholas Clark2010-06-231-3/+3
| | | | | Remove my $this_pkg, rendered unused by 4f527b719ae89076. Move $pkg inside the if() block. Don't needlessly assign to $i.
* regen warnings.pl for new version numberRicardo Signes2010-01-191-1/+1
|
* Move prototype parsing related warnings from the 'syntax' top level warnings ↵Matt S Trout2010-01-101-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | category to a new 'illegalproto' subcategory. Two warnings can be emitted when parsing a prototype - Illegal character in prototype for %s : %s Prototype after '%c' for %s : %s The first one is emitted when any invalid character is found, the latter when further prototype-type stuff is found after a slurpy entry (i.e. valid character but in such a place as to be a no-op, and therefore likely a bug). These warnings are distinct from those emitted when a sub is overwritten by one with a different prototype, and when calls are made to subroutines with prototypes - those are in the pre-existing sub-category 'prototype'. Since modules such as signatures.pm and Web::Simple only need to disable the warnings during parsing, I chose to add a new category containing only these. Moving these warnings into the 'prototype' sub-category would have forced authors to disable more warnings than they intended, and the entire raison d'etre of this patch is to allow the specific warnings involved to be disabled. In order to maintain compatibility with existing code, the new location needed to be a sub-category of 'syntax' - this means that no warnings 'syntax'; will continue to work as expected - even in cases like Web::Simple where all subcategories extant prior to this patch are re-enabled (this is another reason why a move into the 'protoype' category would not achieve the desired goal). The category name 'illegalproto' was chosen because the most common warning to encounter is the "Illegal character" one, and therefore 'illegalproto' while minorly inaccurate by ignoring the (relatively recent and unknown) second warning is an easy name to spot on an initial skim of perllexwarn and will behave as expected by also disabling the case of an unusual prototype that happens to look like a normal one. This patch updates pod/perllexwarn.pod, perldiag.pod and perl5113delta.pod to document the new category, toke.c and warnings.pl to create and implement the new category, and a new test t/op/protowarn.t that verifies the new behaviour in a number of cases. It also includes the files generated by regen.pl that are found in the repo - notably warnings.h and lib/warnings.pm.
* Bump version and regenerate warnings.pmRafael Garcia-Suarez2009-11-241-1/+1
|
* Add code and starting perldoc for warnings::fatal_enabled.Andrew Rodland2009-11-241-0/+32
| | | | | | | | | | This is an analog for warnings::enabled, except it tests whether the given category has been set fatal using "use warnings FATAL => foo". This is mostly for symmetry. Assumes that the fatal bit for a category will have an offset one higher than the regular bit for the category, because otherwise much rewriting of __chk would be required.
* Change S_ckwarn_common() to looping over the packed warning value.Nicholas Clark2009-10-131-0/+2
| | | | | | The core never uses WARN3() or WARN4(), and rarely uses WARN2(), so the previous code, effectively an unwrapped loop, wasn't a speed up. Functionally equivalent smaller code fits better into CPU caches.
* warnings.pl and lib/warnings.pm have been changed since 5.10.0. Their ↵Jesse Vincent2009-07-291-2/+2
| | | | versions needed to be bumped before 5.11.0
* Don't preload Carp::Heavy in warnings.pmRafael Garcia-Suarez2009-07-141-2/+2
| | | | Use only Carp, now that all the machinery is in it.
* Add some documentation to the heads of the various *.pl build scriptsDavid Mitchell2009-05-151-0/+13
|
* Drag autodoc.pl and overload.pl into the age of safer_open().Nicholas Clark2008-03-171-2/+2
| | | | | | | | Thanks to the wisdom of london.pm, stuff the filename into the SCALAR slot of the typeglob created in safer_open(), so that ... Add safer_close(), that will die (with the filename) if the close fails. p4raw-id: //depot/perl@33539
* Rename safer_rename() to rename_if_different(), to accurately describeNicholas Clark2008-03-151-34/+32
| | | | | | | | | | | | | what it does. Use File::Compare rather than Digest::MD5, as the files are small enough to simply read in. (File::Compare dates from 5.004) Remove safer_rename_always(), which isn't used. DRY by replacing the cargo-culted "open or die" with a new function safer_open(), which uses Gensym (5.002) to create an anonymous file handle, and opens and binmodes the file, or dies. This necessitates replacing bareword file handles with lexicals in all the callers. Correct the names of files in close or die constructions. p4raw-id: //depot/perl@33538
* Re: [patch] refine make regen to be more selectiveJim Cromie2008-03-151-5/+6
| | | | | | Message-ID: <47D720CE.7060004@gmail.com> Date: Tue, 11 Mar 2008 18:16:14 -0600 p4raw-id: //depot/perl@33537
* warn if ++ or -- are unable to change the value because it's beyondNicholas Clark2008-01-171-0/+1
| | | | | | the limit of representation in NVs, using a new warnings category "imprecision". p4raw-id: //depot/perl@32990
* If we use @{[]} (a.k.a. baby-cart) interpolation, we got warningsRafael Garcia-Suarez2007-10-101-2/+2
| | | | | when $" is undefined. p4raw-id: //depot/perl@32090
* Files names for pragmas strict and warnings can end in .pmcRafael Garcia-Suarez2007-10-091-1/+1
| | | p4raw-id: //depot/perl@32083
* Remove support for assertions and -ARafael Garcia-Suarez2007-06-051-1/+0
| | | p4raw-id: //depot/perl@31333
* Do the same thing as change #31082, but for warnings.pm.Rafael Garcia-Suarez2007-04-261-1/+8
| | | | | p4raw-link: @31082 on //depot/perl: e3def60f2e5ccd1bf34656c3a5e1691f3bdc48a9 p4raw-id: //depot/perl@31084
* Avoid *some* g++ errors. (But not all yet)Nicholas Clark2007-02-191-2/+3
| | | p4raw-id: //depot/perl@30365
* Integrate:Andy Lester2007-01-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ 28144] In Perl_Gv_AMupdate(), there's no need to call sv_unmagic() if we know the magic isn't there. [ 28145] Simplify the non-printable name error reporting code in Perl_allocmy(). [ 28176] Subject: [PATCH] Speed up utf8.c a bit Date: Thu, 11 May 2006 22:41:01 -0500 Message-ID: <20060512034101.GA10709@petdance.com> [ 28178] The upgrade/croak order in Perl_sv_utf8_encode() seemed utterly backwards. It now checks for readonly *first*. [ 28179] Subject: [PATCH] Proper use of static funcs in toke.c and pp_sys.c From: andy@petdance.com (Andy Lester) Date: Tue, 9 May 2006 12:27:30 -0500 Message-ID: <20060509172730.GA5272@petdance.com> [ 28180] Subject: [PATCH] upgrade bytes_to_uni From: andy@petdance.com (Andy Lester) Date: Fri, 12 May 2006 00:21:23 -0500 Message-ID: <20060512052123.GA21648@petdance.com> [ 28194] Subject: [PATCH] S_reguni should return its length From: andy@petdance.com (Andy Lester) Date: Sun, 14 May 2006 09:46:32 -0500 Message-ID: <20060514144632.GA20935@petdance.com> ooops, and also something in blead that wasn't meant to sneak in: Change PERL_WARNHOOK_FATAL to &PL_sv_placeholder, rather than some evil cast relative to NULL. p4raw-link: @28194 on //depot/perl: 71207a3462fa4c2b33c5608a4362ac40e975ecdb p4raw-link: @28180 on //depot/perl: 64844641e1be28fdf8b7bba9436537339624f40b p4raw-link: @28179 on //depot/perl: 931e0695c454f4c18f68d30775151862650cc4d8 p4raw-link: @28178 on //depot/perl: a5f5288a1ce96404c41043e92557b8c1a5ad9e30 p4raw-link: @28176 on //depot/perl: 3ebfea2846d81f58e86dfcb7f9e09300e5dfcd17 p4raw-link: @28145 on //depot/perl: d1544d85966c2f41014a6f408fd81b36501caa7c p4raw-link: @28144 on //depot/perl: 14899595d82ccba509ac7743655764129ed32177 p4raw-id: //depot/perl@29980
* Turn taint warnings (-t) into severe warnings, so they'reRafael Garcia-Suarez2007-01-081-3/+0
| | | | | | on by default, without having to play games with the warning bits. Add a test for -t. p4raw-id: //depot/perl@29717
* Restore modification in warnings.h from change 28662 by backporting itRafael Garcia-Suarez2006-08-071-2/+2
| | | | | to warnings.pl p4raw-id: //depot/perl@28666
* disable WARN and DIE hooks during constant foldingDave Mitchell2006-05-101-0/+3
| | | p4raw-id: //depot/perl@28148
* Change cop_warnings from an SV holding the warnings bitmask to aNicholas Clark2006-04-121-4/+8
| | | | | | | directly (shared) malloc()ed buffer holding the warnings bitmask. This avoids bugs/crashes when the interpreter that created an optree is freed but the optree remains in use by other interpreters. p4raw-id: //depot/perl@27779
* warnings.h does some evil(*) pointer arithmetic on (SV *)0, so aNicholas Clark2006-02-041-2/+2
| | | | | | simple replace of Nullsv with NULL turns out to be a bad idea. * Technically undefined behaviour, I believe. p4raw-id: //depot/perl@27078
* Re: [PATCH] s/Null(gv|hv|sv)/NULL/gSteven Schubiger2006-02-031-3/+3
| | | | | | Message-ID: <20060203152449.GI12591@accognoscere.homeunix.org> Date: Fri, 3 Feb 2006 16:24:49 +0100 p4raw-id: //depot/perl@27065
* Bump $VERSION in many modules that have changed.Nicholas Clark2006-01-121-2/+2
| | | p4raw-id: //depot/perl@26804
* warnings.pl/pm: Croaker function: bug (perl v5.8, v5.9)Bram2005-10-301-0/+1
| | | | | Message-Id: <42F28ED5.CFFDCCFD@wizbit.be> p4raw-id: //depot/perl@25888
* replace ckWARN macros with functionsDave Mitchell2005-07-021-55/+9
| | | p4raw-id: //depot/perl@25050
* Make Carp.pm even lighter (and Carp::Heavy even heavier)Dave Mitchell2005-06-271-1/+1
| | | | | Also move carp.pm pod to carp.pod p4raw-id: //depot/perl@24995
* Silence some more bcc32 compiler warningsSteve Hay2005-06-221-5/+5
| | | | | ("Suggest parentheses to clarify precedence") p4raw-id: //depot/perl@24938
* SvPVX_const() - Patch #1Steve Peters2005-05-201-2/+2
| | | | | Message-ID: <20050517231701.GA1394@mccoy.peters.homeunix.org> p4raw-id: //depot/perl@24509
* Include vim/emacs modelines in generated files to open themRafael Garcia-Suarez2005-05-111-3/+5
| | | | | | in read-only mode. Make vi modelines compatible with non-vim vi versions. p4raw-id: //depot/perl@24445
* Removing Y2K warningsAndy Lester2005-04-081-1/+0
| | | | | Message-ID: <20050407224442.GA23895@petdance.com> p4raw-id: //depot/perl@24205
* Re: [PATCH] Remove Carp from warnings.pmJim Cromie2005-01-071-3/+4
| | | | | Message-ID: <cfe85dfa05010305367445dee6@mail.gmail.com> p4raw-id: //depot/perl@23768
* Make all scripts run by regen.pl write output with UNIX style EOL's.Steve Hay2004-11-161-0/+2
| | | | | (autodoc.pl was already done by change 23371.) p4raw-id: //depot/perl@23501
* [perl #31843] warnings::warn($obj,...) fails when $obj overloads "" kaminsky@math.huji.ac.il2004-10-121-4/+6
| | | | | | | From: kaminsky@math.huji.ac.il (via RT) <perlbug-followup@perl.org> Message-ID: <rt-3.0.11-31843-97358.2.89612012687236@perl.org> (with tweaks) p4raw-id: //depot/perl@23361
* Fix bug #24383, where hashes with the :unique attribute weren'tDave Mitchell2004-01-011-3/+3
| | | | | | | | getting made readonly on interpreter clone. Also, remove the :unique attribute from the hashes in warnings.pm, since they may later be modified by warnings::register. Finally, adds tests for the :unique attribute. p4raw-id: //depot/perl@22034
* Re: [perl #15395] lexical warnings and inheritanceAnno Siegel2003-09-101-5/+6
| | | | | | | | | | | Message-Id: <200308312208.WAA25312@lublin.zrz.TU-Berlin.DE> The test has been moved into warnings.pm's test suite. Note that this patch fixed as well the behaviour of warnings::enabled regarding lexical scoping and different files; hence the expected results in a few tests in /t/lib/warnings/9enabled has been reverted. p4raw-id: //depot/perl@21167