Internal changes
Own Id: OTP-13551
Change license text from Erlang Public License to Apache Public License v2
Own Id: OTP-12845
Fix compiler warnings reported by LLVM
Own Id: OTP-12138
Added Latin-1 code directive in the generated files to keep old behaviour. Updated IC so it can handle Unicode characters in the path.
Own Id: OTP-11783
Fix two small silent rules omissions. Thanks to Anthony Ramine.
Own Id: OTP-11351
Silence warnings (Thanks to Anthony Ramine)
Own Id: OTP-11517
Header and library files from ic and erl_interface are now installed into usr/{include,lib}. Note that these directories are unversioned, so the latest installed version will be the one in the directory.
Own Id: OTP-11284
Fixed some compilation warnings on miscellaneous platforms. Thanks to Anthony Ramine.
Own Id: OTP-11086
Revert the structs
Own Id: OTP-10885 Aux Id: seq12256
Misc build updates
Own Id: OTP-10784
Adapt ic for changes in erl_interface and jinterface due to utf8 atom support. This change makes ic dependent on erl_interface-3.7.10 (R16) or later in order to build.
Own Id: OTP-10785
Fix bug where the ic pre-processor would ignore whitespace quoting.
Own Id: OTP-10109
A bug regarding spaces in C function prototypes has been fixed. (Thanks to Richard O'Keefe.)
Own Id: OTP-10138
Add generation of Erlang callback functions to generated Erlang source code to avoid compiler warnings.
Own Id: OTP-9998
Erlang/OTP can now be built using parallel make if you
limit the number of jobs, for instance using '
Own Id: OTP-9451
Incorrect use of ets:match changed to ets:match_object.
Own Id: OTP-9630
Reduced compile overhead (Thanks to Haitao Li).
Own Id: OTP-9460
Partial support for recursive structs and unions. Only available for the erl_corba backend and requires that Light IFR is used. I.e. the IC option {light_ifr, true} and that Orber is configured in such a way that Light IFR is activated. Recursive TypeCode is currently not supported.
Own Id: OTP-8868 Aux Id: seq11633
The documentation can now be built and installed without Java.
Own Id: OTP-8639 Aux Id:
Removed superfluous VT in the documentation.
Own id: OTP-8353 Aux Id:
The option c_timeout was not correctly documented.
Own id: OTP-8307 Aux Id: seq11390
Removed superfluous backslash in the documentation.
Own id: OTP-8354 Aux Id:
The documentation EIX file was not generated.
Own id: OTP-8355 Aux Id:
The documentation is now built with open source tools (xsltproc and fop) that exists on most platforms. One visible change is that the frames are removed.
Own Id: OTP-8201 Aux Id:
The 64-bit version of libic was not compiled with the -fPIC flag.
Own id: OTP-8088
The function print_erlang_binary (oe_ei_code_erlang_binary.c) updated to avoid compiler warning.
Own id: OTP-7982
Updated file headers.
Own id: OTP-7837
Documentation source included in open source releases.
Own id: OTP-7595
Insufficient buffer allocated when passing wide strings using the C backend on a 64-bit architecture.
Own Id: OTP-7313 Aux Id:
Updated file headers.
Own id: OTP-7011
IC no longer use the obsolete function file:rawopen/2.
Own id: OTP-7182
Added links to classes inherited from Jinterface in the User's Guide.
Own Id: OTP-6965 Aux Id:
If an inherited function name begun with a capital letter the generated stub/skeleton oe_tc/1 function was incorrect.
Own Id: OTP-6855 Aux Id:
The documentation source has been converted from SGML to XML.
Own Id: OTP-6754 Aux Id:
Minor Makefile changes.
Own Id: OTP-6701 Aux Id:
Dead code was deleted from the following modules: ic_cclient, ic_code, ic_cserver, ic_erlbe, ic_java_type, ic_noc, ic_plainbe, ic_pp, ic_pragma, icscan, icstruct, ictype, icunion.
Changed code generation to avoid warnings such as unused variables.
Own Id: OTP-5930 Aux Id:
The FD_SETSIZE limit has been increased to 2048 for VxWorks/PPC603.
Own Id: OTP-5395 Aux Id: seq9751
In C back-ends, the compiler crashed when generating C code for error reports when a scoped name was used as a type in a union.
Own Id: OTP-5375 Aux Id: seq9740
In C back-ends, when decoding a sequence of "small" integers, which from Erlang is sent as a string (i.e. each element between 0 and 255), each string element was considered to be of signed character type. Each such element is now correctly treated as an unsigned character type.
Own Id: OTP-5205 Aux Id: seq9241
A new compiler option
Own Id: OTP-4977
The size of modules, used then registering data in the IFR DB (e.g., oe_MyModule:oe_register()), can be minimized if the compile option light_ifr is used and Orber is configured to use Light IFR. Requires that orber-3.5.1, or later, is used.
Own Id: OTP-5036
The compile option
Own Id: OTP-5049
Send and receive functions with timeouts have been added to the C back-ends for the standard protocol (i.e. Erlang distribution + gen_server protocol).
Accordingly a new compiler option
A user that want to implement its own protocols with function timeouts has to implement the following functions.
For C clients the functions
For C servers no additional functions have to be
implemented, but a clone of the
Own Id: OTP-4972
The C back-ends has been opened up, so that a user can
define his own protocol, differing from the Erlang
distribution + gen_server protocol.
For C clients it means to replace the library functions
The new compiler option
Own Id: OTP-4834
In generated code for the C server back-end, the naming scope was in error for prototypes in C header files for interfaces inheriting base interfaces.
Own Id: OTP-4881
IDL long long and unsigned long long could not be used in a struct for the Java backend.
All unsigned integer types for the Java backend had broken marshalling for large values.
Own Id: OTP-4763
A scoping problem (IC could not find typedefs contained inherited interfaces) in the C-backend solved.
Own Id: OTP-4758
The CORBA stub/skeleton-files generated by IC have been improved, i.e., depending on the IDL-files, reduced the size of the erl- and beam-files and decreased dependencies off Orber's Interface Repository. It is necessary to re-compile all IDL-files and use COS-applications, including Orber, compiled with IC-4.2.
Own Id: OTP-4576