Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add user-extensible bounds checks to NEWS. #17801

Merged
merged 2 commits into from
Aug 4, 2016
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 6 additions & 1 deletion NEWS.md
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,10 @@ New language features
operator names like `Base.≤` should now use `Base.:≤` (prefixed by `@compat`
if you need 0.4 compatibility via the `Compat` package).

* User-extensible bounds check elimination is now possible with the new
`@boundscheck` macro ([#14474]). This macro marks bounds checking code blocks,
which the compiler may remove when encountered inside an `@inbounds` call.

Experimental language features
------------------------------

Expand Down Expand Up @@ -401,7 +405,7 @@ Deprecated or removed
provides a `@functorize` macro.

* `bitunpack(B)` and `bitpack(A)` have been deprecated in favor of
Array(B)` and `BitArray(A)`, respectively ([#16010]).
`Array(B)` and `BitArray(A)`, respectively ([#16010]).

* `xdump` is removed, and `dump` now simply shows the full representation of a value.
`dump` should not be overloaded, since it is for examining concrete structure ([#4163]).
Expand Down Expand Up @@ -521,6 +525,7 @@ Language tooling improvements
[#14424]: https://github.com/JuliaLang/julia/issues/14424
[#14458]: https://github.com/JuliaLang/julia/issues/14458
[#14469]: https://github.com/JuliaLang/julia/issues/14469
[#14474]: https://github.com/JuliaLang/julia/issues/14474
[#14519]: https://github.com/JuliaLang/julia/issues/14519
[#14608]: https://github.com/JuliaLang/julia/issues/14608
[#14623]: https://github.com/JuliaLang/julia/issues/14623
Expand Down
2 changes: 1 addition & 1 deletion base/promotion.jl
Original file line number Diff line number Diff line change
Expand Up @@ -218,7 +218,7 @@ min(x::Real, y::Real) = min(promote(x,y)...)
minmax(x::Real, y::Real) = minmax(promote(x, y)...)

# "Promotion" that takes a function into account. These are meant to be
# used mainly by broadcast methods, so it is adviced against overriding them
# used mainly by broadcast methods, so it is advised against overriding them
if isdefined(Core, :Inference)
function _promote_op(op, T::Type)
G = Tuple{Generator{Tuple{T},typeof(op)}}
Expand Down
1 change: 0 additions & 1 deletion doc/devdocs/julia.rst
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,6 @@
sysimg
llvm
stdio
promote-op
boundscheck
locks
offset-arrays
4 changes: 2 additions & 2 deletions doc/manual/conversion-and-promotion.rst
Original file line number Diff line number Diff line change
Expand Up @@ -274,8 +274,8 @@ the catch-all method definitions given in
*(x::Number, y::Number) = *(promote(x,y)...)
/(x::Number, y::Number) = /(promote(x,y)...)

In certain cases, the result type also depends on the operator; how to
handle such scenarios is described :ref:`elsewhere <devdocs-promote-op>`.
In certain cases, the result type also depends on the operator;
such scenarios are handled by the ``promote_op`` function.

These method definitions say that in the absence of more specific rules
for adding, subtracting, multiplying and dividing pairs of numeric
Expand Down