diff -r 7c11c3d8d025 -r 44b0e894b7ab deprecated/buildtools/buildsystemtools/scanlog/Scanlog.pm --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/deprecated/buildtools/buildsystemtools/scanlog/Scanlog.pm Wed Oct 27 19:35:19 2010 +0800 @@ -0,0 +1,966 @@ +# Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies). +# All rights reserved. +# This component and the accompanying materials are made available +# under the terms of "Eclipse Public License v1.0" +# which accompanies this distribution, and is available +# at the URL "http://www.eclipse.org/legal/epl-v10.html". +# +# Initial Contributors: +# Nokia Corporation - initial contribution. +# +# Contributors: +# +# Description: +# summarise an automated build log +# documentation available in generic\tools\e32toolp\docs\scanlog.txt +# please update the documentation when modifying this file +# +# + +package Scanlog; + +use strict; +use Carp; + +# CheckForErrors +# +# Inputs +# $line - Line of text to check +# +# Outputs +# Return true for presence of error in the line +# Return false for no error found +# +# Description +# This function matches the input against a known set of Error Strings +sub CheckForErrors +{ + my ($line) = @_; + + # FLEXlm license server errors + if ($line =~ /FLEXlm error:/) + { + return 1; + } + + # BLDMAKE ERROR: Can't find "\INTERNET\GROUP\BLD.INF" + # ABLD ERROR: Project Bldmake directory "\EPOC32\BUILD\APP-FRAMEWORK\UIKLAF\GROUP\" does not exist + + if ($line =~ /(ABLD|BLDMAKE) ERROR:/) + { + return 1; + } + + # "\WAPENG\GROUP\BLD.INF" FATAL ERROR(S): + + if ($line =~ /FATAL ERROR\(S\):/) + { + return 1; + } + + + # NMAKE : fatal error U1077: 'C:\apps\DevStudio\VC\BIN\NMAKE.EXE' : return code '0x2' + + if ($line =~ /fatal error U1077/) + { + return 1; + } + + # match all falal error + if ($line =~ /^fatal error/i) + { + return 1; + } + + # NMAKE : warning U4010: 'FINALCOPYFXCM' : build failed; /K specified, continuing ... + + if ($line =~ /warning U4010/) + { + return 1; + } + + # make: *** [SAVESPACECONVTOOL] Error 2 + + if ($line =~ /make(\.exe)?(\[\d+\])?: \*\*\* /) + { + return 1; + } + + # make: Target `SAVESPACE' not remade because of errors. + + if ($line =~ /make(\.exe)?(\[\d+\])?: .* not remade /) + { + return 1; + } + + # "..\UCRT\Ecrt0.cpp", line 24: Error: #390: function "main" may not be called or have its address taken + # "EUSER\\epoc\\arm\\Uc_i64.cia", line 16: Error: A1356W: Instruction not supported on targeted CPU + + if ($line =~ /"(.*)", line (\d+): (Error: +(.\d+.*?):.*)$/) + { + return 1; + } + + # Fatal error: Internal fault: 0x5c6e (200322) in _ZN17CContactLocalView20HandleDatabaseEventLE23TContactDbObserverEvent + + if ($line =~ /error: ((Internal fault):.*)$/) + { + return 1; + } + + # Exception: STATUS_ACCESS_VIOLATION + # networkPrim.c + # 0 [main] make 2020 handle_exceptions: Exception: STATUS_ACCESS_VIOLATION + # 265 [main] make 2020 open_stackdumpfile: Dumping stack trace to make.exe.stackdump + if ($line =~ /Exception: STATUS_ACCESS_VIOLATION/) + { + return 1; + } + + # MSGBROWSER.WINSCW:3233: target `\EPOC32\RELEASE\WINSCW\UDEB\Z\System\Data' given more than once in the same rule. + if ($line =~ /target .* given more than once in the same rule/) + { + return 1; + } + + # ERROR: + if ($line =~ /^ERROR: /m) + { + return 1; + } + + # ERROR (for CDB errors) + if ($line =~ /^ERROR\t/) + { + return 1; + } + + # elf2e32 : Error: E1035: Undefined Symbol blah blah blah + # elf2e32 : Error: E1036: Symbol blah blah blah + if ($line =~ /^\s*elf2e32\s*:\s*Error\s*:\s*/i) + { + return 1; + } + + # Not already returned so return false + return 0; +} + +# CheckForRemarks +# +# Inputs +# $iLine - Line of text to check +# +# Outputs +# Return true for presence of Warning in the line according to the warning codes +# defined in the checkList array +# The list is the current known EABI warnings which are considered to be +# Remarks +# Return false for no Warning found +# +# Description +# This function matches the input against a known set of Warning Strings defined +# in the array CheckList +my %RVCT_checklist=( + + +# Warnings to be fixed if deemed safe + + "#111-D" => "statement is unreachable", + "#186-D" => "pointless comparison of unsigned integer with zero", + "#236-D" => "controlling expression is constant", + "#494-D" => "declaring a void parameter list with a typedef is nonstandard", + "C2874W" => "xxx may be used before set", + "C3017W" => "xxx may be used before set", + +# Warnings not required to be fixed, too risky + + "#1293-D" => "assignment in condition", + +# Warnings not required to be fixed, too big a workload + + "#177-D" => "variable abc was declared but never referenced", + "#550-D" => "variable xxx was set but never used", + "#830-D" => "function \"XXX::operator new(xyz)\" has no corresponding operator delete (to be called if an exception is thrown during initialization of an allocated object)", + "L6331W" => "No eligible global symbol matches pattern _ll_cmpeq.", + ); + +sub CheckForRemarks +{ + my ($line) = @_; + + # "..\UCRT\Ecrt0.cpp", line 12: Warning: #335-D: linkage specification is not allowed + # "s16c.o(.directive)", line 70: Warning: L6331W: s16c.o(.directive)(line 70, col 14) No eligible global symbol matches pattern _fsqrt. + if ($line =~ /".*", line \d+: Warning: +(.\d+.*?):/) + { + # Some compiler warnings about about style rather than substance. The RVCT + # compiler warnings are easily identified, and the RVCT_checklist above + # classifies the warnings present in the Symbian OS source code which are + # not currently considered to be violations of the "zero warnings" policy. + # It is the responsibility of the Master Codeline Forum to manage this list, + # as part of the "zero warnings" policy. + return defined($RVCT_checklist{$1}); + } + + # Command line warning D4025 : overriding '/O1' with '/Od' + if ($line =~ /Command line warning D4025 : /) + { + # This could be fixed by more subtle code in cl_win.pm + # which avoids putting both /O1 and /Od on the command line + return 1; + } + + # REMARK: + if( $line =~ /^REMARK: /m) + { + return 1; + } + + # Windows Event log warning from GNU Make - Treat as remark for the time being. + if ($line =~ /^EventType:\s+Error\s+Source:\s+GNU\s+Make/) + { + return 1; + } + + # This is used convert what would be picked up as warning in to a remark, as remarks are check for first + # It also returns an additional value of the number of lines to slurp up to get the so the multi line + # warning (remark) is only seen once. + + # ..\SETEL\ET_PHONE.CPP:19: warning: cannot find matching deallocation function + # ..\SETEL\ET_PHONE.CPP:19: warning: for 'CReqEntry' + if ($line =~ /:\d+: warning: cannot find matching deallocation function/) + { + return 1,1; + } + + # fix to get scanlog catch the output of #pragma message (...) as a remark + #Codewarrior 3.0 doesn't output line number for #pragma message, whereas 3.1.1 outputs line number. + #The regexp below matches both the cases + if( $line =~ /((:\d+)*: note: )/) + { + return 1; + } + + # getrel failed. + # Error: testtools_stat_desktop DP00391_DeveloperProduct not found + if( $line =~ /^Error:.+not found/) + { + return 1; + } + # Not already returned so return false + return 0; + +} + +# CheckForWarnings +# +# Inputs +# $iLine - Line of text to check +# +# Outputs +# Return true for presence of Warning in the line +# Return false for no Warning found +# +# Description +# This function matches the input against a known set of Warning Strings +sub CheckForWarnings +{ + my ($line) = @_; + + # linkfouraif.rss(25) : Warning: (047) the STRUCT that this resource is based on contains a + + if ($line =~ /\\\\(.*?)\(\d+\)\s:\sWarning:\s\(\d+\)/) + + { + + return 1; + } + + + # RCOMP Warning: Unmatched enum name used as simple initialiser + + if ($line =~ /Warning: Unmatched/i) + { + return 1; + } + + + # BLDMAKE WARNING: read-only ABLD.BAT will be overwritten + + if ($line =~ /^BLDMAKE WARNING:/) + { + return 1; + } + + + # \FORM\GROUP\BLD.INF WARNING(S): + # \FORM\GROUP\BLD.INF(28) : Exported source file \form\group\tagma.rtf not found + + if ($line =~ /WARNING\(S\)/) + { + return 1; + } + + # WARNING: Can't find following headers in User or System Include Paths + # WARNING: Frozen .DEF file \CSTUBSHELL\BMARM\STUBRUNU.DEF not found - project not frozen + # WARNING: Not attempting to create any import libraries. + # WARNING: rls_string STRING_r_ssl_error_ssl_AlertNoRenegotiation; either has incorrect syntax or no value + + if ($line =~ /^WARNING: /m) + { + return 1; + } + + # \BIOMSG\BITSINC\BioTestUtils.inl(4) : warning C4100: 'iOperation' : unreferenced formal parameter + + if ($line =~ /\(\d+\) : warning C/) + { + return 1; + } + + # LINK : warning LNK4005: no objects used from library \EPOC32\RELEASE\WINS\UDEB\ESTOR.LIB + + if ($line =~ /LINK : warning/) + { + return 1; + } + + # ..\\..\\BAFL\\SRC\\Bacline.cpp:68: warning: value computed is not used + + if ($line =~ /:\d+: warning:/) + { + return 1; + } + + # "..\UCRT\Ecrt0.cpp", line 12: Warning: #335-D: linkage specification is not allowed + # "s16c.o(.directive)", line 70: Warning: L6331W: s16c.o(.directive)(line 70, col 14) No eligible global symbol matches pattern _fsqrt. + + if ($line =~ /"(.*)", line (\d+): (Warning: +(.\d+.*?):.*)$/) + { + return 1; + } + + # /../../kvm/VmEPOC/src/emuNetDebuggerTransport.c + # ### mwccsym2 Usage Warning: + # # Specified directory 'Z:/epoc32/include/libcnot' not found + # ... t_winscw_udeb_cw_obj_g/serialDebuggerTransport.o + # Linking lib ... winscw_udeb_cw_bin/tkmidp20_kvm.lib + + if ($line =~ /Usage Warning:/) + { + return 1; + } + # mwld.exe: No symbols were exported + + if ($line =~ /mwld.exe:/) + { + return 1; + } + + # === target == tools\e32tools + # make -r -k -f "\EPOC32\BUILD\TOOLS\E32TOOLS\GROUP\TOOLS.make" SAVESPACE CFG=REL VERBOSE=-s KEEPGOING=-k + # nmake -nologo -x - -s -k -f "\EPOC32\BUILD\TOOLS\E32TOOLS\GROUP\ERUNTEST\TOOLS\ERUNTEST.TOOLS" REL CLEANBUILDREL + # Command line warning D4002 : ignoring unknown option '/Op' + + if ($line =~ /^Command line warning/m) + { + return 1; + } + + # MAKEDEF WARNING: 1 export(s) not yet Frozen: + + if ($line =~ /^MAKEDEF WARNING:/m) + { + return 1; + } + + # Comment from PETRAN which is actually a warning rather than an error + # ERROR: bad relocation: [00004f60] = 00000f68 + + if ($line =~ /ERROR: bad relocation:/) + { + return 1; + } + + # 1 warning + + if ($line =~ /^(\d+) warning/m) + { + return 1; + } + + # Windows Event log warning from Sophos Antivirus Scan + if ($line =~ /^EventType:\s+Error\s+Source:\s+SweepNT/) + { + return 1; + } + + # WARN (for CDB warnings) + + if ($line =~ /^WARN\t/) + { + return 1; + } + + #elf2e32 : Warning: W1041: Unsupported Target Type 'PLUGIN3'. + #Elf2e32: Warning: New Symbol _Z24ImplementationGroupProxyRi found, export(s) not yet Frozen + if ($line =~ /^\s*elf2e32\s*:\s*Warning\s*:\s*/i) + { + return 1; + } + + #Can't locate FileRead.pm in @INC (@INC contains:....... + if ($line =~ /^Can't locate (.*) in \@INC/ ) + { + return 1; + } + + # Not already returned so return false + return 0; +} + +# CheckForIgnore +# +# Inputs +# $iLine - Line of text to check +# +# Outputs +# Return true if line can be ignored +# Return false if line cannot be ignored +# +# Description +# This function matches the input against a known set of Warning Strings which can be ignored +sub CheckForIgnore +{ + my ($line) = @_; + + # "..\\..\\..\\E32\\nkern\\arm\\Ncsched.cia", line 617: Warning: A1495E: Target of branch is a data address + if ($line =~ /"(.*)", line (\d+): Warning: A1495E: Target of branch is a data address/) + { + return 1; + } + + # BLDMAKE WARNING: ARMV7 requires at least RVCT 3.1.674. + # It's not useful to heed this warning, as we're already on control of which platforms we're going to build + if ($line =~ /^BLDMAKE WARNING: ARMV\d requires at least RVCT /) + { + return 1; + } + + # Not already returned so return false + return 0; +} + + + + +# CheckForNotBuilt +# +# Inputs +# $iLine - Line of text to check +# +# Outputs +# Return true for presence of Warning in the line +# Return false for no Warning found +# $iNotBuilt - Name of thing not built +# +# Description +# This function matches the input against a known set of Strings for things not built +sub CheckForNotBuilt +{ + my ($line) = @_; + + # MISSING COMPONENT alp2csh: can't find tools\sdk_eng\alp2csh\group\bld.inf + + if ($line =~ /^MISSING COMPONENT (.*):.* find (.*)$/m) + { + return (1,$2); + } + + # MISSING: \EPOC32\RELEASE\WINS\UDEB\OPLR.DLL + + if ($line =~ /^MISSING: (\S+)/m) + { + return (1,$1); + } + + # Not already returned so return false + return 0; +} + +# CheckForMissing +# +# Inputs +# $iLine - Line of text to check +# +# Outputs +# Return true for presence of Warning in the line +# Return false for no Warning found +# $iNotBuilt - Name of thing not built +# +# Description +# This function matches the input against a known set of Strings for things not built +sub CheckForMissing +{ + my ($line) = @_; + + if ($line =~ /fatal error U1073: .* make '(.*)'/) + { + return (1,$1); + } + + # Not already returned so return false + return 0; +} + +# CheckForRealTimeErrors +# +# Inputs +# $iLine - Line of text to check +# +# Outputs +# Return true for presence of a Real Time Error in the line +# plus string detailing error (if available) +# Return false for no Real Time Error found +# +# Description +# This function matches the input against a known set of Error Strings +# At the time of adding this subroutine, such error strings were only reported by P4GetSource.pm +# Scripts calling this subroutine should note that, for example, lines beginning with "ERROR:" will +# also be considered to be errors by subroutine CheckForErrors, above. +sub CheckForRealTimeErrors +{ + my ($line) = @_; + + if ($line =~ /^Error:\s*RealTimeBuild:\s*(.*)/mi) + { + return (1,$1); # Return True plus any other text on line + } + + # Not already returned so return False + return 0; +} + + + +# CheckForMigrationNotes +# +# Inputs +# $iLine - Line of text to check +# +# Outputs +# Return true for presence of Migration_Note in the line +# Return false for no Migration_Note found +# +# Description +# This function matches the input against a known set of Migration_Note Strings + +my %migration_list=( +# Warnings to be fixed over longer period as they may indicate errors in code + + "#61-D" => "integer operation result is out of range", + "#68-D" => "integer conversion resulted in a change of sign", + "#108-D" => "signed bit field of length 1", + "#128-D" => "loop is not reachable from preceding code", + "#191-D" => "type qualifier is meaningless on cast type", + "A1495E" => "Target of branch is a data address", + "A1608W" => "MOV pc, instruction used, but BX is preferred", + "A1745W" => "This register combination is DEPRECATED", + "A1764W" => "SWP instructions are deprecated in architecture ARMv6 and above", + "A1786W" => "This instruction using SP is deprecated in ARMv7", + "A1788W" => "Explicit use of PC in this instruction is deprecated", + "#1446-D" => "non-POD class type passed through ellipsis", + "#1559-D" => "dllexport/dllimport conflict with \"foo\"; dllexport assumed", + "#1566-D" => "dllexport/dllimport conflict with \"foo\"; dllimport/dllexport dropped" + ); + + +sub CheckForMigrationNotes +{ + my ($line) = @_; + +if ($line =~ /".*", line \d+: Warning: +(.\d+.*?):/) + { + # Some compiler warnings may indicate errors that should be fixed when a + # migration to a new compiler has occured. These may have been long standing + # issues in the OS and whilst not currently considered to be violations of the + #"zero warnings" policy should be fixed in any new development work. + # It is the responsibility of the Master Codeline Forum to manage this list. + return defined($migration_list{$1}); + } + + +if ($line =~ m/^MIGRATION_NOTE:\s*(.*)/i) + { + return (1,$1); + } + +if ($line =~ m/^WARNING: Working Directory: "(.*)\\sf\\app\\techview\\buildverification\\smoketest\\(.*)" Executing: "abld.bat (.*)":/i) + { + return 1; + } + +return 0; +} + + +# CheckForAdvisoryNotes +# +# Inputs +# $iLine - Line of text to check +# +# Outputs +# Return true if the input matches against a known set of Advisory_Note strings defined in the advisory_list +# Return false for no Advisory_Note found +# +# Description +# This function matches the input against a known set of Advisory_Note Strings defined +# in the array CheckList +my %Advisory_checklist=( +# Warnings categorized as advisory notes +'M:/clean-src/os/unref/orphan/comtv\\toolkit ' => 0, +'M:/clean-src/os/unref/orphan/comtv\\commsui ' => 0, +'M:/clean-src/os/unref/orphan/comtv\\apps ' => 0, +'M:/clean-src/os/unref/orphan/comtt/edg\\group ' => 0, +'M:/clean-src/os/unref/orphan/comtt\\edg ' => 0, +'M:/clean-src/os/unref/orphan/comgen/openenv/oetools/docs\\test ' => 0, +'M:/clean-src/os/unref/orphan/comgen\\networking ' => 0, +'M:/clean-src/os/unref/orphan/cedprd/tools\\baseline ' => 0, +'M:/clean-src/os/unref/orphan/cedprd\\tools ' => 0, +'M:/clean-src/os/unref/orphan/cedprd/SuppKit/XSRproduct\\pkgdef ' => 0, +'M:/clean-src/os/unref/orphan/cedprd/SuppKit/XSRproduct\\Messages ' => 0, +'M:/clean-src/os/unref/orphan/cedprd/SuppKit/XSRproduct\\group ' => 0, +'M:/clean-src/os/unref/orphan/cedprd/SuppKit/XSRproduct/com/symbian/sdk/productinstaller\\graphics ' => 0, +'M:/clean-src/os/unref/orphan/cedprd/SuppKit/Wi-Fiproduct\\pkgdef ' => 0, +'M:/clean-src/os/unref/orphan/cedprd/SuppKit/Wi-Fiproduct\\Messages ' => 0, +'M:/clean-src/os/unref/orphan/cedprd/SuppKit/Wi-Fiproduct\\group ' => 0, +'M:/clean-src/os/unref/orphan/cedprd/SuppKit/Wi-Fiproduct/com/symbian/sdk/productinstaller\\graphics ' => 0, +'M:/clean-src/os/unref/orphan/cedprd/SuppKit/sdcard4cproduct\\pkgdef ' => 0, +'M:/clean-src/os/unref/orphan/cedprd/SuppKit/sdcard4cproduct\\Messages ' => 0, +'M:/clean-src/os/unref/orphan/cedprd/SuppKit/sdcard4cproduct\\group ' => 0, +'M:/clean-src/os/unref/orphan/cedprd/SuppKit/sdcard4cproduct/com/symbian/sdk/productinstaller\\graphics ' => 0, +'M:/clean-src/os/unref/orphan/cedprd/SuppKit/sdcard3cproduct\\pkgdef ' => 0, +'M:/clean-src/os/unref/orphan/cedprd/SuppKit/sdcard3cproduct\\Messages ' => 0, +'M:/clean-src/os/unref/orphan/cedprd/SuppKit/sdcard3cproduct\\group ' => 0, +'M:/clean-src/os/unref/orphan/cedprd/SuppKit/sdcard3cproduct/com/symbian/sdk/productinstaller\\graphics ' => 0, +'M:/clean-src/os/unref/orphan/cedprd/SuppKit/midp2.0product\\pkgdef ' => 0, +'M:/clean-src/os/unref/orphan/cedprd/SuppKit/midp2.0product\\Messages ' => 0, +'M:/clean-src/os/unref/orphan/cedprd/SuppKit/midp2.0product\\group ' => 0, +'M:/clean-src/os/unref/orphan/cedprd/SuppKit/midp2.0product/com/symbian/sdk/productinstaller\\graphics ' => 0, +'M:/clean-src/os/unref/orphan/cedprd/SuppKit/javaproduct\\pkgdef ' => 0, +'M:/clean-src/os/unref/orphan/cedprd/SuppKit/javaproduct\\Messages ' => 0, +'M:/clean-src/os/unref/orphan/cedprd/SuppKit/javaproduct\\group ' => 0, +'M:/clean-src/os/unref/orphan/cedprd/SuppKit/javaproduct/com/symbian/sdk/productinstaller\\graphics ' => 0, +'M:/clean-src/os/unref/orphan/cedprd/SuppKit/cldchiproduct\\pkgdef ' => 0, +'M:/clean-src/os/unref/orphan/cedprd/SuppKit/cldchiproduct\\Messages ' => 0, +'M:/clean-src/os/unref/orphan/cedprd/SuppKit/cldchiproduct\\group ' => 0, +'M:/clean-src/os/unref/orphan/cedprd/SuppKit/cldchiproduct/com/symbian/sdk/productinstaller\\graphics ' => 0, +'M:/clean-src/os/unref/orphan/cedprd/SuppKit/cldchi1.1product\\pkgdef ' => 0, +'M:/clean-src/os/unref/orphan/cedprd/SuppKit/cldchi1.1product\\Messages ' => 0, +'M:/clean-src/os/unref/orphan/cedprd/SuppKit/cldchi1.1product\\group ' => 0, +'M:/clean-src/os/unref/orphan/cedprd/SuppKit/cldchi1.1product/com/symbian/sdk/productinstaller\\graphics ' => 0, +'M:/clean-src/os/unref/orphan/cedprd/DevKit\\SourceDefinitions ' => 0, +'M:/clean-src/os/unref/orphan/cedprd/DevKit\\PackageDefinitions ' => 0, +'M:/clean-src/os/unref/orphan/cedprd\\DevKit ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/UnitTests/PCT09_Test\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/UnitTests/PCT09_Test\\results ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/UnitTests/PCT09_Test\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/UnitTests/PCT08_Prototype\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/UnitTests/PCT08_Prototype\\results ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/UnitTests/PCT08_Prototype\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/UnitTests/PCT07_Deprecated\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/UnitTests/PCT07_Deprecated\\results ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/UnitTests/PCT07_Deprecated\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/UnitTests/PCT06_Released\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/UnitTests/PCT06_Released\\results ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/UnitTests/PCT06_Released\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/UnitTests/PCT05_PubAll\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/UnitTests/PCT05_PubAll\\results ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/UnitTests/PCT05_PubAll\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/UnitTests/PCT04_PubPartner\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/UnitTests/PCT04_PubPartner\\results ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/UnitTests/PCT04_PubPartner\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/UnitTests/PCT03_IntComp\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/UnitTests/PCT03_IntComp\\results ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/UnitTests/PCT03_IntComp\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/UnitTests/PCT02_IntTech\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/UnitTests/PCT02_IntTech\\results ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/UnitTests/PCT02_IntTech\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/UnitTests/PCT01_NoAPIs\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/UnitTests/PCT01_NoAPIs\\results ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/UnitTests/PCT01_NoAPIs\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/IntegrationTests/PCT10_Integration\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/IntegrationTests/PCT10_Integration\\results ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/IntegrationTests/PCT10_Integration\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T25_All_Test\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T25_All_Test\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T24_All_Prototype\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T24_All_Prototype\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T23_All_Deprecated\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T23_All_Deprecated\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T22_All_Released\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T22_All_Released\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T21_PubAll_Test\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T21_PubAll_Test\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T20_PubAll_Proto\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T20_PubAll_Proto\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T19_PubAll_Dep\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T19_PubAll_Dep\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T18_PubAll_Rel\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T18_PubAll_Rel\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T17_PubAll_All\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T17_PubAll_All\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T16_PubPartner_Test\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T16_PubPartner_Test\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T15_PubPartner_Proto\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T15_PubPartner_Proto\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T14_PubPartner_Dep\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T14_PubPartner_Dep\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T13_PubPartner_Rel\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T13_PubPartner_Rel\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T12_PubPartner_All\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T12_PubPartner_All\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T11_IntComp_Test\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T11_IntComp_Test\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T10_IntComp_Proto\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T10_IntComp_Proto\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T09_IntComp_Dep\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T09_IntComp_Dep\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T08_IntComp_Rel\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T08_IntComp_Rel\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T07_IntComp_All\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T07_IntComp_All\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T06_IntTech_Test\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T06_IntTech_Test\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T05_IntTech_Proto\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T05_IntTech_Proto\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T04_IntTech_Dep\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T04_IntTech_Dep\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T03_IntTech_Rel\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T03_IntTech_Rel\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T02_IntTech_All\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T02_IntTech_All\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T01_Unclassified\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/TestData/Components/T01_Unclassified\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker\\TestData ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker/src\\ProgramCheckerBase ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker\\docs ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/programchecker\\bin ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT_TestLib\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT_TestLib\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT08.TC4.3\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT08.TC4.3\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT08.TC4.3\\data ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT08.TC4.2\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT08.TC4.2\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT08.TC4.2\\data ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT08.TC4.1\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT08.TC4.1\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT08.TC4.1\\data ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT08.TC3\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT08.TC3\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT08.TC3\\data ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT08.TC2.2\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT08.TC2.2\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT08.TC2.2\\data ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT08.TC2.1\\data ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT06.TC2\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT06.TC2\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT05.TC4\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT05.TC4\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT05.TC4\\data ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT05.TC3\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT05.TC3\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT05.TC3\\data ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT05.TC2\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT05.TC2\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT05.TC2\\data ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT05.TC1\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT05.TC1\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT05.TC1\\data ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT04.TC5.2\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT04.TC5.2\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT04.TC5.1\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT04.TC5.1\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT04.TC5\\data ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT04.TC4.2\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT04.TC4.2\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT04.TC4.2\\data ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT04.TC4.1\\data ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT04.TC3.2\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT04.TC3.2\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT04.TC3.2\\data ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT04.TC3.1\\data ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT04.TC2\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT04.TC2\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT04.TC2\\data ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT04.TC1\\data ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT03.TC3\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT03.TC3\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT03.TC3\\data ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT03.TC2\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT03.TC2\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT03.TC2\\data ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT03.TC1\\data ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT02.TC3\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT02.TC3\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT02.TC3\\data ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT02.TC2\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT02.TC2\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT02.TC2\\data ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT02.TC1.3\\data ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT02.TC1.2\\data ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT01.TC5.3\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT01.TC5.3\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT01.TC5.3\\data ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT01.TC5.2\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT01.TC5.2\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT01.TC5.2\\data ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT01.TC5.1\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT01.TC5.1\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT01.TC5.1\\data ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT01.TC3.2\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT01.TC3.2\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT01.TC3.2\\data ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT01.TC3.1\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT01.TC3.1\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT01.TC3.1\\data ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT01.TC2.3\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT01.TC2.3\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/tests/TestData/RMT01.TC2.3\\data ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool\\tests ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/src\\XML ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool/src\\GCCBinUtils ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool\\src ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool\\sample ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool\\group ' => 0, +'M:/clean-src/os/buildtools/srcanamdw_os/migrationtool\\docs ' => 0, +'M:/clean-src/os/buildtools/binanamdw_os\\depcheck ' => 0, +'M:/clean-src/os/buildtools/binanamdw_os/captools/tests/T_ImportsAnalyser\\TestData ' => 0, +'M:/clean-src/os/buildtools/binanamdw_os/captools/tests\\T_ImportsAnalyser ' => 0, +'M:/clean-src/os/buildtools/binanamdw_os/captools/tests/T_CapSearch\\TestData ' => 0, +'M:/clean-src/os/buildtools/binanamdw_os/captools/tests\\T_CapSearch ' => 0, +'M:/clean-src/os/buildtools/binanamdw_os/captools/tests/T_CapImportCheck\\TestData ' => 0, +'M:/clean-src/os/buildtools/binanamdw_os/captools/tests\\T_CapImportCheck ' => 0, +'M:/clean-src/os/buildtools/binanamdw_os/captools/tests/T_CapCheck\\TestData ' => 0, +'M:/clean-src/os/buildtools/binanamdw_os/captools/tests\\T_CapCheck ' => 0, +'M:/clean-src/os/buildtools/binanamdw_os/captools\\src ' => 0, +'M:/clean-src/os/buildtools/binanamdw_os/captools/sample\\ImportsAnalyser ' => 0, +'M:/clean-src/os/buildtools/binanamdw_os/captools/sample\\CapSearch ' => 0, +'M:/clean-src/os/buildtools/binanamdw_os/captools/sample\\CapImportCheck ' => 0, +'M:/clean-src/os/buildtools/binanamdw_os/captools/sample/CapCheck\\Sample_XML_ECL ' => 0, +'M:/clean-src/os/buildtools/binanamdw_os/captools/sample\\CapCheck ' => 0, +'M:/clean-src/os/buildtools/binanamdw_os/captools\\group ' => 0, +'M:/clean-src/os/buildtools/binanamdw_os/captools/docs\\Design ' => 0, +'M:/clean-src/os/buildtools/binanamdw_os/captools\\data ' => 0, + +); + +sub CheckForAdvisoryNotes +{ + my ($line) = @_; + + # "s16c.o(.directive)", line 70: Warning: L6331W: s16c.o(.directive)(line 70, col 14) No eligible global symbol matches pattern _fsqrt. + if ($line =~ /".*", line \d+: Warning: +(.\d+.*?):/) + { + # Some compiler warnings about about style rather than substance. The RVCT + # compiler warnings are easily identified, and the Advisory_checklist above + # classifies the warnings present in the Symbian OS source code which are + # not currently considered to be violations of the "zero warnings" policy. + # It is the responsibility of the Master Codeline Forum to manage this list, + # as part of the "zero warnings" policy. + return defined($Advisory_checklist{$1}); + } + + # ignore undesired codes in //EPOC/ + if ($line =~ /ADVISORY NOTE: Missing distribution.policy.s60 file in (.*)/) + { + if (exists $Advisory_checklist{$1}){ + return $Advisory_checklist{$1}; + } + else{ + return 1; + } + } + + # Downgrade Kits errors and warnings + if (($line =~ /^WARNING: .+ matched against rule/i) || + ($line =~ /^WARNING: .+ matched tests/i)) + { + # Kits generation is not critical in MCL products and it + # should not be BRAG affecting. + return 1; + } + + if ($line =~ /returning cat X/) + { + # Look for the phrase returning cat X. This is generated due to distribution policy file being remvoed + + return 1; + } + + if ($line =~ /ERROR.*Unable to perform a comparison using empty databases/i) + { + # Look for the phrase BC Comparision. Generates when base comparision is failed due to the unavailability of the base build. + + return 1; + } + + if ($line =~ /ERROR: Fatal exception \"execSpecialInstructions() failed with \d{1,} lines on stderr\"/i) + { + # Look for the Run variability warnings. Generates while processing the variabilities. + + return 1; + } + + if ($line =~ /WARN.*API Classifier load failed/i) + { + # Look for the classifier load warnings. Generates when unable to load the API's. + + return 1; + } + + if ($line =~ /WARNING: Envinfo overall status was not found/i) + { + # Look for the classifier load warnings. Generates when unable to load the API's. + + return 1; + } + + if ($line =~ /warning:\s*no newline at end of file/i && $line !~ /\.((rls)|(rsc)|(rss)|(rh)|(ra)|(hrh)|(rsg)|(loc)):\d{1,}:\d{1,}:\s*/i) + { + # no newline at end of file warnings are to be captured as it can create some issues with different compilers + # currently this will not work as remarks section is capturing this, which should not. + # Resource files should not be considered. + + return 1; + } + + if ($line =~ /^ADVISORY NOTE:/) + { + # For use by any advisory notes. + + return 1; + } + + if ($line =~ /^ERROR: Fatal exception \"ProcessVariability: Unable to copy .* \[Errno 13\] Permission denied: .*/) + { + # For buildrefdoc permission denied intermittent error + + return 1; + } + +# This is used convert what would be picked up as warning in to a advisory note, as advisory notes are check for first + # It also returns an additional value of the number of lines to slurp up to get the so the multi line + # warning (advisorynote) is only seen once. + + + +# This is used convert what would be picked up as error in to a advisory note, as advisory notes are check for first + # It also returns an additional value of the number of lines to slurp up to get the so the multi line + # errors (advisorynote) is only seen once. + +} +1;