Age | Commit message (Collapse) | Author | Files | Lines |
|
Changelog:
Changes from 4.1.3 to 4.1.4
---------------------------
1. Updated to GNU autoconf 2.69, automake 1.15, gettext 0.19.7,
texinfo 6.1, texinfo.tex 2016-02-05.07, libtool 2.4.6.
2. z/OS support updated.
3. At the beginning of each statement, the debugger now checks and
reports watchpoints that have fired before checking for breakpoints.
This gives more natural behavior to the user.
4. The "exit" command has been added to the debugger as an alias
for "quit".
5. AIX 7.1 should pass the test suite now. Similar for Minix.
6. VMS support has been updated.
7. The profiler / pretty-printer now chains else-if statements instead
of causing cascading elses.
8. The return value of system() has been enhanced to convey more information.
See the doc.
9. Attempting to write to the "to" end of a two-way pipe that has been
closed is now a fatal error. Similarly, so is reading from the "from"
end that has been closed.
10. MinGW support has been updated.
11. The -d option now allows -d- to print to standard output.
12. Error messages for --help and in other instances should now get
translated correctly.
13. A new environment variable GAWK_LOCALE_DIR may be set to locate the .mo
file for gawk itself.
14. The DJGPP port is now officially deprecated.
15. A number of bugs have been fixed. See the ChangeLog.
|
|
|
|
|
|
this to build for NetBSD/powerpc:
* need a cast in one place (in the renamed patch)
* an overcautious assert() is incompatible with top/down VM layout in NetBSD
This still doesn't work on NetBSD/powerpc, though, and I ran out of time.
The build produces a mono-boehm.core file the first time through the build
(for some reason not the subsequent attempts, sigh!), and I have problems
reconstructing the CLI to run the mono-boehm executable under gdb, and the
core file says it got a segv in opendir() which must be nonsensical.
|
|
|
|
|
|
while I didn't complete the build, it is likely necessary, as pkgsrc llvm
is 3.9 and doesn't match this test.
|
|
This is a special release that contains 0 commits. While promoting
additional platforms for v6.9.3 after the release, the tarballs on the
release server were overwritten and now have different shasums. In order
to remove any ambiguity around the release we have opted to do a semver
patch release with no changes.
|
|
This is a special release that contains 0 commits. While promoting
additional platforms for v4.7.1 after the release, the tarballs on
the release server were overwritten and now have different shasums.
In order to remove any ambiguity around the release we have opted
to do a semver patch release with no changes.
|
|
Bump py-curses.
|
|
|
|
|
|
|
|
The LLVMContext gains a new runtime check (see LLVMContext::discardValueNames()) that can be set to discard Value names (other than GlobalValue). This is intended to be used in release builds by clients that are interested in saving CPU/memory as much as possible.
There is no longer a “global context” available in LLVM, except for the C API.
The autoconf build system has been removed in favor of CMake. LLVM 3.9 requires CMake 3.4.3 or later to build. For information about using CMake please see the documentation on Building LLVM with CMake. For information about the CMake language there is also a CMake Primer document available.
C API functions LLVMParseBitcode, LLVMParseBitcodeInContext, LLVMGetBitcodeModuleInContext and LLVMGetBitcodeModule having been removed. LLVMGetTargetMachineData has been removed (use LLVMGetDataLayout instead).
The C API function LLVMLinkModules has been removed.
The C API function LLVMAddTargetData has been removed.
The C API function LLVMGetDataLayout is deprecated in favor of LLVMGetDataLayoutStr.
The C API enum LLVMAttribute and associated API is deprecated in favor of the new LLVMAttributeRef API. The deprecated functions are LLVMAddFunctionAttr, LLVMAddTargetDependentFunctionAttr, LLVMRemoveFunctionAttr, LLVMGetFunctionAttr, LLVMAddAttribute, LLVMRemoveAttribute, LLVMGetAttribute, LLVMAddInstrAttribute, LLVMRemoveInstrAttribute and LLVMSetInstrParamAlignment.
TargetFrameLowering::eliminateCallFramePseudoInstr now returns an iterator to the next instruction instead of void. Targets that previously did MBB.erase(I); return; now probably want return MBB.erase(I);.
SelectionDAGISel::Select now returns void. Out-of-tree targets will need to be updated to replace the argument node and remove any dead nodes in cases where they currently return an SDNode * from this interface.
Added the MemorySSA analysis, which hopes to replace MemoryDependenceAnalysis. It should provide higher-quality results than MemDep, and be algorithmically faster than MemDep. Currently, GVNHoist (which is off by default) makes use of MemorySSA.
The minimum density for lowering switches with jump tables has been reduced from 40% to 10% for functions which are not marked optsize (that is, compiled with -Os).
|
|
Notable changes
- buffer:
- Improve performance of Buffer allocation by ~11%.
- Improve performance of Buffer.from() by ~50%.
- events: Improve performance of EventEmitter.once() by ~27%.
- fs: Allow passing Uint8Array to fs methods where Buffers are supported.
- http: Improve performance of http server by ~7%.
- npm: Upgrade to v4.0.5
|
|
|
|
|
|
Notable Changes
- build: shared library support is now working for AIX builds
- repl: Passing options to the repl will no longer overwrite
defaults
- timers: Re canceling a cancelled timers will no longer throw
|
|
Notable Changes
- build: shared library support is now working for AIX builds
- deps:
- npm: upgrade npm to 3.10.10
- V8: Destructuring of arrow function arguments via computed property
no longer throws
- inspector: /json/version returns object, not an object wrapped
in an array
- module: using --debug-brk and --eval together now works as expected
- process: improve performance of nextTick up to 20%
- repl:
- the division operator will no longer be accidentally parsed as regex
- improved support for generator functions
- timers: Re canceling a cancelled timers will no longer throw
|
|
|
|
Notable changes
buffer:
- buffer.fill() now works properly for the UCS2 encoding on
Big-Endian machines.
cluster:
- disconnect() now returns a reference to the disconnected worker.
crypto:
- The built-in list of Well-Known CAs (Certificate Authorities) can
now be extended via a NODE_EXTRA_CA_CERTS environment variable.
http:
- Remove stale timeout listeners in order to prevent a memory leak
when using keep alive.
tls:
- Allow obvious key/passphrase combinations.
url:
- Including base argument in URL.originFor() to meet specification
compliance.
- Improve URLSearchParams to meet specification compliance.
|
|
|
|
Erlang/OTP 19.2 is the second service release for the 19 major release.
The service release contains mostly bug fixes and characteristics
improvements.
Some highlights for 19.2
* STDLIB: The new behaviour gen_statem has been improved with 3 new
features: the possibility to use old style non-proxy timeouts
for gen_statem:call/2,3, state entry code, and state
timeouts. These are backwards compatible. Minor code and
documentation improvements has been performed including a
borderline semantics correction of timeout zero handling.
* SSL: Experimental version of DTLS. It is runnable but not complete
and cannot be considered reliable for production usage. To use
DTLS add the option {protocol, dtls} to ssl:connect and ssl:listen.
* SSH: Extended the option silently_accept_hosts for ssh:connect to
make it possible for the client to check the SSH host key
fingerprint string. Se the reference manual for SSH.
* ~40 contributions since the previous service release OTP 19.1
You can find the README and the full listing of changes for this
service release at
http://www.erlang.org/download/otp_src_19.2.readme
|
|
|
|
WINDOW structure.
Include <term.h> when needed and rename lines and columns vars to avoid
conflicts.
Builds and works with NetBSD-8 curses, so use mk/curses.buildlink3.mk
and test for getsyx(3) in curses rather than indescriminately linking
to ncurses.
|
|
This matches tnn's change to lang/libLLVM. No PKGREVISION; no change
on !i386 and on i386 this did not build before.
|
|
|
|
|
|
HTML Documentation for Python 3.6
|
|
No changelog available.
|
|
|
|
|
|
Summary – Release highlights
New syntax features:
PEP 498, formatted string literals.
PEP 515, underscores in numeric literals.
PEP 526, syntax for variable annotations.
PEP 525, asynchronous generators.
PEP 530: asynchronous comprehensions.
New library modules:
secrets: PEP 506 – Adding A Secrets Module To The Standard Library.
CPython implementation improvements:
The dict type has been reimplemented to use a more compact representation based on a proposal by Raymond Hettinger and similar to the PyPy dict implementation. This resulted in dictionaries using 20% to 25% less memory when compared to Python 3.5.
Customization of class creation has been simplified with the new protocol.
The class attribute definition order is now preserved.
The order of elements in **kwargs now corresponds to the order in which keyword arguments were passed to the function.
DTrace and SystemTap probing support has been added.
The new PYTHONMALLOC environment variable can now be used to debug the interpreter memory allocation and access errors.
Significant improvements in the standard library:
The asyncio module has received new features, significant usability and performance improvements, and a fair amount of bug fixes. Starting with Python 3.6 the asyncio module is no longer provisional and its API is considered stable.
A new file system path protocol has been implemented to support path-like objects. All standard library functions operating on paths have been updated to work with the new protocol.
The datetime module has gained support for Local Time Disambiguation.
The typing module received a number of improvements and is no longer provisional.
The tracemalloc module has been significantly reworked and is now used to provide better output for ResourceWarning as well as provide better diagnostics for memory allocation errors. See the PYTHONMALLOC section for more information.
Security improvements:
The new secrets module has been added to simplify the generation of cryptographically strong pseudo-random numbers suitable for managing secrets such as account authentication, tokens, and similar.
On Linux, os.urandom() now blocks until the system urandom entropy pool is initialized to increase the security. See the PEP 524 for the rationale.
The hashlib and ssl modules now support OpenSSL 1.1.0.
The default settings and feature set of the ssl module have been improved.
The hashlib module received support for the BLAKE2, SHA-3 and SHAKE hash algorithms and the scrypt() key derivation function.
|
|
|
|
Changes from V8.6beta1 to V8.6
==============================
Kernel
- Fixed critical bug #5248 in VM long multiplication on 32-bit
architectures. Was there only since 8.6beta1, so no stable release impacted.
Other bug fixes in universes, type class shelving,...
Changes from V8.5 to V8.6beta1
==============================
Kernel
- A new, faster state-of-the-art universe constraint checker.
Specification language
- Giving implicit arguments explicitly to a constant with multiple
choices of implicit arguments does not break any more insertion of
further maximal implicit arguments.
- Ability to put any pattern in binders, prefixed by quote, e.g.
"fun '(a,b) => ...", "λ '(a,(b,c)), ...", "Definition foo '(x,y) := ...".
It expands into a "let 'pattern := ..."
Tactics
- Flag "Bracketing Last Introduction Pattern" is now on by default.
- Flag "Regular Subst Tactic" is now on by default: it respects the
initial order of hypothesis, it contracts cycles, it unfolds no
local definitions (common source of incompatibilities, fixable by
"Unset Regular Subst Tactic").
- New flag "Refolding Reduction", now disabled by default, which turns
on refolding of constants/fixpoints (as in cbn) during the reductions
done during type inference and tactic retyping. Can be extremely
expensive. When set off, this recovers the 8.4 behaviour of unification
and type inference. Potential source of incompatibility with 8.5 developments
(the option is set on in Compat/Coq85.v).
- New flag "Shrink Abstract" that minimalizes proofs generated by the abstract
tactical w.r.t. variables appearing in the body of the proof.
On by default and deprecated. Minor source of incompatibility
for code relying on the precise arguments of abstracted proofs.
- Serious bugs are fixed in tactic "double induction" (source of
incompatibilities as soon as the inductive types have dependencies in
the type of their constructors; "double induction" remains however
deprecated).
- In introduction patterns of the form (pat1,...,patn), n should match
the exact number of hypotheses introduced (except for local definitions
for which pattern can be omitted, as in regular pattern-matching).
- Tactic scopes in Ltac like constr: and ltac: now require parentheses around
their argument.
- Every generic argument type declares a tactic scope of the form "name:(...)"
where name is the name of the argument. This generalizes the constr: and ltac:
instances.
- When in strict mode (i.e. in a Ltac definition), if the "intro" tactic is
given a free identifier, it is not bound in subsequent tactics anymore.
In order to introduce a binding, use e.g. the "fresh" primitive instead
(potential source of incompatibilities).
- New tactics is_ind, is_const, is_proj, is_constructor for use in Ltac.
- New goal selectors. Sets of goals can be selected by listing integers
ranges. Example: "1,4-7,24: tac" focuses "tac" on goals 1,4,5,6,7,24.
- For uniformity with "destruct"/"induction" and for a more natural
behavior, "injection" can now work in place by activating option
"Structural Injection". In this case, hypotheses are also put in the
context in the natural left-to-right order and the hypothesis on
which injection applies is cleared.
- Tactic "contradiction" (hence "easy") now also solve goals with
hypotheses of the form "~True" or "t<>t" (possible source of
incompatibilities because of more successes in automation, but
generally a more intuitive strategy).
- Option "Injection On Proofs" was renamed "Keep Proof Equalities". When
enabled, injection and inversion do not drop equalities between objects
in Prop. Still disabled by default.
- New tactics "notypeclasses refine" and "simple notypeclasses refine" that
disallow typeclass resolution when typechecking their argument, for use
in typeclass hints.
- Integration of LtacProf, a profiler for Ltac.
- Reduction tactics now accept more fine-grained flags: iota is now a shorthand
for the new flags match, fix and cofix.
- The ssreflect subterm selection algorithm is now accessible to tactic writers
through the ssrmatching plugin.
- When used as an argument of an ltac function, "auto" without "with"
nor "using" clause now correctly uses only the core hint database by
default.
Hints
- Revised the syntax of [Hint Cut] to follow standard notation for regexps.
- Hint Mode now accepts "!" which means that the mode matches only if the
argument's head is not an evar (it goes under applications, casts, and
scrutinees of matches and projections).
- Hints can now take an optional user-given pattern, used only by
[typeclasses eauto] with the [Filtered Unification] option on.
Typeclasses
- Many new options and new engine based on the proof monad. The
[typeclasses eauto] tactic is now a multi-goal, multi-success tactic.
See reference manual for more information. It is planned to
replace auto and eauto in the following version. The 8.5 resolution
engine is still available to help solve compatibility issues.
Program
- The "Shrink Obligations" flag now applies to all obligations, not only
those solved by the automatic tactic.
- "Shrink Obligations" is on by default and deprecated. Minor source of
incompatibility for code relying on the precise arguments of
obligations.
Notations
- "Bind Scope" can once again bind "Funclass" and "Sortclass".
General infrastructure
- New configurable warning system which can be controlled with the vernacular
command "Set Warnings", or, under coqc/coqtop, with the flag "-w". In
particular, the default is now that warnings are printed by coqc.
- In asynchronous mode, Coq is now capable of recovering from errors and
continue processing the document.
Tools
- coqc accepts a -o option to specify the output file name
- coqtop accepts --print-version to print Coq and OCaml versions in
easy to parse format
- Setting [Printing Dependent Evars Line] can be unset to disable the
computation associated with printing the "dependent evars: " line in
-emacs mode
- Removed the -verbose-compat-notations flag and the corresponding Set
Verbose Compat vernacular, since these warnings can now be silenced or
turned into errors using "-w".
XML protocol
- message format has changed, see dev/doc/changes.txt for more details.
Many bug fixes, minor changes and documentation improvements are not mentioned
here.
Changes from V8.5pl2 to V8.5pl3
===============================
Critical bugfix
- #4876: Guard checker incompleteness when using primitive projections
Other bugfixes
- #4780: Induction with universe polymorphism on was creating ill-typed terms.
- #4673: regression in setoid_rewrite, unfolding let-ins for type unification.
- #4754: Regression in setoid_rewrite, allow postponed unification problems to remain.
- #4769: Anomaly with universe polymorphic schemes defined inside sections.
- #3886: Program: duplicate obligations of mutual fixpoints.
- #4994: Documentation typo.
- #5008: Use the "md5" command on OpenBSD.
- #5007: Do not assume the "TERM" environment variable is always set.
- #4606: Output a break before a list only if there was an empty line.
- #5001: metas not cleaned properly in clenv_refine_in.
- #2336: incorrect glob data for module symbols (bug #2336).
- #4832: Remove extraneous dot in error message.
- Anomaly in printing a unification error message.
- #4947: Options which take string arguments are not backwards compatible.
- #4156: micromega cache files are now hidden files.
- #4871: interrupting par:abstract kills coqtop.
- #5043: [Admitted] lemmas pick up section variables.
- Fix name of internal refine ("simple refine").
- #5062: probably a typo in Strict Proofs mode.
- #5065: Anomaly: Not a proof by induction.
- Restore native compiler optimizations, they were disabled since 8.5!
- #5077: failure on typing a fixpoint with evars in its type.
- Fix recursive notation bug.
- #5095: non relevant too strict test in let-in abstraction.
- Ensuring that the evar name is preserved by "rename".
- #4887: confusion between using and with in documentation of firstorder.
- Bug in subst with let-ins.
- #4762: eauto weaker than auto.
- Remove if_then_else (was buggy). Use tryif instead.
- #4970: confusion between special "{" and non special "{{" in notations.
- #4529: primitive projections unfolding.
- #4416: Incorrect "Error: Incorrect number of goals".
- #4863: abstract in typeclass hint fails.
- #5123: unshelve can impact typeclass resolution
- Fix a collision about the meta-variable ".." in recursive notations.
- Fix printing of info_auto.
- #3209: Not_found due to an occur-check cycle.
- #5097: status of evars refined by "clear" in ltac: closed wrt evars.
- #5150: Missing dependency of the test-suite subsystems in prerequisite.
- Fix a bug in error printing of unif constraints
- #3941: Do not stop propagation of signals when Coq is busy.
- #4822: Incorrect assertion in cbn.
- #3479 parsing of "{" and "}" when a keyword starts with "{" or "}".
- #5127: Memory corruption with the VM.
- #5102: bullets parsing broken by calls to parse_entry.
Various documentation improvements
Changes from V8.5pl1 to V8.5pl2
===============================
Critical bugfix
- Checksums of .vo files dependencies were not correctly checked.
- Unicode-to-ASCII translation was not injective, leading in a soundness bug in
the native compiler.
Other bugfixes
- #4097: more efficient occur-check in presence of primitive projections
- #4398: type_scope used consistently in "match goal".
- #4450: eauto does not work with polymorphic lemmas
- #4677: fix alpha-conversion in notations needing eta-expansion.
- Fully preserve initial order of hypotheses in "Regular Subst Tactic" mode.
- #4644: a regression in unification.
- #4725: Function (Error: Conversion test raised an anomaly) and Program
(Error: Cannot infer this placeholder of type)
- #4747: Problem building Coq 8.5pl1 with OCaml 4.03.0: Fatal warnings
- #4752: CoqIDE crash on files not ended by ".v".
- #4777: printing inefficiency with implicit arguments
- #4818: "Admitted" fails due to undefined universe anomaly after calling
"destruct"
- #4823: remote counter: avoid thread race on sockets
- #4841: -verbose flag changed semantics in 8.5, is much harder to use
- #4851: [nsatz] cannot handle duplicated hypotheses
- #4858: Anomaly: Uncaught exception Failure("hd"). Please report. in variant
of nsatz
- #4880: [nsatz_compute] generates invalid certificates if given redundant
hypotheses
- #4881: synchronizing "Declare Implicit Tactic" with backtrack.
- #4882: anomaly with Declare Implicit Tactic on hole of type with evars
- Fix use of "Declare Implicit Tactic" in refine.
triggered by CoqIDE
- #4069, #4718: congruence fails when universes are involved.
Universes
- Disallow silently dropping universe instances applied to variables
(forward compatible)
- Allow explicit universe instances on notations, when they can apply
to the head reference of their expansion.
Build infrastructure
- New update on how to find camlp5 binary and library at configure time.
|
|
github. Changes include:
* [24 Jul 16] Added compatibility with ocaml 4.04.0 and 4.04.1.
* [09 Sep 16] Added pretty print of type [< ... ] when ended with "> `ident".
* [24 Jul 16] Added compatibility with ocaml 4.03.1.
|
|
|
|
upstream changes except for compatibility with ocaml 4.04.
|
|
|
|
some patches that have been migrated upstream.
Changes (bug numbers removed so they don't trigger our system) include:
(Changes that can break existing programs are marked with a "*")
### Language features:
- Support GADT equations on non-local abstract types
(Jacques Garrigue)
- Local opening of modules in a pattern.
Syntax: "M.(p)", "M.[p]","M.[| p |]", "M.{p}"
(Florian Angeletti, Jacques Garrigue, review by Alain Frisch)
- local exception declarations "let exception ... in"
(Alain Frisch)
- Allow shortcut for extension on semicolons: ;%foo
(Jeremie Dimino)
- optimized representation for immutable records with a single
field, and concrete types with a single constructor with a single argument.
This is triggered with a [@@unboxed] attribute on the type definition.
Currently mutually recursive datatypes are not well supported, this
limitation should be lifted in the future (see M).
(Damien Doligez)
### Compiler user-interface and warnings:
* interpret all command-line options before compiling any
files, changes (improves) the semantics of repeated -o options or -o
combined with -c see the super-detailed commit message at
https://github.com/ocaml/ocaml/commit/da56cf6dfdc13c09905c2e07f1d4849c8346eec8
(whitequark)
- clarify the wording of Warning 38
(Unused exception or extension constructor)
(Gabriel Scherer)
* add colors when reporting errors generated by ppx rewriters.
Remove the `Location.errorf_prefixed` function which is no longer relevant
(Simon Cruanes, Jérémie Dimino)
- clarify the wording of Warning 8
(Non-exhaustivity warning for pattern matching)
(Florian Angeletti, review and report by Gabriel Scherer)
* Improve support for OCAMLPARAM: (i) do not use objects
files with -a, -pack, -shared; (ii) use "before" objects in the toplevel
(but not "after" objects); (iii) use -I dirs in the toplevel,
(iv) fix bug where -I dirs were ignored when using threads
(Marc Lasson, review by Damien Doligez and Alain Frisch)
- New -plugin option for ocamlc and ocamlopt, to dynamically extend
the compilers at runtime.
(Fabrice Le Fessant)
- Detect unused module declarations
(Alain Frisch)
- Add a settable Env.Persistent_signature.load function so
that cmi files can be loaded from other sources. This can be used to
create self-contained toplevels.
(Jérémie Dimino)
### Standard library:
- Provide `Sys.backend_type` so that user can write backend-specific
code in some cases (for example, code generator).
(Hongbo Zhang)
- implement Set.map
(Gabriel Scherer)
- Add Obj.reachable_words to compute the
"transitive" heap size of a value
(Alain Frisch, review by Mark Shinwell and Damien Doligez)
- Add a non-allocating function to recover the number of
allocated minor words.
(Pierre Chambart, review by Damien Doligez and Gabriel Scherer)
- String.split_on_char
(Alain Frisch)
- Filename.extension and Filename.remove_extension
(Alain Frisch, request by Edgar Aroutiounian, review by Daniel Bunzli
and Damien Doligez)
### Code generation and optimizations:
- Optimize Hashtbl by using in-place updates of its
internal bucket lists. All operations run in constant stack size
and are usually faster, except Hashtbl.copy which can be much
slower
(Alain Frisch)
* Optimize performance of record update:
no more performance cliff when { foo with t1 = ..; t2 = ...; ... }
hits 6 updated fields
(Olivier Nicole, review by Thomas Braibant and Pierre Chambart)
- Better unboxing strategy
(Alain Frisch, Pierre Chambart)
- Ocamlopt + flambda requires a lot of memory
to compile large array literal expressions
(Pierre Chambart, review by Mark Shinwell)
- Handle specialisation of recursive function that does
not always preserve the arguments
(Pierre Chambart, Mark Shinwell, report by Simon Cruanes)
- Obj.is_block is now an inlined OCaml function instead of a
C external. This should be faster.
(Demi Obenour)
- Optimize immutable float records
(Pierre Chambart, review by Mark Shinwell)
- Do not generate dummy code to force module linking
(Pierre Chambart, reviewed by Jacques Garrigue)
- Do not eliminate boxed int divisions by zero and
avoid checking twice if divisor is zero with flambda.
(Pierre Chambart, report by Jeremy Yallop)
- Optimize some constant string operations when the "-safe-string"
configure time option is enabled.
(Pierre Chambart)
- Load cross module information during a meet
(Pierre Chambart, report by Leo White, review by Mark Shinwell)
- Share a few more equal switch branches
(Pierre Chambart, review by Gabriel Scherer)
- Small improvements to type-based optimizations for array
and lazy
(Alain Frisch, review by Pierre Chambart)
- Prevent warning 59 from triggering on Lazy of constants
(Pierre Chambart, review by Leo White)
- Sort emitted functions according to source location
(Pierre Chambart, review by Mark Shinwell)
- Lack of type normalization lead to missing simple compilation for "lazy x"
(Alain Frisch)
### Runtime system:
- Allows to register finalisation function that are
called only when a value will never be reachable anymore. The
drawbacks compared to the existing one is that the finalisation
function is not called with the value as argument. These finalisers
are registered with `GC.finalise_last`
(François Bobot reviewed by Damien Doligez and Leo White)
- Do not perform compaction if the real overhead is less than expected
(Thomas Braibant)
### Tools:
- toplevel #show, follow chains of module aliases
(Gabriel Scherer, report by Daniel Bünzli, review by Thomas Refis)
- have ocamldep interpret -open arguments in left-to-right order
(Gabriel Scherer, report by Anton Bachin)
- ocamldoc, missing line breaks in type_*.html files
(Florian Angeletti)
- ocamldoc, improved support for inline records
(Florian Angeletti)
- ensure "ocamllex -ml" works with -safe-string
(Hongbo Zhang)
- ocamldoc, add viewport metadata to generated html pages
(Florian Angeletti, request by Daniel Bünzli)
- Make the output of ocamldep more stable
(Alain Frisch)
- empty documentation comments
(Florian Angeletti)
- Add the -no-version option to the toplevel
(Sébastien Hinderer)
- Add a --strict option to ocamlyacc treat conflicts as errors
(this option is now used for the compiler's parser)
(Jeremy Yallop)
- make ocamldoc use -open arguments
(Florian Angeletti)
- ocamldoc, fix order of extensible variant constructors
(Florian Angeletti)
### Debugging and profiling:
- Spacetime, a new memory profiler (Mark Shinwell, Leo White)
### Runtime system:
- Add a new primitive caml_alloc_float_array to allocate an
array of floats
(Thomas Braibant)
### Manual and documentation:
- document the existence of OCAMLPARAM and
ocaml_compiler_internal_params
(Damien Doligez, reports by Wim Lewis and Gabriel Scherer)
- warn users against using WinZip to unpack the source archive
(Damien Doligez, report by Shayne Fletcher)
- clarification to the wording and documentation
of Warning 52 (fragile constant pattern)
(Gabriel Scherer, William, Adrien Nader, Jacques Garrigue)
- Restore 4.02.3 behaviour of Unix.fstat, if the
file descriptor doesn't wrap a regular file (win32unix only)
(Andreas Hauptmann, review by David Allsopp)
- flatten : Avoid confusion
(Damien Doligez, report by user 'tormen')
- Gc.finalise and lazy values
(Jeremy Yallop)
- Document that [Store_field] must not be used to populate
arrays of values declared using [CAMLlocalN] (Mark Shinwell)
### Build system:
- Compiler developers: Adding new primitives to the
standard runtime doesn't require anymore to run `make bootstrap`
(François Bobot)
- Fix compilation using old Microsoft C Compilers not
supporting secure CRT functions (SDK Visual Studio 2005 compiler and
earlier) and standard 64-bit integer literals (Visual Studio .NET
2002 and earlier)
(David Allsopp)
- More sharing between Unix and Windows makefiles
(whitequark, review by Alain Frisch)
* Installed `ocamlc`, `ocamlopt`, and `ocamllex` are
now the native-code versions of the tools, if those versions were
built.
(Demi Obenour)
- "./configure -safe-string" to get a system where
"-unsafe-string" is not allowed, thus giving stronger non-local
guarantees about immutability of strings
(Alain Frisch, review by Hezekiah M. Carty)
### Bug fixes:
* Missed Type-error leads to a segfault upon record access.
(Jacques Garrigue, extra report by Stephen Dolan)
Proper fix required a more restrictive approach to recursive types:
mutually recursive types are seen as abstract types (i.e. non-contractive)
when checking the well-foundedness of the recursion.
* Nominal types and scope escaping.
Revert to strict scope for non-generalizable type variables, cf. Mantis.
Note that this is actually stricter than the behavior before 4.03,
cf. , meaning that you may sometimes need to add type annotations
to explicitly instantiate non-generalizable type variables.
(Jacques Garrigue, following discussion with Jeremy Yallop,
Nicolas Ojeda Bar and Alain Frisch)
- Aliased arguments ignored for equality of module types
(Jacques Garrigue, report by Leo White)
- compiler forcing aliases it shouldn't while reporting type errors
(Jacques Garrigue, report and suggestion by sliquister)
- document that Unix.SOCK_SEQPACKET is not really usable.
- uncaught exception on invalid lexer directive
(Gabriel Scherer, report by KC Sivaramakrishnan using afl-fuzz)
- revert a 4.03 change of behavior on (Unix.sleep 0.),
it now calls (nano)sleep for 0 seconds as in (< 4.03) versions.
(Hannes Mehnert, review by Damien Doligez)
- GADT + subtyping compile time crash
(Jacques Garrigue, report by Nicolas Ojeda Bar)
- Segfault from conjunctive constraints in GADT
(Jacques Garrigue, report by Stephen Dolan)
- Support more than FD_SETSIZE sockets in Windows' emulation
of select
(David Scott, review by Alain Frisch)
* Prevent private inline records from being mutated
(Alain Frisch, report by Pierre Chambart)
- Bug in mcomp_fields leads to segfault
(Jacques Garrigue, report by Leo White)
- Relaxed value restriction broken with principal
(Jacques Garrigue, report by Leo White)
- -strict-sequence turns off Warning 21
(Jacques Garrigue, report by Valentin Gatien-Baron)
- remove access to OCaml heap inside blocking section in win32unix
(David Allsopp, report by Andreas Hauptmann)
- remove access to OCaml heap inside blocking in Unix.sleep on Windows
(David Allsopp)
- -principal causes loop in type checker when compiling
(Jacques Garrigue, report by Anil Madhavapeddy, analysis by Leo White)
- Missing exhaustivity check for extensible variant
(Jacques Garrigue, report by Elarnon *)
- Contractiveness check unsound with constraints
(Jacques Garrigue, report by Leo White)
- GADT constructors can be re-exposed with an incompatible type
(Jacques Garrigue, report by Alain Frisch)
- Unsoundness in GADT exhaustiveness with existential variables
(Jacques Garrigue, report by Stephen Dolan)
* Thread library: fixed [Thread.wait_signal] so that it
converts back the signal number returned by [sigwait] to an
OS-independent number
(Jérémie Dimino)
- (similar to ) ensure that register typing constraints are
respected at N-way join points in the control flow graph
(Mark Shinwell)
- Fix float_of_hex parser to correctly reject some invalid forms
(Bogdan Tătăroiu, review by Thomas Braibant and Alain Frisch)
- Fix maximum weak bucket size
(Nicolas Ojeda Bar, review by François Bobot)
- Allow more module aliases in strengthening (Leo White)
- Fix wrong code generation involving lazy values in Flambda
mode
(Mark Shinwell, review by Pierre Chambart and Alain Frisch)
- Fix infinite loop in flambda due to [@@specialise] annotations
- Building native runtime on Windows could fail when bootstrapping
FlexDLL if there was also a system-installed flexlink
(David Allsopp, report Michael Soegtrop)
- check for integer overflow in String.concat
(Jeremy Yallop,
review by Damien Doligez, Alain Frisch, Daniel Bünzli, Fabrice Le Fessant)
- check for integer overflow in Array.concat
(Jeremy Yallop)
- fix the Buffer.add_substring bounds check to handle overflow
(Jeremy Yallop)
- Fix [@@inline] with default parameters in flambda (Leo White)
- fix build on OpenIndiana
(Sergey Avseyev, review by Damien Doligez)
### Internal/compiler-libs changes:
- Improve, fix, and add test for parsing/pprintast.ml
(Runhang Li, David Sheets, Alain Frisch)
- make driver/pparse.ml functions type-safe
(Gabriel Scherer, Dmitrii Kosarev, review by Jérémie Dimino)
- Improve Texp_record constructor representation, and
propagate updated record type information
(Pierre Chambart, review by Alain Frisch)
- Graphics.close_graph crashes 64-bit Windows ports (re-implementation
of )
(David Allsopp)
- delay registration of docstring after the mapper is applied
(Hugo Heuzard, review by Leo White)
- don't attach (**/**) comments to any particular node
(Thomas Refis, review by Leo White)
|
|
Core and Builtins
-----------------
- Issue 28847: dumbdbm no longer writes the index file in when it is not
changed and supports reading read-only files.
- Issue 11145: Fixed miscellaneous issues with C-style formatting of types
with custom __oct__ and __hex__.
- Issue 24469: Fixed memory leak caused by int subclasses without overridden
tp_free (e.g. C-inherited Cython classes).
- Issue 19398: Extra slash no longer added to sys.path components in case of
empty compile-time PYTHONPATH components.
- Issue 21720: Improve exception message when the type of fromlist is unicode.
fromlist parameter of __import__() only accepts str in Python 2 and this
will help to identify the problem especially when the unicode_literals
future import is used.
- Issue 26906: Resolving special methods of uninitialized type now causes
implicit initialization of the type instead of a fail.
- Issue 18287: PyType_Ready() now checks that tp_name is not NULL.
Original patch by Niklas Koep.
- Issue 24098: Fixed possible crash when AST is changed in process of
compiling it.
- Issue 28350: String constants with null character no longer interned.
- Issue 27942: String constants now interned recursively in tuples and frozensets.
- Issue 15578: Correctly incref the parent module while importing.
- Issue 26307: The profile-opt build now applies PGO to the built-in modules.
- Issue 26020: set literal evaluation order did not match documented behaviour.
- Issue 27870: A left shift of zero by a large integer no longer attempts
to allocate large amounts of memory.
- Issue 25604: Fix a minor bug in integer true division; this bug could
potentially have caused off-by-one-ulp results on platforms with
unreliable ldexp implementations.
- Issue 27473: Fixed possible integer overflow in str, unicode and bytearray
concatenations and repetitions. Based on patch by Xiang Zhang.
- Issue 27507: Add integer overflow check in bytearray.extend(). Patch by
Xiang Zhang.
- Issue 27581: Don't rely on wrapping for overflow check in
PySequence_Tuple(). Patch by Xiang Zhang.
- Issue 23908: os functions, open() and the io.FileIO constructor now reject
unicode paths with embedded null character on Windows instead of silently
truncating them.
- Issue 27514: Make having too many statically nested blocks a SyntaxError
instead of SystemError.
|
|
This release is a bug-fix release, containing fixes for regressions in GCC
6.2 relative to previous releases of GCC.
An incomplete list of bugs fixed in GCC 6.3 is available here:
https://gcc.gnu.org/bugzilla/buglist.cgi?bug_status=RESOLVED&resolution=FIXED&target_milestone=6.3
|
|
GCC_REQD for these versions now resolves to gcc48 due to a previous commit.
Please file a bug report if you are having trouble with GCC 4.8.
|
|
* Fix PR pkg/51738 from Oshima-san
Changelog:
* Changes in opensource COBOL 1.5.1J
** Bug fixes
*** build error on Windows.
*** test failure caused by missing inline-function declarations on gcc5.
*** compiler warnings on v1.3 or later.
** Changes
*** update solution file in Visual Studio to 2015.
-----------------------------------------------------------------------
* Changes in opensource COBOL 1.5.0J
** New features
*** ADD new functions and features.
(1) Add a new function "C$CALLEDBY".
This gets the program name that called itself.
(2) Add a new function "C$LIST-DIRECTORY".
This gets the list of files in the target directory.
(3) Add a new feature "CANCEL ALL".
This cancel subprogram and all subprograms that callded by it.
|
|
|
|
It's just a warning during configure.
|
|
c++ compiler.
pass LANG+=c++ only once (from options.mk), doing it twice seems to confuse
the configure script.
now I can pass configure on NetBSD-6.
|
|
|
|
case.
should fix/help ubuntu builds.
|
|
code does, for glibc case.
should fix/help failing ubuntu builds
|