[coyotos-dev] Capidl header generation bug?
Nathaniel W Filardo
nwf at cs.jhu.edu
Fri Nov 2 15:33:46 EDT 2007
Building IoStream.h from IoStream.idl seems to produce a buggy header file,
with unterminated #ifndef directives. The tail of the .h file reads :
/* Method coyotos_IoStream_write is client-only */
#ifndef __ASSEMBLER__
#ifndef __KERNEL__
typedef union {
struct {
/* ... [snippy snip snip; no cpp directives here] ... */
extern bool
coyotos_IoStream_write(caploc_t _invCap, coyotos_IoStream_chString *s,
uint32_t *_retVal)
;
#endif /* __ASSEMBLER__ */
/* END Interface coyotos.IoStream */
#endif /* __coyotos_IoStream_h__ */
I believe the correct fix to capidl is:
--- a/src/ccs/capidl/backend/o_c_hdr.cxx Fri Nov 02 13:40:39 2007 -0400
+++ b/src/ccs/capidl/backend/o_c_hdr.cxx Fri Nov 02 15:28:35 2007 -0400
@@ -1674,11 +1674,11 @@ emit_client_stub(GCPtr<Symbol> s, INOstr
out.less();
out << "}\n";
- {
- size_t indent = out.indent_for_macro();
- out << "#endif /* !__KERNEL__ */\n";
- out.indent(indent);
- }
+ }
+ {
+ size_t indent = out.indent_for_macro();
+ out << "#endif /* !__KERNEL__ */\n";
+ out.indent(indent);
}
}
Apologies if that is in fact an error. I don't have any consumers of the
interface building yet.
--nwf;
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 185 bytes
Desc: not available
Url : http://www.coyotos.org/pipermail/coyotos-dev/attachments/20071102/cf015764/attachment.bin
More information about the coyotos-dev
mailing list