?? cl-log.txt
字號:
9/04 (STLFilt.pl v2.20)
Fixed issues with direct initialized map/multimap and set/multiset
iterators for VC6 (native and STLport); hash-based container iterators
under VC7 w/STLport; list iterators just about everywhere; misc. other
regex cleanup.
9/01 (STLFilt.pl v2.19, CL.CPP v2.29)
Changed the default setting of the /banner flag in STLFilt.pl to 'Y',
for consistency with the gcc distribution. Now the Proxy CL turns
STLFilt.pl's banner *off* explicitly, and MFilt.bat no longer has to
turn it on.
8/27 (STLFilt.pl v2.18)
Fixed bug where some C4786 warnings were not being handled correctly.
8/24 (CL.CPP v2.28)
Corrected bug where the explicit output width specification of 0
(/width:0) on the Proxy CL command line prevented *any* passing
of the width parameter to STLFilt.pl. This only worked if the
default value of $output_width in STLFilt.pl was 0.
STLFilt.BAT: Comments were really out-of-date. Fixed them.
7/21
Corrected corrupt CL.CPP (source code only; executable CL.EXE was
okay).
6/15 (STLFilt.pl v2.17)
Corrected bug where substitution of the word "iterator" was being
performed without proper word boundary detection.
4/13 (STLFilt.pl v2.16)
Documented the fact that /alloc:L is *broken* under VC7. Not sure
how many people ever really want undecrypted allocators, but it looks
like the option to see them while still doing other decryption has
been broken for quite a while without my realizing it.
Tweaked the line-breaking algorithm a bit (when /width:nn is used)
to include colons as line-break column candidates.
4/02 (CL.CPP v2.27)
Enhanced the Proxy-CL.INI file format to support trailing comments,
introduced by semicolon (;) characters, on configuration lines.
This simplifies the presentation of the config file and its options;
now, you just remove the *leading* comment on any line to activate
the line, rather than copying and pasting the line as previously
instructed. [Thanks to Ed Kaulakis for suggesting this approach]
The MFilt.BAT batch file now appends the value of the environment
variable FOPTS to the internal batch file variable FOPTIONS. Since
Decryptor options cannot be supplied on the MFilt.BAT command line,
this allows you to set such options in the FOPTS variable before
running the batch file.
3/16 (STLFilt.pl v2.15)
Added user-configurable variable $keep_space_pre_colon. If set to
1 (true), causes the space before the ":" on source line numbers to
be preserved, for compatibility with certain 3rd-party IDE tools for
MSVC such as RoseRT. There is no command-line option for this setting;
STLFilt.pl needs to be edited to set $keep_space_pre_colon to 1 (it
defaults to 0).
3/11 (STLFilt.pl v2.14)
Improved handling of reverse iterators somewhat under Dinkumware / VC7.
3/10 (STLFilt.pl v2.13)
Corrected several filtering bugs w/respect to map/multimap iterators under
STLport, where these iterators were incorrectly transformed into *set*
iterators and/or their const-ness was attributed incorrectly.
2/27
Added MFilt.BAT to the distribution. This batch file illustrates how to
drive the compile/decryption process directly from the command line with
the least amount of installation headaches, and also shows the options
that are useful under such circumstances.
2/26 (STLFilt.pl v2.12)
(CL.CPP v2.26)
Fixed several archaic/buggy/subtly-hosed issues in the Perl script
after finally remembering to run it with ActivePerl's -W option (shame on
me, as I always teach Perl students to use -w...)
Added "intelligent" line wrapping to the Perl script, after getting
good results with that approach in the Comeau and g++ versions. By either
setting OUTPUT_WIDTH in Proxy-CL.INI or using the new /width:nn option to
the Proxy CL (the command-line option overrides the config file setting),
output lines will be aesthetically wrapped at no farther than the selected
column width. While the end result will be a greater number of lines of
error diagnostic output, you may find the increased readability to be worth
it. The default value of 0 means no wrapping is performed.
2/20 (STLFilt.pl v2.11)
Added the /banner:x option to control display of the sign-on banner.
By default, the banner is not displayed. Saying /banner:y or just /banner
causes it to display (or you can change the default behavior by editing
the user-configurable $banner variable in STLFilt.pl). This option is for
the benefit of folks using the Perl script directly from the command line,
rather than via the Proxy CL.
1/11
Fixed some minor documentation typos, and explained (in QUICKSTART.txt)
why there isn't a SETUP utility for this package.
====
2001
====
11/14 (STLFilt.pl v2.10)
Added a new debugging feature available only via the Proxy-CL.INI
configuration file: If the line
LOG_NATIVE_MSGS=Y
appears in the [proxy.cl] section of Proxy-CL.INI, then the Perl
script writes a file named "NativeLog.txt" to the current directory,
containing the full pre-filtered compiler output. (If running the Perl
script directly, the option to the script is simply "/lognative").
STLFilt.pl now diagnoses illegal command line options, rather than
ignoring them (this mainly assists folks who use the Perl script directly
via pipes, rather than driving it via the Proxy CL).
(CL.CPP v2.25)
Now Supports the LOG_NATIVE_MSGS config file option as described above.
11/9 (STLFilt.pl v2.09)
Fixed handling of the "class" keyword; it was being stripped uncon-
ditionally, even when just part of the "prose" of a diagnostic rather
than within a type name. Now, the word "class" is only stripped if it
follows an odd-numbered single-quote.
Added some information to CUSTOMIZE.TXT on how to configure a pair of
Visual Studio IDE "Tools" to invoke STLFilt.BAT directly from within
the IDE. This ability was mentioned previously but never elaborated on.
Also added some additional clarifications and corrected a few errors in
other parts of CUSTOMIZE.TXT.
11/1 (CL.CPP v2.24)
The safeguards added for v2.23 now account for the ".EXE" not
being explicitly present in the Proxy-CL.INI definition of PERL_EXE.
Trailing spaces in Proxy-CL.INI options are now stripped explicitly
(it would seem that, while Windows98 was already stripping them
automatically, NT does not...)
10/30 (CL.CPP v2.23)
Added safeguards to ensure that the Perl interpreter and filter
script are both present at their configured locations if filtering is
enabled.
Improved the "usage:" message (when no args given on command line)
(STLFilt.pl v2.08)
Corrects bug in v2.07: "while compiling..." messages following stripped
C4786 warnings were not being correctly suppressed.
10/28 (STLFilt.pl v2.07)
Prevented filenames at the start of messages from getting filtered.
In the various places where colons were being preceded by a gratuitous
space, the spaces are now deleted.
Tweaked QUICKSTART.txt to clarify some issues regarding the customization
of Proxy-CL.INI and renaming of the native CL.EXE file.
10/7 (STLFilt.pl v2.06)
Fixed support for unnamed namespaces; now the string
`anonymous namespace'
is changed into
anon_ns
so it has the semantics of a simple identifier, and is filtered
accordingly in subsequent processing.
Fixed bug in VC7 "with" clause identifier substitution when one entire
placeholder name in a single clause is the same as the initial characters
of a subsequent name in the same clause (wasn't properly honoring word
boundaries when making substitutions).
Fixed bug in list iterator detection for Dinkumware and VC7.
A leading "const" was being accidentally stripped from certain
VC6/Dinkumware map/multimap "pair" constructs.
10/6 (CL.CPP 2.22)
Added "/NF" (No Filtering) command-line option to allow selective non-
filtering via project configuration, and to keep from having to use a
separate command name (e.g., CL2) to compile *quickly* without filtering.
Due to some additional warnings generated by VC7 for __try/__finally
blocks, the logic of the interprocess communication code was slightly
reworked in order to prevent those warnings.
(STLFilt.pl v2.05)
The Perl script now detects VC7 messages where the /WL ("One Line")
compile option was *not* used, and issues a warning to that effect at the
end of the session.
10/4
Changed Proxy CL Sign-on message to include my company name, "BD
Software" for obscure legal reasons.
10/2 (STLFilt.pl v2.04)
Added support for namespace qualifiers (other than std::, which was
already handled by being stripped). The fact it took *this* long for
someone (thanks Wilka) to point out namespaces weren't supported has got
to say something about how much they're actually used ;-)
10/2 (STLFilt.pl v2.03)
Instead of skipping around iterator details for the more complex iterator
types, STLFilt.pl now detects and processes all iterator type explicitly.
The result is that more detailed information reaches the resulting
error message. To do this I had to special-case many of the iterator types
across the various libraries, but I think the result will be worth it.
Since slist was the only extended container left to support, I added it
(not that there was much to do; it already worked with Dinkumware, took
only a tiny tweak for STLport, and VC7 doesn't seem to support it at all).
9/29 (STLFilt.pl v2.02)
Due to a mistake during testing, I failed to actually run validation
tests on the VC7/STLport combo before release. Thus, I missed a
few constructs in that platform. Those omissions have been corrected.
Also corrected a few other hashed container-related bugs.
9/28 (CL.CPP v2.21)
Fixed bug causing a crash when CL is in debug mode and options flags
for the Perl script are used on the CL command line
Added /func:x command line and configuration option to convey
"Function Policy" setting to the Perl script under VC7.
(STLFilt.pl v2.01)
Added hash-based container support. The containers hash_set, hash_multiset,
hash_map and hash_multimap are now fully processed under all supported
libraries which themselves contain these containers-- I.e., all libraries
*except* native VC6.
In general, VC7 support has been tightened up and normalized with the
addition of the /func:x option to control the new "Functor Policy". See
README-VC7.txt for more details.
9/24 (CL.CPP v2.20)
Added general VC7/.NET support...but ONLY when the /WL compiler switch is
specified during compilation!
Added /alloc:x command line option to allow command line specification
of allocator policy (applies under VC7 only; see the discussion in the
STLFilt.pl v2.00 section below)
Added three new config file options in [proxy.cl] section:
ITERATOR_POLICY=x (S, M or L): supports config-file default iterator
policy
ALLOCATOR_POLICY=x (S or L): supports config-file allocator policy
(effective under VC7 only)
OUTPUT_WIDTH=nn wraps output lines at column nn (see
more details in the STLFilt.pl section
below.)
Many thanks to Wilka for help getting the VC7 version checked out!
(STLFilt.pl v2.00)
Added VC7/.NET support. When the Message Decryptor sees messages in the VC7
"/WL" format, it processes the "with" clauses by substituting all the
place-holder names with the types they represent. The net effect
(no pun intended) is a return to VC6-style messages, with
more-or-less Dinkumware 3.08 identifier names. There are a few
changes from the Dinkumware 3.08 names, however; I've tried
to account for most of them, but this is still a "work in progress".
Added /alloc:x command line option to control VC7 allocator policy. Note
that under VC6, allocators are still handled fully automatically. Due to
the more complex message format of VC7, I can no longer use my former
heuristic to determine when to filter allocator clauses; under VC7, it
becomes the responsibility of the user to select an allocator policy of
either 'S' (strip most allocator clauses) or 'L' (leave allocator clauses
intact).
Added /width:nn command line option to control output line wrapping. This
option (fed to the script by the Proxy CL and controlled by the
OUTPUT_WIDTH config option in the [proxy.cl] section of Proxy-CL.INI)
causes output lines to be wrapped at the specified column. This may make
it easier to read messages within the VC7 IDE's output window, but then
you can no longer double-click on those messages and see them in their
entirety in the status bar if they're wrapped. The default value is 0,
to disable wrapping.
9/20
The README-STLport.txt file referred to in README.txt had been accidentally
omitted from the distribution for the past several releases. It has now
been restored.
9/12 (STLFilt.pl v.1.11)
One of the two colons in "::" sequences preceding the keyword "iterator"
was sometimes accidentally stripped.
Added additional procedural processing for reverse_, bidirectional_,
etc., iterators.
In QUICKSTART.txt, added some information about taking advantage of the
iterator policy options.
9/10
Excised last (I hope) few references to the obsolete INSTALL.txt file
from CL.CPP and README.txt.
9/8 (CL.cpp v2.12)
Fixed some debug-related logic to use conditional compilation rather
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -