| Commit message (Collapse) | Author | Age |
... | |
|
|
|
|
| |
slice2java. Using global metadata to define packaging in slice2java,
slice2freezej.
|
|
|
|
|
|
|
|
|
| |
- Removed generic stream interface Ice::Stream and ice_marshal functions.
- Removed XML stream implementation and related test.
- Removed XML transformer and related test.
- Removed slice2xsd.
- Added C++ wrapper for the expat XML parser in IceXML::Parser.
- Removed XML encoding from Freeze.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(Zero-length sequence containing class elements caused an crash.)
:Ice::Object). Obviously, this would cause an assertion failure or a
{{{ClassCastException}}}. The solution is simply to force the down-cast
in the generated patch function and to check whether the cast failed:
if so, the class was sliced too much and we throw a
{{{NoObjectFactoryException}}} as we should. (For Java, the exception
is thrown from {{{BasicStream.readObject}}}, after catching a
{{{ClassCastException}}}. For C++, the exception is thrown directly
from the generated patch function.)
:Ice::Object}}} and {{{::Printer}}}.
Updated the code generator to correctly initialize the {{{type}}} member of
a {{{NoObjectFactoryException}}} with the type ID of the type that
wasn't found. (Unfortunately, this involved modifying {{{Parser.h}}},
so you will have to rebuild both ice and icej.)
Added code generation for custom sequence types for icej. Generated code
compiles and looks OK, but I haven't written tests yet, so there may
still be a latent bug in this.
|
|
|
|
|
|
|
|
| |
- Fixed code generation bug for dictionaries with a key type not derived
from Object.
- Added tests for dictionary slicing.
- Restructured slicing tests to use more intuitive file names and better
directory structure.
|
|
|
|
|
|
|
|
|
| |
- Added more support for Java slicing.
- Changed config/Make.rules: "make depend" was calling slice2cpp with
ICECPPFLAGS, not SLICE2CPPFLAGS. This meant that "make depend" was
invoking slice2cpp with options that were potentially different from
those passed for normal compilation of slice files, which could lead to
inconsistencies.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
unscoped
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Added code generation for Java constants to slice2java.
Added missing keyword (strictfp) to lists of keywords that need escaping
for Java.
Fixed bug in Java code generator: if a type name had a prefix in common
with the name of its enclosing scope, the scope mangling code stripped
off too much of the scope. For example:
enum color { red }; const color c = red;
This resulted in the generated type name being "olor" instead of "color"
because the constant starts with the same letter as the name of the
type.
Fixed bug in the keyword escape mechanism -- keywords embedded in scoped
names were not escaped.
Keywords escaping for both Java and C++ still has bugs. I wrote two Slice
torture files full of keywords. Neither the generated C++ code nor the
generated Java code work for those files yet. Need to look at this...
|
|
|
|
|
|
| |
keywords with a "_cpp_" prefix.
Changed Java code generator to use binary_search() instead of the
hand-coded binary search.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|