error C2220: warning treated as error

Hi,
I am moving an application from VS2003 to VS 2005 and I got the following error:

error C2220: warning treated as error - no 'object' file generated C:\Program Files\Microsoft Visual Studio 8\VC\atlmfc\include\atlfile.h

Any ideas on how to correct this

Thanks in advance,



Answer this question

error C2220: warning treated as error

  • M.rkino

    I just had this issue with <atlsecurity.h>

    After a lot of swearing and tearing projects to pieces, we discovered if you just include <atlbase.h> on the line before, the problem goes away.


  • zcat123

    You'll need to rewrite your code. I'm not familiar with atlperf.h, its beyond the scope of this forum anyway.

    You can read the documentation. Unfortunately, the docs are also out of date because it's still documenting DECLARE_PERF_OBJECT. If you care to, you can open a bug against this so that Microsoft fixes this.

    Sorry I couldn't be more help.

    Brian


  • roundcrisis

    The ATLASSERT macro is somehow causing the "conditional expression is constant," but I can't see how. 

    The depecation warning is expected.  You'll have to work around that one.

    Could you tell us what is inside stdafx.cpp   Also, under your C/C++ Command Line Setting, temporarily add the compiler switch /Bd, and paste the output.  It will look like:

    E:\Program Files\Microsoft Visual Studio 8\VC\bin\c1xx.dll -zm0x79170000 -il E:\DOCUME~1\bkramer\LOCALS~1\Temp\_CL_9d530b7b -f .\stdafx.cpp -Ze -D_MSC_EXTENSIONS -Zp8 -ZB64 -D_INTEGRAL_MAX_BITS=64 -Gs -pc \:/ -D_MSC_VER=1400 -D_MSC_FULL_VER=140050215 -D_WIN32 -D_M_IX86=600 -D_M_IX86_FP=0 -GR -D_CPPRTTI -Zc:forScope -Zc:wchar_t -Ot -DWIN32 -D_DEBUG -D_WINDOWS -D_UNICODE -DUNICODE -D_ATL_STATIC_REGISTRY -Gm -EHs -D_CPPUNWIND -EHc -D__MSVC_RUNTIME_CHECKS -RTCs -RTCu -D_DEBUG -D_MT -D_DLL -Ycstdafx.h -FpDebug\atlissue.pch -FoDebug\stdafx.obj -FdDebug\vc80.pdb -W 4 -D_Wp64 -Wp64 -ZI -FC -GF -Zi -FD -Bd -nologo -errorreport:prompt -I E:\Program Files\Microsoft Visual Studio 8\VC\include -I E:\Program Files\Microsoft Visual Studio 8\VC\atlmfc\include -I E:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include -I E:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\common\include -I E:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\include -I E:\sdclient\Research\include -sqm E:\Documents and Settings\bkramer\Application Data\Microsoft\VSCommon\8.0\SQM\sqmcpp80.log'


  • Henry Wu

    Here is the output from /Bd

    ENC_CWD=c:\P5\PerfDll

    ENC_CL=C:\Program Files\Microsoft Visual Studio 8\VC\bin\cl.exe

    ENC_SRC=.\stdafx.cpp

    ENC_PDB=c:\P5\PerfDll\Debug\vc80.pdb

    ENC_CMD=-Od -DWIN32 -D_WINDOWS -D_DEBUG -D_USRDLL -D_ATL_ATTRIBUTES -D_VC80_UPGRADE=0x0710 -D_WINDLL -D_MBCS -Gm -EHs -EHc -RTC1 -MDd -Ycstdafx.h -Fpc:\P5\PerfDll\Debug\PerfDll.pch -Foc:\P5\PerfDll\Debug\ -Fdc:\P5\PerfDll\Debug\vc80.pdb -W4 -c -Wp64 -ZI -TP -Bd -nologo -errorreport:prompt -I"C:\Program Files\Microsoft Visual Studio 8\VC\include" -I"C:\Program Files\Microsoft Visual Studio 8\VC\atlmfc\include" -I"C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include" -I"C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\include" -X

    `C:\Program Files\Microsoft Visual Studio 8\VC\bin\c2.dll -il C:\DOCUME~1\SAbdo\LOCALS~1\Temp\_CL_18aadffe -f .\stdafx.cpp -Gs4096 -dos -GS -Ob0 -EHs -MDd -Yc -FoDebug\stdafx.obj -FdDebug\vc80.idb -W 4 -ZI -Gy -Zi -Bd -errorreport:prompt'

    Compiling...

    PerfDll.cpp

    `C:\Program Files\Microsoft Visual Studio 8\VC\bin\c1xx.dll -zm0x79600000 -il C:\DOCUME~1\SAbdo\LOCALS~1\Temp\_CL_7fecd26f -f .\PerfDll.cpp -Ze -D_MSC_EXTENSIONS -Zp8 -ZB64 -D_INTEGRAL_MAX_BITS=64 -Gs -pc \:/ -D_MSC_VER=1400 -D_MSC_FULL_VER=140050727 -D_WIN32 -D_M_IX86=600 -D_M_IX86_FP=0 -GS -GR -D_CPPRTTI -Zc:forScope -Zc:wchar_t -Ot -DWIN32 -D_WINDOWS -D_DEBUG -D_USRDLL -D_ATL_ATTRIBUTES -D_VC80_UPGRADE=0x0710 -D_WINDLL -D_MBCS -Gm -EHs -D_CPPUNWIND -EHc -D__MSVC_RUNTIME_CHECKS -RTCs -RTCu -D_DEBUG -D_MT -D_DLL -Yustdafx.h -FpDebug\PerfDll.pch -FoDebug\PerfDll.obj -FdDebug\vc80.pdb -W 4 -D_Wp64 -Wp64 -ZI -FC -GF -Zi -FD -Bd -nologo -errorreport:prompt -I C:\Program Files\Microsoft Visual Studio 8\VC\include -I C:\Program Files\Microsoft Visual Studio 8\VC\atlmfc\include -I C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include -I C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\include -sqm C:\Documents and Settings\SAbdo\Application Data\Microsoft\VSCommon\8.0\SQM\sqmcpp80.log'

    c:\p5\perfdll\performancemanager.h(19) : warning C4995: 'DECLARE_PERF_OBJECT': name was marked as #pragma deprecated

    c:\p5\perfdll\performancemanager.h(40) : warning C4995: 'CHAIN_PERF_OBJECT': name was marked as #pragma deprecated

    ENC_CWD=c:\P5\PerfDll

    ENC_CL=C:\Program Files\Microsoft Visual Studio 8\VC\bin\cl.exe

    ENC_SRC=.\PerfDll.cpp

    ENC_PDB=c:\P5\PerfDll\Debug\vc80.pdb

    ENC_CMD=-Od -DWIN32 -D_WINDOWS -D_DEBUG -D_USRDLL -D_ATL_ATTRIBUTES -D_VC80_UPGRADE=0x0710 -D_WINDLL -D_MBCS -Gm -EHs -EHc -RTC1 -MDd -Yustdafx.h -Fpc:\P5\PerfDll\Debug\PerfDll.pch -Foc:\P5\PerfDll\Debug\ -Fdc:\P5\PerfDll\Debug\vc80.pdb -W4 -c -Wp64 -ZI -TP -Bd -nologo -errorreport:prompt -I"C:\Program Files\Microsoft Visual Studio 8\VC\include" -I"C:\Program Files\Microsoft Visual Studio 8\VC\atlmfc\include" -I"C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include" -I"C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\include" -X

    `C:\Program Files\Microsoft Visual Studio 8\VC\bin\c2.dll -il C:\DOCUME~1\SAbdo\LOCALS~1\Temp\_CL_7fecd26f -f .\PerfDll.cpp -Gs4096 -dos -GS -Ob0 -EHs -MDd -FoDebug\PerfDll.obj -FdDebug\vc80.idb -W 4 -ZI -Gy -Zi -Bd -errorreport:prompt'

    Compiling...

    PerfDll_i.c

    `C:\Program Files\Microsoft Visual Studio 8\VC\bin\c1.dll -zm0x79600000 -il C:\DOCUME~1\SAbdo\LOCALS~1\Temp\_CL_68060a67 -f .\PerfDll_i.c -Ze -D_MSC_EXTENSIONS -Zp8 -ZB64 -D_INTEGRAL_MAX_BITS=64 -Gs -pc \:/ -D_MSC_VER=1400 -D_MSC_FULL_VER=140050727 -D_WIN32 -D_M_IX86=600 -D_M_IX86_FP=0 -GS -Ot -DWIN32 -D_WINDOWS -D_DEBUG -D_USRDLL -D_ATL_ATTRIBUTES -D_VC80_UPGRADE=0x0710 -D_WINDLL -D_MBCS -D__MSVC_RUNTIME_CHECKS -RTCs -RTCu -D_DEBUG -D_MT -D_DLL -FoDebug\PerfDll_i.obj -FdDebug\vc80.pdb -W 4 -D_Wp64 -Wp64 -ZI -FC -GF -Zi -FD -Bd -nologo -errorreport:prompt -I C:\Program Files\Microsoft Visual Studio 8\VC\include -I C:\Program Files\Microsoft Visual Studio 8\VC\atlmfc\include -I C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include -I C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\include -sqm C:\Documents and Settings\SAbdo\Application Data\Microsoft\VSCommon\8.0\SQM\sqmcpp80.log'

    ENC_CWD=c:\P5\PerfDll

    ENC_CL=C:\Program Files\Microsoft Visual Studio 8\VC\bin\cl.exe

    ENC_SRC=.\PerfDll_i.c

    ENC_PDB=c:\P5\PerfDll\Debug\vc80.pdb

    ENC_CMD=-Od -DWIN32 -D_WINDOWS -D_DEBUG -D_USRDLL -D_ATL_ATTRIBUTES -D_VC80_UPGRADE=0x0710 -D_WINDLL -D_MBCS -Gm -EHs -EHc -RTC1 -MDd -Foc:\P5\PerfDll\Debug\ -Fdc:\P5\PerfDll\Debug\vc80.pdb -W4 -c -Wp64 -ZI -TC -Bd -nologo -errorreport:prompt -I"C:\Program Files\Microsoft Visual Studio 8\VC\include" -I"C:\Program Files\Microsoft Visual Studio 8\VC\atlmfc\include" -I"C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include" -I"C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\include" -X

    `C:\Program Files\Microsoft Visual Studio 8\VC\bin\c2.dll -il C:\DOCUME~1\SAbdo\LOCALS~1\Temp\_CL_68060a67 -f .\PerfDll_i.c -Gs4096 -dos -GS -Ob0 -EHs -MDd -FoDebug\PerfDll_i.obj -FdDebug\vc80.idb -W 4 -ZI -Gy -Zi -Bd -errorreport:prompt'

    Thanks,



  • webchetan

    I am still recieving the C4127 warning.  I just didn't include them in the message. 

    Thanks for the tip ont he C4995.


  • Skyblue1

    That's odd.  Usually when you get that error from the compiler, there is a second error immediately after that describes which warning was treated as an error... 


  • CrystalD

    Hi all ...
    i had this same error, and a good thing that solved the problem; is fixing all the warnings in that CPP file, so that an object file can be built!
    so i think you should fix all the warnings that are triggered in that CPP, and this error will disappear!

    Thanks!
    Anas.



  • andy18

    Sorry Guys, I miss understood.
    Here is the complete build output

    ------ Rebuild All started: Project: PerfDll, Configuration: Debug Win32 ------

    Deleting intermediate and output files for project 'PerfDll', configuration 'Debug|Win32'

    Creating Type Library...

    Processing .\PerfDll.idl

    PerfDll.idl

    Processing C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include\oaidl.idl

    oaidl.idl

    Processing C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include\objidl.idl

    objidl.idl

    Processing C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include\unknwn.idl

    unknwn.idl

    Processing C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include\wtypes.idl

    wtypes.idl

    Processing C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include\basetsd.h

    basetsd.h

    Processing C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include\guiddef.h

    guiddef.h

    Processing C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include\ocidl.idl

    ocidl.idl

    Processing C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include\oleidl.idl

    oleidl.idl

    Processing C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include\servprov.idl

    servprov.idl

    Processing C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include\urlmon.idl

    urlmon.idl

    Processing C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include\msxml.idl

    msxml.idl

    Processing C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include\oaidl.acf

    oaidl.acf

    Processing C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include\ocidl.acf

    ocidl.acf

    Compiling...

    stdafx.cpp

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlfile.h(47) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlfile.h(69) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlfile.h(86) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlfile.h(102) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlfile.h(117) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlfile.h(131) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlfile.h(150) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlfile.h(165) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlfile.h(190) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlfile.h(210) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlfile.h(230) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlfile.h(240) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlfile.h(256) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlfile.h(272) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlfile.h(286) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlfile.h(330) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlfile.h(379) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlfile.h(518) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlfile.h(519) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlfile.h(561) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlfile.h(562) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlfile.h(600) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlfile.h(601) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlfile.h(666) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlfile.h(667) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlsync.inl(119) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlsync.inl(128) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlsync.inl(136) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlsync.inl(143) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlsync.inl(150) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlsync.inl(194) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlsync.inl(202) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlsync.inl(210) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlsync.inl(255) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlsync.inl(263) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlsync.inl(271) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlsync.inl(310) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlsecurity.h(704) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlsecurity.h(710) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlsecurity.h(716) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlsecurity.h(722) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlsecurity.h(728) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlsecurity.h(734) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlsecurity.inl(387) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlsecurity.inl(388) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlsecurity.inl(389) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlsecurity.inl(390) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlsecurity.inl(455) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlsecurity.inl(2747) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlsecurity.inl(2749) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlsecurity.inl(2751) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlsecurity.inl(2753) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlsecurity.inl(2755) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlsecurity.inl(3379) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlsecurity.inl(3968) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlsecurity.inl(3979) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlsecurity.inl(3999) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlsecurity.inl(4018) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlsecurity.inl(4182) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlsecurity.inl(4215) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlenc.h(47) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlenc.h(290) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlenc.h(505) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlenc.h(510) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlenc.h(515) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlenc.h(539) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlenc.h(646) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlenc.h(671) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlenc.h(692) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlenc.h(1140) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlenc.h(1183) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlenc.h(1346) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlperf.h(416) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlperf.inl(96) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlperf.inl(107) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlperf.inl(554) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlperf.inl(599) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlperf.inl(614) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlperf.inl(856) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlperf.inl(1825) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlperf.inl(2738) : warning C4127: conditional expression is constant

    c:\program files\microsoft visual studio 8\vc\atlmfc\include\atlperf.inl(2740) : warning C4127: conditional expression is constant

    Compiling...

    PerfDll.cpp

    c:\p5\perfdll\performancemanager.h(19) : warning C4995: 'DECLARE_PERF_OBJECT': name was marked as #pragma deprecated

    c:\p5\perfdll\performancemanager.h(40) : warning C4995: 'CHAIN_PERF_OBJECT': name was marked as #pragma deprecated

    Compiling...

    PerfDll_i.c

    Compiling resources...

    Compiling manifest to resources...

    Linking...

    Creating library Debug/PerfDll.lib and object Debug/PerfDll.exp

    Embedding manifest...

    Performing registration

    1 file(s) copied.

    Build log was saved at "file://c:\P5\PerfDll\Debug\BuildLog.htm"

    PerfDll - 0 error(s), 84 warning(s)

    ========== Rebuild All: 1 succeeded, 0 failed, 0 skipped ==========

    The only Warnings that are in my code are in the following file



    #include <atlperf.h>

    #pragma once

    class PFPerfObj :

    public CPerfObject

    {

    public:

    DECLARE_PERF_OBJECT(PFPerfObj, 1, _T("PriceFactory"), _T("Price Factory performance indicators"), -1);

    BEGIN_COUNTER_MAP(PFPerfObj)

    DEFINE_COUNTER(RequestsPerSec, _T("RequestsPerSec"), _T("Price requests per second"), PERF_COUNTER_RAWCOUNT, 0)

    DEFINE_COUNTER(ResultsPerSec, _T("ResultsPerSec"), _T("Price results per second"), PERF_COUNTER_RAWCOUNT, 0)

    DEFINE_COUNTER(TotalRequests, _T("TotalRequests"), _T("Total number of requests"), PERF_COUNTER_RAWCOUNT, 0)

    DEFINE_COUNTER(TotalResults, _T("TotalResults"), _T("Total number of results"), PERF_COUNTER_RAWCOUNT, 0)

    DEFINE_COUNTER(TotalErrors, _T("TotalErrors"), _T("Total number of errors"), PERF_COUNTER_RAWCOUNT, 0)

    END_COUNTER_MAP()

    ULONG RequestsPerSec;

    ULONG ResultsPerSec;

    ULONG TotalRequests;

    ULONG TotalResults;

    ULONG TotalErrors;

    };

    class PerformanceManager :

    public CPerfMon

    {

    public:

    #define Perf_PerformanceManager _T("Perf_PerformanceScribble")

    BEGIN_PERF_MAP(Perf_PerformanceManager)

    CHAIN_PERF_OBJECT(PFPerfObj)

    END_PERF_MAP()

    };

    PERFREG_ENTRY(PerformanceManager);



     



  • perezd

    Could you give the full error message

    Until then, if you just want to eliminate the error, turn off "Warnings as Errors" -WX.


  • person person person

    Unfortunately, this is the complete error.  This code is from Microsoft template to use performance counters.

    Thanks,

  • forumnewbie2006

    Yes: C2220 this is the warning-treated-as-error error message: what we need to know is what warning is causing this error to be fired.

  • Yi Chen

    Are you still getting the "warning C4127: conditional expression is constant" errors   If not, then there's no real issue here. The remaining warnings:

    c:\p5\perfdll\performancemanager.h(19) : warning C4995: 'DECLARE_PERF_OBJECT': name was marked as #pragma deprecated

    c:\p5\perfdll\performancemanager.h(40) : warning C4995: 'CHAIN_PERF_OBJECT': name was marked as #pragma deprecated

    are expected.  You can either discontinue using those two tokens, or use #pragma warning to disable C4995.


  • Dayanidhi

    Brian,

     I hope the real question he was asking is: "What do I replace it with "

    DECLARE_PERF_OBJECT and CHAIN_PERF_OBJECT are used to create a perfmon object. Searching for the appropriate way to replace this yields only this post. Do you have any idea's I hate use pragma warning disable to turn-off something that I just "know" is going to turn around and bite me in the arse at a later date.

    Thanks for any pointers here.

    Regards,



  • error C2220: warning treated as error