ORBit2-2.12.4 bugs detected
- From: Thomas Koch <Thomas Koch freescale com>
- To: orbit-list gnome org
- Subject: ORBit2-2.12.4 bugs detected
- Date: Thu, 22 Sep 2005 13:46:04 +0200
Hi,
I tried to compile ORBit2-2.12.4 with the SunWSpro compiler on Solaris
and encountered some problems:
* The function 'ch_output_codefrag' look for '#pragma include_defs'.
If the white space between the pragma and include_defs is a TAB,
the routine fails. Due to this fact the build of
'test/inhibit/baa.c' fails. The file baa.idl contains a TAB after
the pragma statement. Here is the updated code for the routine:
static void
ch_output_codefrag(IDL_tree tree, OIDL_Run_Info *rinfo, OIDL_C_Info *ci)
{
GSList *list;
static gboolean is_processed;
for(list = IDL_CODEFRAG(tree).lines; list;
list = g_slist_next(list)) {
is_processed = FALSE;
if(strncmp((char *)list->data,
"#pragma",
(size_t)sizeof("#pragma")-1) == 0)
{
char *ctmp, *cte;
/*
Skip #pragma and search for 'include_defs' after any amount
of white-spaces (blank, or tab) that may come after this.
*/
ctmp = ((char *)list->data) + sizeof("#pragma");
while(*ctmp && isspace((int)*ctmp)) ctmp++;
/*
After skipping any white-space, we better check for the
second
part of the string before continuing
*/
if(strncmp(ctmp,
"include_defs",
(size_t)sizeof("include_defs")-1) == 0)
{
ctmp = ctmp + sizeof("include_defs");
while(*ctmp && (isspace((int)*ctmp) || *ctmp == '"')) ctmp++;
cte = ctmp;
while(*cte && !isspace((int)*cte) && *cte != '"') cte++;
*cte = '\0';
fprintf(ci->fh, "#include <%s>\n", ctmp);
is_processed = TRUE;
}
}
if (!is_processed)
{
fprintf(ci->fh, "%s\n", (char *)list->data);
}
}
}
* The line feed character leads to 'warning: invalid white space
character in directive' messages while processing the following lines:
o src/idl/interop/GIOP.idl
o src/idl/interop/conv_frame.idl
o src/idl/interop/CSI.idl
o src/idl/interop/IOP.idl
o src/idl/interop/IOP_DCE.idl
o src/idl/interop/GSSUP.idl
o src/idl/interop/orbit-specific.idl
o src/idl/interop/IIOP.idl
o src/idl/interop/SendingContext.idl
o src/idl/interop/BiDirPolicy.idl
o src/idl/interop/CSIIOP.idl
o src/idl/CORBA_PIDL/CORBA_Interceptor.idl
o src/idl/CORBA_PIDL/CRBA_Context.idl
o src/idl/CORBA_PIDL/CORBA_ORB.idl
o src/idl/CORBA_PIDL/CORBA_Object.idl
o src/idl/CORBA_PIDL/CORBA_NVList.idl
o src/idl/CORBA_PIDL/CORBA_ValueBase.idl
o src/idl/CORBA_PIDL/pseudo_orb.idl
o src/idl/CORBA_PIDL/CORBA_ServerRequest.idl
o src/idl/CORBA_PIDL/CORBA_ORB_init.idl
o src/idl/CORBA_PIDL/CORBA_Request.idl
o src/idl/CORBA/CORBA_Pollable.idl
o src/idl/CORBA/CORBA_CustomMarshal.idl
o src/idl/CORBA/CORBA_Stream.idl
o src/idl/CORBA/CORBA_InterfaceRepository.idl
o src/idl/CORBA/CORBA_DomainManager.idl
o src/idl/CORBA/CORBA_StandardExceptions.idl
o src/idl/CORBA/CORBA_Policy.idl
o src/idl/CORBA/orb.idl
o src/idl/CORBA/CORBA_TypeCode.idl
o src/idl/CORBA/CORBA_Current.idl
o src/idl/misc/PortableServer.idl
o src/idl/misc/DynamicAny.idl
Regards,
Thomas
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]