aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2011-10-17Make epp search directory of current file first when including another fileRichard Carlsson
The expected behaviour of a C-style preprocessor (such as Erlang's epp) is to allow a header file to include another header file in the same directory even though that directory is not explicitly in the include path, and even if the actual include path might reference another directory containing a file with the same name. For example, if src/foo.erl explicitly includes "../include/foo.hrl", then foo.hrl should be able to include "bar.hrl" in that same directory even though "../include" might not be in the search path, and even if another file named bar.hrl could be found using the search path it should not override the one in the same directory as foo.hrl. In Erlang, the most common situation is that a user of an installed application includes a main public header file using include_lib ("appname/include/foo.hrl") and that file includes a secondary header file "bar.hrl". However, if it does this using include_lib, it causes a bootstrapping problem - in the build environment for the application itself, the application is not necessarily found by name. On the other hand, if foo.hrl uses a plain include, then bar.hrl might be found when the application is built (if explicit paths are set in the makefils) but not later on when a user includes the main header file of the installed application via include_lib. By making -include always look in the directory of the current file before it uses the search path, this problem is remedied, and include directives behave in a more intuitive way. This completes a partial fix in R11 that only worked for include_lib().
2011-10-17Use secondary expansion for src subdirectory rulesAnders Svensson
Makes for a quieter rule with no recursion.
2011-10-17One makefile for src build instead of recursionAnders Svensson
Simpler, no duplication of similar makefiles and makes for better dependencies. (Aka, recursive make considered harmful.)
2011-10-17Remove app dependency on compiler to avoid forced recompilationAnders Svensson
2011-10-17Move diameter_exprecs to compiler directoryAnders Svensson
2011-10-17Add diameter_make as compilation interfaceAnders Svensson
As a module-based alternative to the escript diameterc.
2011-10-17Update documentationAnders Svensson
2011-10-17Don't require -i directory to existAnders Svensson
2011-10-17Allow @inherits to be set/cleared with diametercAnders Svensson
This is to enable dictionaries compiled with --name/--prefix to be inherited using --inherits.
2011-10-17Allow @name/@prefix to be set with diametercAnders Svensson
2011-10-17Dependency fixAnders Svensson
Has to follow the release_targets include for make not to think that a misspelled dictionary is up to date just because the exprecs dependency is.
2011-10-17Move dictionaries into own directory and renameAnders Svensson
Generated files are unchanged but the separation will be especially pleasant when more dictionary files are added as examples. It is still only the rfc3588 and relay dictionaries that are known to the diameter implementation.
2011-10-17Whitespace fixesAnders Svensson
2011-10-17@result_code -> @define in dictionary filesAnders Svensson
The section simply results in generated macros and has nothing specifically to do with result codes. It's still not documented, and neither are the macros generated from @enum, since the generated names are typically so long as to be impractical/unreadable in source. Better to use numeric values with a comment or define your own shorter macros as the need arises.
2011-10-17Merge branch 'anders/diameter/testsuites/OTP-9620'Anders Svensson
* anders/diameter/testsuites/OTP-9620: Add failover suite Use util to simplify connection establishment in suites Move certificate generation into own testcase Add beam target to makefile Add util functions for managing connections Use tcp/sctp port resolution from testsuites
2011-10-17Merge branch 'anders/diameter/port_resolution/OTP-9623'Anders Svensson
* anders/diameter/port_resolution/OTP-9623: Register tcp listener before transport start return Add port resolution interface to transport modules
2011-10-17Merge branch 'hb/stdlib/dets_repair/OTP-9607'Hans Bolinder
* hb/stdlib/dets_repair/OTP-9607: Fix a bug in Dets concerning repair of almost full tables
2011-10-17Fix a bug in Dets concerning repair of almost full tablesHans Bolinder
A Dets table with sufficiently large buckets could not always be repaired. (Reported by Gordon Guthrie.) The format of Dets files has been modified. When downgrading tables created with the new system will be repaired. Otherwise the modification should not be noticeable.
2011-10-17Merge branch 'hb/doc_fixes/OTP-9616'Hans Bolinder
* hb/doc_fixes/OTP-9616: Correct the docs
2011-10-17Merge branch 'hb/erl_docgen/man_fixes/OTP-9614'Hans Bolinder
* hb/erl_docgen/man_fixes/OTP-9614: Fix bugs in the generation of manpages
2011-10-17Correct the docsHans Bolinder
2011-10-17Fix bugs in the generation of manpagesHans Bolinder
The indentation of the <d> tag has been corrected, as has the corresponding tag used for Erlang specs. The contents of the <v> was not properly processed.
2011-10-13Allow noncharacter code points in unicode encoding and decodingBjörn Gustavsson
The two noncharacter code points 16#FFFE and 16#FFFF were not allowed to be encoded or decoded using the unicode module or bit syntax. That causes an inconsistency, since the noncharacters 16#FDD0 to 16#FDEF could be encoded/decoded. There is two ways to fix that inconsistency. We have chosen to allow 16#FFFE and 16#FFFF to be encoded and decoded, because the noncharacters could be useful internally within an application and it will make encoding and decoding slightly faster. Reported-by: Alisdair Sullivan
2011-10-13asn1: Fix typo that caused failure of 'make release' on WindowsBjörn Gustavsson
2011-10-13make_preload: Don't output a C comment start inside a commentBjörn Gustavsson
We already avoid outputting a comment terminator ("*/") inside a comment to avoid causing a syntax error. Also avoid outputting the start of a comment ("/*") to avoid causing a compiler warning. Noticed-by: Tuncer Ayaz
2011-10-13Merge branch 'hb/stdlib/dets_repair/OTP-9622'Hans Bolinder
* hb/stdlib/dets_repair/OTP-9622: Fix a minor bug in Dets
2011-10-13Merge branch 'ia/ssl-peername-one-should-not-be-removed'Ingela Anderton Andin
* ia/ssl-peername-one-should-not-be-removed: Put back ssl:peercert/1
2011-10-12Merge branch 'lars/ic/fix-match-bug/OTP-9630' into maint-r14Erlang/OTP
* lars/ic/fix-match-bug/OTP-9630: Fix match bug
2011-10-12Fix match bugLars Thorsen
Incorrect use of ets:match changed to ets:match_object.
2011-10-12Merge branch 'bjorn/erts/beam-loader-fixes'Björn Gustavsson
* bjorn/erts/beam-loader-fixes: Print transformtions sorted on the name of the first instruction Share code for call of predicate and transformation functions Simplify transformations of gc_bif[123] instructions Refactor 'too_old_compiler' handling Introduce 'try_me_else_fail' Combine 'store_var' with 'next_arg' Merge 'next_instr' and 'is_op' into 'next_instr' Merge 'new_instr' and 'store_op' into 'new_instr' Combine a 'call' instruction with the following 'end' instruction Remove some unnecessary type constraints in transformations Get rid of redundant 'try_me_else' and 'fail' instructions Add some more information in instruction comments In transformations, don't store variables that are never used Remove redundant 'next_arg' before 'next_instr' Generalize and rename is_set_var_instr() to is_instr() Remove too_old_compiler handling for very old instruction variants Remove the special instructions for the hybrid heap emulator Remove optimization of 'move R R'
2011-10-12corba applications: Fix broken 'make clean'Lars Thorsen
The IDL-GENERATED files must be removed too; otherwise the target files will not be made the next time 'make' is invoked.
2011-10-11Do small optimisation on platforms with 32 bit EtermLukas Larsson
On 32 bit we know that a comparison with a lossfull double and a short will always give the float is being superior. So therefore we only have to check the sign on the double.
2011-10-11Add tests for equality checkingLukas Larsson
Test for checking equality on all float exponents Test in equality for all comparison tests
2011-10-11Optimize comparison of huge floats and smaller bignumsLukas Larsson
2011-10-11Add tests for comparing large floats and small bignumsLukas Larsson
2011-10-11Cleanup double_to_bignum conversion codeLukas Larsson
2011-10-11Update size of tmp cmp bignum bufferLukas Larsson
This is needed for use on 32 bit with very large floats.
2011-10-11Expand tests for float and number comparisonLukas Larsson
2011-10-11Update heauristic to work on halfwordLukas Larsson
2011-10-11Add heauristics bignum vs float checksLukas Larsson
These tests are useful when the difference between the bignum and float is larger than one bignum segment.
2011-10-11Optimise bugnum and small comparisonLukas Larsson
As it is possible to assume that bignums are bigger than smalls, we can just check the sign of the bignum.
2011-10-11Add float vs integer comparison testsLukas Larsson
2011-10-11Update integer and floating point number comparisonsLukas Larsson
For floating point values which are greater than 9007199254740990.0 or smaller than -9007199254740990.0, the floating point numbers are now converted to integers during comparison with an integer. This makes number comparisons transitive for large floating point numbers.
2011-10-11Merge branch 'bjorn/some-configure-clean-ups'Björn Gustavsson
* bjorn/some-configure-clean-ups: erts/configure.in: Remove test for reversed setvbuf() arguments erts/configure.in: Remove broken support for System V erts/configure.in: Don't check for the presence of mach-o/dyld.h erts/configure.in: Remove useless --disable-fixalloc option
2011-10-11Print transformtions sorted on the name of the first instructionBjörn Gustavsson
2011-10-11Share code for call of predicate and transformation functionsBjörn Gustavsson
2011-10-11Simplify transformations of gc_bif[123] instructionsBjörn Gustavsson
Each gc_bif[123] instruction must have both a transformation in ops.tab and special code in gen_guard_bif[123](). Rewrite it to do most of the work in gen_guard_bif[123]().
2011-10-11Refactor 'too_old_compiler' handlingBjörn Gustavsson
In the handling of generic instructions, we used to always test whether the instruction was 'too_old_compiler' and abort loading with a special error message. Refactor the code so that we only do test if we an error has occurred. That will allow us to make the test more expensive in the future, allowing us to customize error messages for certain opcode without any cost in the successful case.
2011-10-11Introduce 'try_me_else_fail'Björn Gustavsson
2011-10-11Combine 'store_var' with 'next_arg'Björn Gustavsson
'store_var' is always followed by 'next_arg'.