Hello,

I am getting the following error when I compile my project (myproj) on
Windows 64-bit:
------------------------------------------------------------
cl /nologo /MDd /Od /Z7 /TP /DEBUG /D"_DEBUG"  -DNOI18N  -
DPLAT_ENDIAN=LITTLE_ENDIAN -DPLAT_ISA=64 -DPLAT_OS=WINDOWS -
D__WINDOWS__ -DWIN32    -DAPR_DECLARE_STATIC  -DAPU_DECLARE_STATIC -
DAPI_DECLARE_STATIC -WX -EHsc -TP  -I../../../src/include -I../../../
extern/INSTALL/Windows-x86_64/include /FoOBJ/Windows-x86_64/myfile.o -
c myfile.c
myfile.c
c:\myproj\src\include\policy.pb.h(58) : error C2664: 'bool
google::protobuf::internal::ParseNamedEnum<MyProjPolicy::AttrCompareList_AttrCompareListType>(const
google::protobuf::EnumDescriptor *,const string &,EnumType *)' :
cannot convert parameter 2 from 'const std::string' to 'const string
&'
        with
        [
            EnumType=MyProjPolicy::AttrCompareList_AttrCompareListType
        ]
        Reason: cannot convert from 'const std::string' to 'const
string'
        No user-defined-conversion operator available that can perform
this conversion, or the operator cannot be called
------------------------------------------------------------

policy.pb.h: 58: contains --

55 inline bool AttrCompareList_AttrCompareListType_Parse(
56     const ::std::string& name, AttrCompareList_AttrCompareListType*
value) {
57
return 
::google::protobuf::internal::ParseNamedEnum<AttrCompareList_AttrCompareListType>(
58     AttrCompareList_AttrCompareListType_descriptor(), name, value);
59 }

Seems like AttrCompareList_AttrCompareListType_Parse() was generated
with the 'name' parameter to be 'const ::std::string&' but seems like
ParseNamedEnum()'s second parameter takes 'const string &'.

policy.pb.h was generated from policy.proto and it has just started
complaining after I started using extensions inside policy.proto.

<snip>
message PolicyMsg {
            // .. many different fields
}

extend MsgInOtherFile {
             repeated PolicyMsg foo = 100;
}
</snip>

I have tried to check my compiler settings, etc. but I am not able to
make progress. Since the signatures for both
AttrCompareList_AttrCompareListType_Parse() and ParseNamedEnum() are
both generated by the proto-compiler, I figured I'll post this on the
group before continuing my investigations.

Any help would be great.

Thanks,
- Anand

-- 
You received this message because you are subscribed to the Google Groups 
"Protocol Buffers" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/protobuf?hl=en.

Reply via email to