orbitcpp idl backend & --onlytop



hi all, 
	i'm trying to use the onlytop flag of orbit-idl-2. i believe
the semantics of this flag are to suppress the declarations for
#include'd idl files and implicitly including the headers which are
assumed to already exist. this seems to work fine for the c backend,
but fails for orbit-cpp

for example: 

/*-----foo.idl-----------------------*/

module foo {
 
  interface bar {
     
  };
};
/*-----B.idl------------------------*/
#include "foo.idl"
 
 
module B {
  interface C {
    ::foo::bar get_foo();
  };
 
};
/*----------------------------------*/
and then trying to compile it (first normally) (orbitcpp CVS):

orbit-idl-2 -l cpp B.idl
orbit-idl-2 2.6.0 compiling
  mode, show preprocessor errors, passes: stubs skels common headers skel_impl
imodule
 
orbit-idl-2 --onlytop -l cpp B.idl
orbit-idl-2 2.6.0 compiling
  mode, show preprocessor errors, passes: stubs skels common headers skel_impl
imodule
 
foo.idl:4: unknown identifier ::foo::bar

and finally with the C backend

orbit-idl-2 --onlytop  B.idl
orbit-idl-2 2.6.0 compiling
  mode, show preprocessor errors, passes: stubs skels common headers skel_impl
imodule
-------------------------------


	it appears that although the backend does not get the parse
tree of the included file, libIDL does know about it and cross checks
references to it. it's unclear though how much information libidl
actually keeps around to it. the docs seem to imply it keeps
namespace information around for type lookup.
	is it the case that the orbitcpp backend keeps it's own type
information?

	thanks, 
	rob



----
Robert Melby
Georgia Institute of Technology, Atlanta Georgia, 30332
uucp:     ...!{decvax,hplabs,ncar,purdue,rutgers}!gatech!prism!gt4255a
Internet: async cc gatech edu



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]