Community
Participate
Working Groups
Steps to reproduce 1) Create helloworld C project 2) Override a (non-preprocessor define) option on the source folder src e.g. Change optimization to -O2. 3) Build the project 4) Add a define to project top-level 5) Build again At stage 5, the source file isn't correctly rebuilt. Note the makefiles are correct and up to date, CDT just hasn't pruned the the out of date derived files.
Created attachment 173019 [details] fix 1 As tools inherit (non-overriden) options from their superClass. #needsRebuild should query the superClass as well. This bug looks applicable to all HoldsOption types (both Tool and ToolChain) so I think the fix should go in the abstract base class.
Fix committed to 7.0.1 + HEAD.
*** cdt cvs genie on behalf of jblackburn *** Bug 318331 changing an option value on a top-level resource may not correctly rebuild all changed children. [*] HoldsOptions.java 1.19 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/HoldsOptions.java?root=Tools_Project&r1=1.18&r2=1.19 [*] HoldsOptions.java 1.18.2.1 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/HoldsOptions.java?root=Tools_Project&r1=1.18&r2=1.18.2.1 [*] MANIFEST.MF 1.22.2.1 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.managedbuilder.core/META-INF/MANIFEST.MF?root=Tools_Project&r1=1.22&r2=1.22.2.1