[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference evms::y2k

Title:OpenVMS Year 2000
Moderator:EVMS::MARIONN
Created:Mon Aug 26 1996
Last Modified:Fri Jun 06 1997
Last Successful Update:Fri Jun 06 1997
Number of topics:82
Total number of notes:427

10.0. "Investigation techniques and guidelines" by EVMS::KAUFFMAN () Wed Aug 28 1996 20:11

T.RTitleUserPersonal
Name
DateLines
10.1Due DiligenceEVMS::KAUFFMANWed Aug 28 1996 20:3626
10.2Search engine with OpenVMS interface listEVMS::KAUFFMANWed Aug 28 1996 20:5220
10.3I can't find the file.TKOV51::YOSHIMURATom Yoshimura - FAE/Technology Product Business/Digital-JapanThu Dec 05 1996 02:5530
10.4Again...TKOV51::YOSHIMURATom Yoshimura - FAE/Technology Product Business/Digital-JapanSat Dec 07 1996 06:116
10.5maybe you are hitting the gatewaySTAR::PCLARKTue Dec 10 1996 17:008
21.6A few quick onesEVMS::WALLShow me, don't tell meThu Mar 27 1997 09:5629
    
    Here are a few quick and dirty techniques I ran across during the
    AMACRO checkout.  These may seem like a bit of pedantry, but a daunting
    task like line-by-line checks of all this code can cloud the mind a bit.
    Your mileage, of course, may vary.
    
    Generally speaking, this will go faster if you'll do a bit of up front
    work.  Spare yourself the agony of checking each listing or source file
    fresh off a result disk or out of the master pack.  What may work for
    one facility may not work for another.
    
    1) Use source files whenever possible.  If you're using listing files
    for some reason, copy them off a result disk and use an editor to
    eliminate things you don't need to look at, like generated machine code
    listings and lines full of library or header file references (C
    #includes, BLISS LIBRARY and REQUIRES, etc.)
    
    2)  Look for opportunites to make the VMS SEARCH command do a little
    work for you.  For example, a module might contain a lot of function
    calls, subroutine calls, or assembly language code you already know to
    be Y2K safe.  These modules can be pared down with judicious use of the
    SEARCH command using a /MATCH=NOR qualifier.  This same technique can
    spare you looking at calls to system services that have already been
    judged bulletproof, like $GETTIM.
    
    3) Skim over comments to make sure they don't contain any useful hints,
    then throw them out before doing your line-by-line check.
    
    DFW
21.7Gotcha with $FAO and !%D, !%TMILORD::BISHOPThe punishment that brought us peace was upon HimTue Apr 08 1997 14:2522
    I found a gotcha with searching for uses of $FAO and !%D, !%T.
    
    When an expected occurrence of !%D didn't show up in the search output
    for SDA, I took a closer look at the $FAO call where I knew it was
    used.
    
    It didn't show up because I had used !17%D to only display date, hours
    and minutes but not seconds or hundredths (because object fils and STB
    files only contain their creation date/time to that granularity).
    
    So !%D would never find them. And you don't want the search tool to
    blindly search for %D and %T, since those will find %d in C printf
    calls, and %DECLARED and %THEN in Bliss source.
    
    But you *can* do searches that will limit the noise generated. For
    example:
    
    	$ SEARCH *.* "%D,"%DECLARED"/match=xor/exact
    
    will find %D but not %d or %DECLARED
    
    - Richard.
21.8Try FIND instead of SEARCHALICAT::MACKAYDon MackayTue Apr 08 1997 20:3627
�     It didn't show up because I had used !17%D to only display date, hours
�     and minutes but not seconds or hundredths (because object fils and STB
�     files only contain their creation date/time to that granularity).

Try using the "FIND" and/or "FIND/REPLACE" program (which I got from the
enet somewhere - the toolshed library???). This program allows the use
of more complex search regular expressions - you could find this type of
$FAO string with:
	$ FILE input_file "!\d\.\%\[Dd]"
which means:
- ! => find a literal "!"
- \d\. => find zero or more decimal digits
- \% => find a literal "%" (the % character by itself means match any
        single character
- \[Dd] => find an upper or lower case D

You xcould also use
	$ FIND input_file "!\(\d\.\)\%\[Dd]
where the extra "\(" and "\)" delimit a 'group' which can be referred to
later so that (for example in a FIND/REPLACE command) the number can be
processed in some way.

Any help?

Cheers,

Don
21.9SEAR/MATCH=PATTERN (-:AUSS::GARSONDECcharity Program OfficeTue Apr 08 1997 23:368
    re .7
    
    What about
    
    $ SEAR/MAT=AND file "!","%D"
    
    Perhaps these problems will be the trigger that finally encourages
    someone to upgrade SEARCH to support pattern matching.