hi I've got a problem when I try to make a cross compilation of the gSOAP toolkit from a i686-pc-cygwin to i586-hadhat-linux.
I downloaded the gSOAP toolkit from here:http://sourceforge.net/project/showfiles.php?group_id=52781&package_id=68161&release_id=394790 it's the version : gSOAP 2.7.6e for the error, it told me : Please submit a full bug report, with preprocessed source if appropriate. See <URL:http://www.gnu.org/software/gcc/bugs.html> for instructions. So, it's what i am doing, cause i don't find how to correct the error. So i give you : -the exact version of GCC : GNU CPP version 3.2.1 20020930 (MontaVista) (cpplib) (i386 Linux/ELF) GNU C version 3.2.1 20020930 (MontaVista) (i586-hardhat-linux) -the options given when GCC was configured/built: Configured with: /opt/src/gcc-3.2/configure -v --host=i686-pc-cygwin --build=i686-pc-cygwin --target=i586-hardhat-linux --prefix=/opt/hardhat/devkit/x86/586_mv30 --exec-prefix=/opt/hardhat/devkit/x86/586_mv30 --bindir=/opt/hardhat/devkit/x86/586_mv30/bin --sbindir=/opt/hardhat/devkit/x86/586_mv30/sbin --sysconfdir=/opt/hardhat/devkit/x86/586_mv30/etc --datadir=/opt/hardhat/devkit/x86/586_mv30/share --includedir=/opt/hardhat/devkit/x86/586_mv30/include --libdir=/opt/hardhat/devkit/x86/586_mv30/lib --libexecdir=/opt/hardhat/devkit/x86/586_mv30/libexec --localstatedir=/opt/hardhat/devkit/x86/586_mv30/var --sharedstatedir=/opt/hardhat/devkit/x86/586_mv30/share --mandir=/opt/hardhat/devkit/x86/586_mv30/man --infodir=/opt/hardhat/devkit/x86/586_mv30/info --program-transform-name=s,^,586-, --enable-cross --enable-shared --enable-languages=c,c++ --enable-threads --with-gxx-include-dir=/opt/hardhat/devkit/x86/586_mv30/i586-hardhat-linux/include/g++-3 --with-fp --with-cpu=i386 --with-local-prefix=/opt/hardhat/devkit/x86/586_mv30/i586-hardhat-linux -the compiler output (error messages, warnings, etc.): make[4]: Entering directory `/cygdrive/c/Stage/workspacegSOAP/gSOAP/soapcpp2/src' if i586-hardhat-linux-gcc -DHAVE_CONFIG_H -I. -I. -I../.. -DWITH_BISON -DWITH_FLEX -DLINUX -v -save-temps -g -O2 -MT soapcpp2-symbol2.o -MD -MP -MF ".deps/soapcpp2-symbol2.Tpo" -c -o soapcpp2-symbol2.o `test -f 'symbol2.c' || echo './'`symbol2.c; \ then mv -f ".deps/soapcpp2-symbol2.Tpo" ".deps/soapcpp2-symbol2.Po"; else rm -f ".deps/soapcpp2-symbol2.Tpo"; exit 1; fi Reading specs from /usr/bin/../lib/gcc-lib/i586-hardhat-linux/3.2.1/specs Configured with: /opt/src/gcc-3.2/configure -v --host=i686-pc-cygwin --build=i686-pc-cygwin --target=i586-hardhat-linux --prefix=/opt/hardhat/devkit/x86/586_mv30 --exec-prefix=/opt/hardhat/devkit/x86/586_mv30 --bindir=/opt/hardhat/devkit/x86/586_mv30/bin --sbindir=/opt/hardhat/devkit/x86/586_mv30/sbin --sysconfdir=/opt/hardhat/devkit/x86/586_mv30/etc --datadir=/opt/hardhat/devkit/x86/586_mv30/share --includedir=/opt/hardhat/devkit/x86/586_mv30/include --libdir=/opt/hardhat/devkit/x86/586_mv30/lib --libexecdir=/opt/hardhat/devkit/x86/586_mv30/libexec --localstatedir=/opt/hardhat/devkit/x86/586_mv30/var --sharedstatedir=/opt/hardhat/devkit/x86/586_mv30/share --mandir=/opt/hardhat/devkit/x86/586_mv30/man --infodir=/opt/hardhat/devkit/x86/586_mv30/info --program-transform-name=s,^,586-, --enable-cross --enable-shared --enable-languages=c,c++ --enable-threads --with-gxx-include-dir=/opt/hardhat/devkit/x86/586_mv30/i586-hardhat-linux/include/g++-3 --with-fp --with-cpu=i386 --with-local-prefix=/opt/hardhat/devkit/x86/586_mv30/i586-hardhat-linux Thread model: posix gcc version 3.2.1 20020930 (MontaVista) /usr/bin/../lib/gcc-lib/i586-hardhat-linux/3.2.1/cpp0.exe -lang-c -v -I. -I. -I../.. -iprefix /usr/bin/../lib/gcc-lib/i586-hardhat-linux/3.2.1/ -MD soapcpp2-symbol2.d -MF .deps/soapcpp2-symbol2.Tpo -MP -MT soapcpp2-symbol2.o -MQ soapcpp2-symbol2.o -D__GNUC__=3 -D__GNUC_MINOR__=2 -D__GNUC_PATCHLEVEL__=1 -D__GXX_ABI_VERSION=102 -D__ELF__ -Dunix -D__gnu_linux__ -Dlinux -D__ELF__ -D__unix__ -D__gnu_linux__ -D__linux__ -D__unix -D__linux -Asystem=posix -D__OPTIMIZE__ -D__STDC_HOSTED__=1 -Acpu=i386 -Amachine=i386 -Di386 -D__i386 -D__i386__ -D__tune_i386__ -DHAVE_CONFIG_H -DWITH_BISON -DWITH_FLEX -DLINUX symbol2.c symbol2.i GNU CPP version 3.2.1 20020930 (MontaVista) (cpplib) (i386 Linux/ELF) ignoring nonexistent directory "/usr/target/usr/include" ignoring duplicate directory "." #include "..." search starts here: #include <...> search starts here: . ../.. /usr/lib/gcc-lib/i586-hardhat-linux/3.2.1/include /usr/i586-hardhat-linux/include End of search list. /usr/bin/../lib/gcc-lib/i586-hardhat-linux/3.2.1/cc1.exe -fpreprocessed symbol2.i -quiet -dumpbase symbol2.c -mcpu=i386 -g -O2 -version -o symbol2.s GNU CPP version 3.2.1 20020930 (MontaVista) (cpplib) (i386 Linux/ELF) GNU C version 3.2.1 20020930 (MontaVista) (i586-hardhat-linux) compiled by GNU C version 3.2 20020927 (prerelease). symbol2.c: In function `gen_wsdl': symbol2.c:2102: internal error: Segmentation fault Please submit a full bug report, with preprocessed source if appropriate. See <URL:http://www.gnu.org/software/gcc/bugs.html> for instructions. make[4]: *** [soapcpp2-symbol2.o] Error 1 -the preprocessed file (*.i*) that triggers the bug: # 1 "symbol2.c" # 1 "<built-in>" # 1 "<command line>" # 1 "symbol2.c" # 47 "symbol2.c" # 1 "soapcpp2.h" 1 # 45 "soapcpp2.h" # 1 "/usr/i586-hardhat-linux/include/stdio.h" 1 3 # 28 "/usr/i586-hardhat-linux/include/stdio.h" 3 # 1 "/usr/i586-hardhat-linux/include/features.h" 1 3 # 283 "/usr/i586-hardhat-linux/include/features.h" 3 # 1 "/usr/i586-hardhat-linux/include/sys/cdefs.h" 1 3 # 284 "/usr/i586-hardhat-linux/include/features.h" 2 3 # 312 "/usr/i586-hardhat-linux/include/features.h" 3 # 1 "/usr/i586-hardhat-linux/include/gnu/stubs.h" 1 3 # 313 "/usr/i586-hardhat-linux/include/features.h" 2 3 # 29 "/usr/i586-hardhat-linux/include/stdio.h" 2 3 If anyone have any idea. Thank u. -Here is the fonction where it said there is the internal error in gSOAP\soapcpp2\src\symbol2.c : void gen_wsdl(FILE *fd, Table *t, char *ns, char *name, char *URL, char *executable, char *URI, char *style, char *encoding) { Entry *p, *q, *r; Symbol *s; Service *sp, *sp2; Method *m; int mimein, mimeout; char *action, *comment, *method_style = NULL, *method_encoding = NULL, *method_response_encoding = NULL; char *binding; fprintf(fd, "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"); for (sp = services; sp; sp = sp->next) if (!strcmp(sp->ns, ns)) break; if (sp && sp->definitions) fprintf(fd, "<definitions name=\"%s\"\n", sp->definitions); else fprintf(fd, "<definitions name=\"%s\"\n", name); if (sp && sp->WSDL) fprintf(fd, " targetNamespace=\"%s\"\n xmlns:tns=\"%s\"", sp->WSDL, sp->WSDL); else fprintf(fd, " targetNamespace=\"%s/%s.wsdl\"\n xmlns:tns=\"%s/%s.wsdl\"", URL, name, URL, name); if (sp && sp->binding) binding = ns_cname(sp->binding, NULL); else binding = name; for (s = nslist; s; s = s->next) { for (sp2 = services; sp2; sp2 = sp2->next) if (!strcmp(sp2->ns, s->name) && sp2->URI) break; if (sp2) fprintf(fd, "\n xmlns:%s=\"%s\"", ns_convert(s->name), sp2->URI); else if (!strcmp(s->name, "SOAP-ENV")) fprintf(fd, "\n xmlns:SOAP-ENV=\"%s\"", envURI); else if (!strcmp(s->name, "SOAP-ENC")) fprintf(fd, "\n xmlns:SOAP-ENC=\"%s\"", encURI); else if (!strcmp(s->name, "xsi")) fprintf(fd, "\n xmlns:xsi=\"%s\"", xsiURI); else if (!strcmp(s->name, "xsd")) fprintf(fd, "\n xmlns:xsd=\"%s\"", xsdURI); else fprintf(fd, "\n xmlns:%s=\"%s/%s.xsd\"", ns_convert(s->name), tmpURI, ns_convert(s->name)); } if (is_soap12()) fprintf(fd, "\n xmlns:SOAP=\"http://schemas.xmlsoap.org/wsdl/soap12/\""); else fprintf(fd, "\n xmlns:SOAP=\"http://schemas.xmlsoap.org/wsdl/soap/\""); fprintf(fd, "\n xmlns:MIME=\"http://schemas.xmlsoap.org/wsdl/mime/\""); fprintf(fd, "\n xmlns:DIME=\"http://schemas.xmlsoap.org/ws/2002/04/dime/wsdl/\""); fprintf(fd, "\n xmlns:WSDL=\"http://schemas.xmlsoap.org/wsdl/\""); fprintf(fd, "\n xmlns=\"http://schemas.xmlsoap.org/wsdl/\">\n\n"); fprintf(fd, "<types>\n\n"); for (s = nslist; s; s = s->next) gen_schema(fd, t, ns, s->name, !strcmp(s->name, ns), 1, URL, URI, style, encoding); fprintf(fd, "</types>\n\n"); fflush(fd); if (t) { for (p = t->list; p; p = p->next) { if (p->info.typ->type == Tfun && !(p->info.sto & Sextern) && has_ns_eq(ns, p->sym->name)) { mimein = 0; mimeout = 0; comment = NULL; method_style = style; method_encoding = encoding; method_response_encoding = NULL; if (sp) { for (m = sp->list; m; m = m->next) { if (is_eq_nons(m->name, p->sym->name)) { if (m->mess&MIMEIN) mimein = 1; if (m->mess&MIMEOUT) mimeout = 1; if (m->mess == ENCODING) method_encoding = m->part; else if (m->mess == RESPONSE_ENCODING) method_response_encoding = m->part; else if (m->mess == STYLE) method_style = m->part; else if (m->mess == COMMENT) comment = m->part; } } } if (!method_response_encoding) method_response_encoding = method_encoding; if (get_response(p->info.typ)) fprintf(fd, "<message name=\"%sRequest\">\n", ns_remove(p->sym->name)); else fprintf(fd, "<message name=\"%s\">\n", ns_remove(p->sym->name)); fflush(fd); if (is_document(method_style)) { if (is_invisible(p->sym->name)) { q = entry(classtable, p->sym); if (q) { q = ((Table*)q->info.typ->ref)->list; if (q) { if (is_invisible(q->sym->name)) { r = entry(classtable, q->sym); if (r) { r = ((Table*)r->info.typ->ref)->list; if (r) fprintf(fd, " <part name=\"parameters\" element=\"%s\"/>\n", ns_add(r->sym->name, ns)); } } else fprintf(fd, " <part name=\"parameters\" element=\"%s\"/>\n", ns_add(q->sym->name, ns)); } } } else fprintf(fd, " <part name=\"parameters\" element=\"%s\"/>\n", ns_add(p->sym->name, ns)); } else { q = entry(classtable, p->sym); if (q) for (q = ((Table*)q->info.typ->ref)->list; q; q = q->next) { if (!is_transient(q->info.typ) && !(q->info.sto & Sattribute) && q->info.typ->type != Tfun && !is_repetition(q) && !is_anytype(q)) { if (is_literal(method_encoding)) fprintf(fd, " <part name=\"%s\" element=\"%s\"/>\n", ns_remove(q->sym->name), ns_add(q->sym->name, ns)); else if (is_XML(q->info.typ)) fprintf(fd, " <part name=\"parameters\" type=\"xsd:anyType\"/>\n"); else fprintf(fd, " <part name=\"%s\" type=\"%s\"/>\n", ns_remove(q->sym->name), wsdl_type(q->info.typ, ns)); } } } if (mimein) fprintf(fd, " <part name=\"attachments\" type=\"xsd:base64Binary\"/>\n"); fprintf(fd, "</message>\n\n"); fflush(fd); q = (Entry*)p->info.typ->ref; if (q && is_transient(q->info.typ)) ; else if (q && !is_response(q->info.typ)) { fprintf(fd, "<message name=\"%sResponse\">\n", ns_remove(p->sym->name)); if (is_document(method_style)) fprintf(fd, " <part name=\"parameters\" element=\"%sResponse\"/>\n", ns_add(p->sym->name, ns)); else if (is_literal(method_response_encoding)) fprintf(fd, " <part name=\"%s\" element=\"%s\"/>\n", ns_remove(q->sym->name), ns_add(q->sym->name, ns)); else if (is_XML(q->info.typ->ref)) fprintf(fd, " <part name=\"parameters\" type=\"xsd:anyType\"/>\n"); else fprintf(fd, " <part name=\"%s\" type=\"%s\"/>\n", ns_remove(q->sym->name), wsdl_type(q->info.typ, ns)); if (mimeout) fprintf(fd, " <part name=\"attachments\" type=\"xsd:base64Binary\"/>\n"); fprintf(fd, "</message>\n\n"); } else if (q && q->info.typ->wsdl == False) { q->info.typ->wsdl = True; fprintf(fd, "<message name=\"%s\">\n", ns_remove(((Tnode*)q->info.typ->ref)->id->name)); if (is_document(method_style)) { if (has_ns_eq(NULL, ((Entry*)p->info.typ->ref)->sym->name)) fprintf(fd, " <part name=\"parameters\" element=\"%s\"/>\n", ns_convert(((Entry*)p->info.typ->ref)->sym->name)); else if (is_invisible(((Tnode*)q->info.typ->ref)->id->name)) { r = ((Table*)((Tnode*)q->info.typ->ref)->ref)->list; if (r) fprintf(fd, " <part name=\"parameters\" element=\"%s\"/>\n", ns_add(r->sym->name, ns)); } else fprintf(fd, " <part name=\"parameters\" element=\"%s\"/>\n", ns_convert(((Tnode*)q->info.typ->ref)->id->name)); } else { if (((Tnode*)q->info.typ->ref)->ref) { for (q = ((Table*)((Tnode*)q->info.typ->ref)->ref)->list; q; q = q->next) { if (!is_transient(q->info.typ) && !(q->info.sto & Sattribute) && q->info.typ->type != Tfun && !is_repetition(q) && !is_anytype(q)) if (is_literal(method_response_encoding)) fprintf(fd, " <part name=\"%s\" element=\"%s\"/>\n", ns_remove(q->sym->name), ns_add(q->sym->name, ns)); else if (is_XML(q->info.typ)) fprintf(fd, " <part name=\"parameters\" type=\"xsd:anyType\"/>\n"); else fprintf(fd, " <part name=\"%s\" type=\"%s\"/>\n", ns_remove(q->sym->name), wsdl_type(q->info.typ, ns)); } } } if (mimeout) fprintf(fd, " <part name=\"attachments\" type=\"xsd:base64Binary\"/>\n"); fprintf(fd, "</message>\n\n"); } fflush(fd); } } if (custom_header) { Table *r; fprintf(fd, "<message name=\"%sHeader\">\n", name); r = entry(classtable, lookup("SOAP_ENV__Header"))->info.typ->ref; if (r) for (q = r->list; q; q = q->next) if (!is_transient(q->info.typ) && !(q->info.sto & Sattribute) && q->info.typ->type != Tfun && !is_repetition(q) && !is_anytype(q)) fprintf(fd, " <part name=\"%s\" element=\"%s\"/>\n", ns_remove(q->sym->name), ns_add(q->sym->name, ns)); fprintf(fd, "</message>\n\n"); } if (custom_fault) { Table *r; fprintf(fd, "<message name=\"%sFault\">\n", name); r = entry(classtable, lookup("SOAP_ENV__Detail"))->info.typ->ref; if (r) for (q = r->list; q; q = q->next) if (!is_transient(q->info.typ) && !is_repetition(q) && !is_anytype(q) && !(q->info.sto & Sattribute) && q->info.typ->type != Tfun && has_ns_eq(NULL, q->sym->name)) fprintf(fd, " <part name=\"%s\" element=\"%s\"/>\n", ns_remove(q->sym->name), ns_add(q->sym->name, ns)); fprintf(fd, "</message>\n\n"); } if (sp) { for (m = sp->list; m; m = m->next) { if (m->mess&FAULT) { Method *m2; int flag = 0; for (m2 = sp->list; m2 && m2 != m; m2 = m2->next) if (m2->mess&FAULT && !strcmp(m2->part, m->part)) flag = 1; if (!flag) { if (typetable) for (p = typetable->list; p; p = p->next) if ((m->mess&FAULT) && is_eq(m->part, p->info.typ->sym->name)) break; if (!p && classtable) for (p = classtable->list; p; p = p->next) if ((m->mess&FAULT) && is_eq(m->part, p->info.typ->id->name)) break; if (p) { fprintf(fd, "<message name=\"%sFault\">\n", ns_remove(m->part)); fprintf(fd, " <part name=\"fault\" element=\"%s\"/>\n", ns_convert(m->part)); fprintf(fd, "</message>\n\n"); } else { sprintf(errbuf, "//gsoap %s method-fault %s %s directive does not refer to class or typedef", sp->ns, m->name, m->part); semwarn(errbuf); } } } } } fflush(fd); if (sp && sp->port) fprintf(fd, "<portType name=\"%s\">\n", sp->port); else fprintf(fd, "<portType name=\"%s\">\n", ns_cname(name, "PortType")); for (p = t->list; p; p = p->next) { if (p->info.typ->type == Tfun && !(p->info.sto & Sextern) && has_ns_eq(ns, p->sym->name)) { comment = NULL; if (sp) for (m = sp->list; m; m = m->next) if (m->mess == COMMENT && is_eq_nons(m->name, p->sym->name)) comment = m->part; fprintf(fd, " <operation name=\"%s\">\n", ns_remove(p->sym->name)); if (comment) fprintf(fd, " <documentation>%s</documentation>\n", comment); else fprintf(fd, " <documentation>Service definition of function %s</documentation>\n", p->sym->name); if (get_response(p->info.typ)) fprintf(fd, " <input message=\"tns:%sRequest\"/>\n", ns_remove(p->sym->name)); else fprintf(fd, " <input message=\"tns:%s\"/>\n", ns_remove(p->sym->name)); q = (Entry*)p->info.typ->ref; if (q && is_transient(q->info.typ)) ; else if (q && !is_response(q->info.typ)) fprintf(fd, " <output message=\"tns:%sResponse\"/>\n", ns_remove(p->sym->name)); else if (q) fprintf(fd, " <output message=\"tns:%s\"/>\n", ns_remove(((Tnode*)q->info.typ->ref)->id->name)); if (sp) for (m = sp->list; m; m = m->next) if ((m->mess&FAULT) && is_eq_nons(m->name, p->sym->name)) fprintf(fd, " <fault name=\"%s\" message=\"tns:%sFault\"/>\n", ns_remove(m->part), ns_remove(m->part)); fprintf(fd, " </operation>\n"); } } fprintf(fd, "</portType>\n\n"); fprintf(fd, "<binding name=\"%s\" ", binding); if (is_document(style)) if (sp && sp->port) fprintf(fd, "type=\"tns:%s\">\n <SOAP:binding style=\"document\"", sp->port); else fprintf(fd, "type=\"tns:%s\">\n <SOAP:binding style=\"document\"", ns_cname(name, "PortType")); else if (sp && sp->port) fprintf(fd, "type=\"tns:%s\">\n <SOAP:binding style=\"rpc\"", sp->port); else fprintf(fd, "type=\"tns:%s\">\n <SOAP:binding style=\"rpc\"", ns_cname(name, "PortType")); if (sp && sp->transport) fprintf(fd, " transport=\"%s\"/>\n", sp->transport); else fprintf(fd, " transport=\"http://schemas.xmlsoap.org/soap/http\"/>\n"); fflush(fd); for (p = t->list; p; p = p->next) { if (p->info.typ->type == Tfun && !(p->info.sto & Sextern) && has_ns_eq(ns, p->sym->name)) { action = ""; mimein = 0; mimeout = 0; method_style = style; method_encoding = encoding; method_response_encoding = NULL; if (sp) { for (m = sp->list; m; m = m->next) { if (is_eq_nons(m->name, p->sym->name)) { if (m->mess&MIMEIN) mimein = 1; if (m->mess&MIMEOUT) mimeout = 1; if (m->mess == ENCODING) method_encoding = m->part; else if (m->mess == RESPONSE_ENCODING) method_response_encoding = m->part; else if (m->mess == STYLE) method_style = m->part; else if (m->mess == ACTION) action = m->part; } } } if (!method_response_encoding) method_response_encoding = method_encoding; fprintf(fd, " <operation name=\"%s\">\n", ns_remove(p->sym->name)); if (is_document(style)) { if (is_document(method_style)) { if (is_soap12()) fprintf(fd, " <SOAP:operation/>\n"); else if (*action == '"') fprintf(fd, " <SOAP:operation soapAction=%s/>\n", action); else fprintf(fd, " <SOAP:operation soapAction=\"%s\"/>\n", action); } else if (is_soap12()) fprintf(fd, " <SOAP:operation style=\"rpc\"/>\n"); else if (*action == '"') fprintf(fd, " <SOAP:operation style=\"rpc\" soapAction=%s/>\n", action); else fprintf(fd, " <SOAP:operation style=\"rpc\" soapAction=\"%s\"/>\n", action); } else { if (is_document(method_style)) { if (is_soap12()) fprintf(fd, " <SOAP:operation style=\"document\"/>\n"); else if (*action == '"') fprintf(fd, " <SOAP:operation style=\"document\" soapAction=%s/>\n", action); else fprintf(fd, " <SOAP:operation style=\"document\" soapAction=\"%s\"/>\n", action); } else if (is_soap12()) fprintf(fd, " <SOAP:operation style=\"rpc\"/>\n"); else if (*action == '"') fprintf(fd, " <SOAP:operation style=\"rpc\" soapAction=%s/>\n", action); else fprintf(fd, " <SOAP:operation style=\"rpc\" soapAction=\"%s\"/>\n", action); } fprintf(fd, " <input>\n"); if (mimein) fprintf(fd, " <MIME:multipartRelated>\n <MIME:part>\n"); q = entry(classtable, p->sym); if (is_literal(method_encoding) || q && (q = (((Table*)q->info.typ->ref)->list)) && q && is_XML(q->info.typ)) { if (is_document(method_style)) fprintf(fd, " <SOAP:body parts=\"parameters\" use=\"literal\"/>\n"); else fprintf(fd, " <SOAP:body parts=\"parameters\" use=\"literal\" namespace=\"%s\"/>\n", URI); } else { if (encoding && *encoding) fprintf(fd, " <SOAP:body use=\"encoded\" namespace=\"%s\" encodingStyle=\"%s\"/>\n", URI, encoding); else if (method_encoding && *method_encoding) fprintf(fd, " <SOAP:body use=\"encoded\" namespace=\"%s\" encodingStyle=\"%s\"/>\n", URI, method_encoding); else fprintf(fd, " <SOAP:body use=\"encoded\" namespace=\"%s\" encodingStyle=\"%s\"/>\n", URI, encURI); if (!eflag) { sprintf(errbuf, "operation '%s' is not compliant with WS-I Basic Profile 1.0a, reason: uses SOAP encoding", p->sym->name); compliancewarn(errbuf); } } if (custom_header) { int f = 0; m = NULL; if (sp) for (m = sp->list; m; m = m->next) if (is_eq_nons(m->name, p->sym->name) && (m->mess&HDRIN)) { f = 1; if (chkhdr(m->part)) fprintf(fd, " <SOAP:header use=\"literal\" message=\"tns:%sHeader\" part=\"%s\"/>\n", name, ns_remove(m->part)); } } if (mimein) { if (sp) { for (m = sp->list; m; m = m->next) { if (is_eq_nons(m->name, p->sym->name) && (m->mess&MIMEIN)) fprintf(fd, " </MIME:part>\n <MIME:part>\n <MIME:content part=\"attachments\" type=\"%s\"/>\n", m->part); } } fprintf(fd, " </MIME:part>\n </MIME:multipartRelated>\n"); } fprintf(fd, " </input>\n"); q = (Entry*)p->info.typ->ref; if (!q || !q->info.typ->ref) { fprintf(fd, " </operation>\n"); continue; } fprintf(fd, " <output>\n"); if (mimeout) fprintf(fd, " <MIME:multipartRelated>\n <MIME:part>\n"); if (is_literal(method_response_encoding) || is_XML(q->info.typ->ref)) { if (is_document(method_style)) fprintf(fd, " <SOAP:body parts=\"parameters\" use=\"literal\"/>\n"); else fprintf(fd, " <SOAP:body parts=\"parameters\" use=\"literal\" namespace=\"%s\"/>\n", URI); } else if (encoding && *encoding) fprintf(fd, " <SOAP:body use=\"encoded\" namespace=\"%s\" encodingStyle=\"%s\"/>\n", URI, encoding); else if (method_response_encoding && *method_response_encoding) fprintf(fd, " <SOAP:body use=\"encoded\" namespace=\"%s\" encodingStyle=\"%s\"/>\n", URI, method_response_encoding); else fprintf(fd, " <SOAP:body use=\"encoded\" namespace=\"%s\" encodingStyle=\"%s\"/>\n", URI, encURI); if (custom_header) { int f = 0; if (sp) for (m = sp->list; m; m = m->next) if (is_eq_nons(m->name, p->sym->name) && (m->mess&HDROUT)) { f = 1; if (chkhdr(m->part)) fprintf(fd, " <SOAP:header use=\"literal\" message=\"tns:%sHeader\" part=\"%s\"/>\n", name, ns_remove(m->part)); } } if (mimeout) { if (sp) { for (m = sp->list; m; m = m->next) { if (is_eq_nons(m->name, p->sym->name) && (m->mess&MIMEOUT)) fprintf(fd, " </MIME:part>\n <MIME:part>\n <MIME:content part=\"attachments\" type=\"%s\"/>\n", m->part); } } fprintf(fd, " </MIME:part>\n </MIME:multipartRelated>\n"); } fprintf(fd, " </output>\n"); if (sp) for (m = sp->list; m; m = m->next) if ((m->mess&FAULT) && is_eq_nons(m->name, p->sym->name)) fprintf(fd, " <fault name=\"%s\">\n <SOAP:fault name=\"%s\" use=\"literal\"/>\n </fault>\n", ns_remove(m->part), ns_remove(m->part)); fprintf(fd, " </operation>\n"); fflush(fd); } } fprintf(fd, "</binding>\n\n"); } fprintf(fd, "<service name=\"%s\">\n", name); if (sp && sp->documentation) fprintf(fd, " <documentation>%s</documentation>\n", sp->documentation); else fprintf(fd, " <documentation>gSOAP "VERSION" generated service definition</documentation>\n"); if (executable) fprintf(fd, " <port name=\"%s\" binding=\"tns:%s\">\n <SOAP:address location=\"%s/%s\"/>\n </port>\n</service>\n\n</definitions>\n", name, binding, URL, executable); else fprintf(fd, " <port name=\"%s\" binding=\"tns:%s\">\n <SOAP:address location=\"%s\"/>\n </port>\n</service>\n\n</definitions>\n", name, binding, URL); } -- Summary: symbol2.c:2102: internal error: Segmentation fault when i try to compile gSOAP in cross compilation Product: gcc Version: 3.2.1 Status: UNCONFIRMED Severity: blocker Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: sauvageon dot y at voila dot fr http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27053