This is the mail archive of the gcc-help@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

when the parameter value is changed after invoking? How can stack make wrong?


hi,
in unixware7.1.1, compiled by gcc2.95.2,
in main function invoke a member funtion "parse"
            parser->parse(xmlFile);
parameter xmlFile value is changed after into funtion parse.
before invoke this funtion:
	xmlFile=0x8047c94 "1.xml"
after into the funtion parse(do nothing)
systemId=0x80472d8 "\004ï¿,s\004\b\213$Ê¿(s\004\bès\004\b\214s\004\b\022$Ê¿à~÷¿ i\006\bôs\004\bôs\004\b\235öÔ¿4\206÷¿d¹¿d\003Ê¿\034`
Å¿Ìi\006\b", reuseGrammar=216) at DOMParser.cpp:344

function parse
class DOMParser
{
	...........
    void parse(const XMLCh* const systemId, const bool reuseGrammar = false);
	............
};

void DOMParser::parse(const char* const systemId, const bool reuseGrammar)
{
    // Avoid multiple entrance
    if (fParseInProgress)
        ThrowXML(IOException, XMLExcepts::Gen_ParseInProgress);

    try
    {
        fParseInProgress = true;
        fScanner->scanDocument(systemId, reuseGrammar);
        fParseInProgress = false;
    }

    catch(...)
    {
        fParseInProgress = false;
        throw;
    }
}

thanks,
tao


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]