diff --git a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/macros/DefaultMacroContextInfo.java b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/macros/DefaultMacroContextInfo.java
index d898183a086..b49f33ac587 100644
--- a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/macros/DefaultMacroContextInfo.java
+++ b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/macros/DefaultMacroContextInfo.java
@@ -167,6 +167,24 @@ public class DefaultMacroContextInfo implements IMacroContextInfo {
 					return new DefaultMacroContextInfo(
 							IBuildMacroProvider.CONTEXT_CONFIGURATION,
 							((IToolChain)ho).getParent());
+				else {
+					IBuildObject buildObj = optionContext.getParent();
+                    IConfiguration cfg = null; 
+                    if(buildObj instanceof ITool) 
+                       buildObj = ((ITool)buildObj).getParent(); 
+                    if(buildObj instanceof IToolChain) 
+                       cfg = ((IToolChain)buildObj).getParent(); 
+                    else if(buildObj instanceof IResourceConfiguration) 
+                       cfg = ((IResourceConfiguration)buildObj).getParent(); 
+                    else if(buildObj instanceof IConfiguration) 
+                       cfg = (IConfiguration)buildObj; 
+
+                    if(cfg != null){ 
+                        return new DefaultMacroContextInfo( 
+                        		IBuildMacroProvider.CONTEXT_CONFIGURATION, 
+                        		cfg); 
+                    } 
+				}
 			}
 			break;
 		case IBuildMacroProvider.CONTEXT_TOOL: