Visual Studio pro 2017 build dependency problem

I have a Visual Studio C++ solution that seems to have a dependency problem somehow. Here is some info:

  1. It always builds correctly in Debug mode
  2. It always builds correctly in Release mode IF I do a "Clean Solution" first
  3. It builds incorrectly in Release mode otherwise. If I update a value in a header file, the compiled result will still have the old value.

Here is more information. The parameter that I change is a single value in my file release.h. This file has one line where I #define VERSION. VERSION is used in a function that returns the current version of my software. When I build after changing this value in the header file, the system correctly recognizes that the source file must be recompiled. After it recompiles the source file, I get the following:

1> Generating code
1> 0 of 168 functions ( 0.0%) were compiled, the rest were copied from previous compilation.
1> 0 functions were new in current compilation
1> 0 functions had inline decision re-evaluated but remain unchanged

I also verified that the same behavior happens if I replace the VERSION macro and use the number directly. If I only change the number, I get the same result as far as having to do a do a "Clean Solution" for the solution to build correctly.

Lastly, if I add a line of dummy code to the function such as:

int i = 7;  // i is not used in the function

the build will work correctly the next time. In this case, after the source file is recompiled, we see the following:

1> Generating code
1> 2 of 168 functions ( 1.2%) were compiled, the rest were copied from previous compilation.
1> 0 functions were new in current compilation
1> 0 functions had inline decision re-evaluated but remain unchanged

Further compiles will not work correctly unless something changes like removing the int i = 7;

in which case, it will work the next time.

Thoughts?