Watch, Follow, &
Connect with Us
Public Report
Report From: Delphi-BCB/IDE/Project Management    [ Add a report in this area ]  
Report #:  66786   Status: Reported
Incorrect status of inherited value in Build configuration after upgrade D2007 Project file (*.dproj)
Project:  Delphi Build #:  12.0.3170.16989
Version:    12.0 Submitted By:   Chee Yang Chau
Report Type:  Basic functionality failure Date Reported:  9/15/2008 3:37:10 AM
Severity:    Commonly encountered problem Last Updated: 9/15/2008 4:23:08 AM
Platform:    All platforms Internal Tracking #:  
Resolution: Need More Info (Resolution Comments) Resolved in Build: : None
Duplicate of:  None
Voting and Rating
Overall Rating: No Ratings Yet
0.00 out of 5
Total Votes: None
Description
In Delphi 2009, the Build Configuration has "Base" where "Debug" and "Release" are inherited from it.

The Build Configuration editor show in "Bold" font to indicate the value is difference from it's parent value.

However, the above rule is not follow if I upgrade a Delphi 2007 project.  In this example, I have switch the value of Optimization to "False" in Delphi 2007 project before I upgraded to Delphi 2009.
Steps to Reproduce:
1. Extract Delphi 2007 project from attachment.
2. Open Delphi 2009 IDE.
3. Open the Delphi 2007 project from IDE and upgrade as usual
4. Click Project | Options...
5. Select page: "Delphi Compiler" | Compiling
6. Switch the Build Configuration from "Base" to "Debug"
7. Expand the node "Code Generation" | "Optimization" and you will notice both current and inherited value are "False"
Workarounds
Continue from the above steps, try switch the Optimization value from "False" to "True" then switch again from "True" to "False". The inherited status will back to normal.
Attachment
66786.zip
Comments

Tomohiro Takahashi at 9/15/2008 4:23:04 AM -
In Desription,
> I have switch the value of Optimization to "False" in Delphi 2007 project before I upgraded to Delphi 2009.
In Steps,
>6. Switch the Build Configuration from "Base" to "Debug"
>7. Expand the node "Code Generation" | "Optimization" and you will notice both current and inherited value are "False"

I think 'False' for 'Debug' is correct on both 2007 and 2009.
So, do you think that the value should be 'True' for 'Base' on 2009?

Chee Yang Chau at 9/15/2008 6:09:14 PM -
Yes. you are right that "I think 'False' for 'Debug' is correct on both 2007 and 2009."  But my problem isn't related to this.

What I trying to point out is BOLD font shown on build configuration editor.  If the font is bold, it simply means the value is different than inherited value.  

In the attachment, once you upgrade the project to Delphi 2009, you will see the Optimization value in "Debug" configuration is False in bold font. Inspect the inherited value from base, it is "false" too.  

I expect the value in "Debug" configuration should be "False" in normal font or else it is against the design of inherited build configuration.  To prove that I am right here, you simply change the Optimazation value from "False" to "True", and from "True" back to "False", the value is finally shown in "False" normal font.

Hope you can follow what I trying to describe here.  If you still don't get the idea, I will try to send email to you showing with screen capture.

Server Response from: ETNACODE01