PDA

View Full Version : Error evaluating macro expression


niallgc
05-09-2005, 07:17 AM
Hi,

we've got a step in our build process which checks the value of a macro and either leaves it as it is or sets it to a new value.
The problem occurs in the latest version when the step doesn't seem to be able to interpret the macro properly.

The idea was to check if the macro already contains the
text 'FxCop' and if it does not then this step should be executed.

I've attached a picture of the step settings to achieve this but it ALWAYS built the step.

I've also tried adjusting the condition to check for the macro being defined - if it was then leave it, if not defined then proceed with this step. This also caused the macro to run EVERY time.

Has anybody else noticed a similar bug in the latest version?
(This step was working in earlier versions. Unfortunately I cannot confirm for sure that the latest release introduced the problem.)

Thanks in advance,

Niall

kinook
05-09-2005, 07:33 AM
First, see this thread and see if it applies: http://www.kinook.com/Forum/showthread.php?threadid=240

Second, the way the rule is defined, the value it will match on is "FxCop" (including the double quotes). Remove the double quotes if you're only search for the text FxCop. Something else that can affect the comparison is 'Tools | Application Options | General | Case sensitive comparisons in conditional build rules'.

A rule based on a macro's existence should also work; this step will only get built if the THFXCOPYFAILURES macro is defined (you can copy and paste the text below into VBP):

<step action='Group' type='0'>
<condcomparison type='3'>1</condcomparison>
<condexpr>%THFXCOPYFAILURES%</condexpr>
<ignorefail type='11'>-1</ignorefail>
<name>Project steps</name>
</step>


If the above doesn't help, please send a reproducible case demonstrating the problem. Thanks.

niallgc
05-09-2005, 07:52 AM
Originally posted by kinook
...Second, the way the rule is defined, the value it will match on is "FxCop" (including the double quotes). Remove the double quotes if you're only search for the text FxCop....

This has solved the problem....shamefully simply too.....

Thank you for a quick response,

Niall.