Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 368260

Summary: [fp] Code analysis may fail to resolve Koenig lookup (ADL)
Product: [Tools] CDT Reporter: Josh Kelley <joshkel>
Component: cdt-indexerAssignee: Project Inbox <cdt-indexer-inbox>
Status: CLOSED DUPLICATE QA Contact: Markus Schorn <mschorn.eclipse>
Severity: normal    
Priority: P3 CC: cdtdoug, malaperle
Version: 8.0.1   
Target Milestone: ---   
Hardware: PC   
OS: Windows 7   
Whiteboard:

Description Josh Kelley CLA 2012-01-10 10:09:42 EST
Build Identifier: Version: Indigo Service Release 1 Build id: 20110916-0149

Code analysis fails to perform Koenig lookup (argument dependent lookup) and so flags an incorrect "Function could not be resolved" error for the following code:

#include <boost/format.hpp>
#include <boost/operators.hpp>

int main(int, char**)
{
  std::string s = str(boost::format("%i") % 1);
}

Strangely, if I remove the "#include <boost/operators.hpp>" line, then code analysis removes the incorrect error.

This is using Boost 1.40.0 on Debian.

Reproducible: Always
Comment 1 Marc-André Laperle CLA 2012-01-15 04:55:06 EST
This works for me on the master branch as of today. Maybe this was fixed with bug 197989?
Comment 2 Markus Schorn CLA 2012-01-16 09:25:16 EST
Tested with boost 1.46.1

*** This bug has been marked as a duplicate of bug 197989 ***