Status: New
Labels: Type-Defect Priority-Medium

New issue 544 by C++ headers use unqualified (=potentially ambiguous) names from std namespace

When used alongside a library that reuses (in a separate namespace) names from the standard library, protobuf headers may fail to compile with an "ambiguous symbol" error.

In my case, my project uses uBLAS, which defines the template boost::numeric::ublas::vector. Now I can't include the headers message.h, generated_message_reflection.h, unknown_field_set.h unmodified, because they refer to vector<...> rather than std::vector<...>, which creates an ambiguity in the context in which I'm including them.

A quick search through the code shows that this is a consistent pattern (at least with regards to the name "vector"), so I'm a little puzzled.

You received this message because this project is configured to send all issue notifications to this address.
You may adjust your notification preferences at:

You received this message because you are subscribed to the Google Groups "Protocol 
Buffers" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
To post to this group, send email to
Visit this group at
For more options, visit

Reply via email to