Release Notes for the Advance Toolchain 14.0-7
Features in 14.0-7
- The Advance Toolchain is a self contained toolchain which isn't reliant on the base system toolchain.
- Base toolchain packages:
- GNU Binutils - 2.35.2-3437a8bad8a4 online docs
- Expat XML Parser - 2.2.10-10e75ca59a2e online docs
- GCC (GNU Compiler Collection) - 10.4.1-2d1a2d671959 [C, C++ (g++), fortran, Go] online docs
- GNU Standard C++ Library v3 (Libstdc++-v3) - 10.4.1-2d1a2d671959 online docs
- GNU Libgomp - 10.4.1-2d1a2d671959 online docs
- GNU C Library - 2.32-b81d2ac6b424 online docs
- GNU Multiple Precision Library - 6.1.2 online docs
- GNU MPC Library - 1.1.0-69ad1bcb8e9e online docs
- GNU MPFR Library - 4.0.2 online docs
- Additional support libraries, including some additional floating point support libraries:
- Decimal Floating Point C Library - 1.0.15-1031321fa9d2 online docs
- Libhugetlbfs - 2.23-6b126a4d7da9 online docs
- Libvecpf - 1.1.0 online docs
- Open Secure Sockets Layer - 1.1.1s-68cec7e9d31f online docs
- IBM Power Architecture Facilities Library - 0.3.0-cbb41aa0538a online docs
- Power Vector Library - 1.0.3-76ca105829a3 online docs
- Python - 3.8.16-045b2523ff39 online docs
- TCMalloc - 2.8-bda3c82e1161 online docs
- ZLIB Compression Library - 1.2.11-ba9df2111e9c online docs
- Development tools:
- GDB (GNU Debugger) - 9.2-9234a6aba1b6 online docs
- Additional performance and debugging tools:
- Valgrind - 3.16.1-24f63fd435e7 online docs
- Additional multi core support libraries:
- Boost - 1.73.0 online docs
- SPHDE - 1.4.0-6a630fad0fbe online docs
- Userspace RCU - 0.12.5-31535943a887 online docs
- Thread Building Blocks - 2020.3-8a69927b7a7c online docs
- POWER NX zlib compliant library:
- NX GZIP library - v0.61-14adc2b online docs
- POWER10 enablement.
- POWER9 enablement.
- POWER9 optimized scheduler.
- Requires at least POWER8 for ppc64le.
- POWER8 Transactional Memory enablement.
- POWER8 Crypto Operations enablement.
- POWER8, POWER9, and POWER10 optimized system libraries.
- POWER9 _Float128 enablement as specified by ISO/IEC TS 18661-3.
- GCC creates binaries using -mcpu=power8 -mtune=power9 by default.
- GCC provides:
- Fix for ICE on subroutine call with allocatable polymorphic assumed-rank argument.
- Fix for Wrong code with intent out assumed-rank allocatable.
- Fix for Optimization breaks pointer association.
- Fix for ICE on automatic reallocation.
- Fix for ICE in copy_to_mode_reg, at explow.c:651.
- Fix for Indefinite recursion when compiling -mmma requiring testcase w/ -maltivec.
- Fix for ICE: Invalid expression in gfc_element_size since r10-2083-g8dc63166e0b85954.
- Fix for ICE in gfc_conv_expr_op, at fortran/trans-expr.c:3882 since r12-3993-gb19bbfb148250536.
- Fix for g++.dg/torture/pr31863.C fails on darwin with "using serial compilation of 2 LTRANS jobs".
- Fix for ICE in find_array_section, at fortran/expr.cc:1582.
- Fix for No array-to-pointer conversion for MMA accumulator.
- Fix for ICE in add_init_expr_to_sym, at fortran/decl.cc:2132.
- Fix for lto -g ICE in dwarf2out_register_external_die at dwarf2out.cc:6072.
- Fix for lto -g ICE in dwarf2out_register_external_die at dwarf2out.cc:6076.
- Fix for LTO plugin fails to build in parallel builds.
- Fix for ICE in gen_movxo, at config/rs6000/mma.md:333.
- Fix for clobber ordering problem when an actual intent(in) argument depends on the value of an intent(out) argument.
- Fix for ICE in gfc_simplify_pack, at fortran/simplify.cc:6438 since r12-4278-g74ccca380cde5e79.
- Fix for ICE in gfc_simplify_expr, at fortran/expr.cc:2290.
- Fix for ICE in simplify_findloc_nodim, at fortran/simplify.cc:5675.
- Fix for ICE in gfc_simplify_unpack, at fortran/simplify.cc:8461.
- Fix for ICE in gfc_conv_procedure_call, at fortran/trans-expr.cc:6193.
- Fix for ICE on recursive DT with DTIO since r7-4096-gbf9f15ee55f5b291.
- Fix for Incorrect bound calculation when bound intrinsic used in size expression.
- Fix for ICE in gen_movxo, at config/rs6000/mma.md:339.
- Fix for ICE in gen_movoo, at config/rs6000/mma.md:292.
- Fix for ICE in check_charlen_present, at fortran/iresolve.cc:98 since r13-4394-g3832c6f7e672e76b.
- Fix for ICE in get_expr_storage_size, at fortran/interface.cc:2862.
- Fix for ICE in gfc_trans_use_stmts, at fortran/trans-decl.cc:5361 since r6-3704-g2b3f52a2d0fb22ba.
- Fix for ICE in get_expr_storage_size, at fortran/interface.cc:2941.
- Fix for ICE in gfc_check_dependency, at fortran/dependency.cc:1295.
- Fix for ICE in compare_bound_int(): Bad expression.
- Fix for ICE in transformational_result, at fortran/simplify.cc:478.
- Fix for Intrinsic IBITS(I,POS,LEN) fails when LEN equals to BIT_SIZE(I)..
- Fix for ICE in generate_coarray_sym_init, at fortran/trans-decl.c:5203.
- Fix for ICE in hash_operand, at fold-const.c:3768.
- Fix for ICE in mio_name_expr_t, at fortran/module.c:2159.
- Fix for ICE in expr_check_typed_help, at fortran/expr.c:5437.
- Fix for ICE: Segmentation fault (in add_reg_note).
- Fix for gcc.target/powerpc/divkc3-1.c and mulkc3-1.c fail for 32 bits.
- OpenSSL provides:
- Version 1.1.1s, see the release notes for details.
- Fix a memory leak in rsa_priv_encode.
- Fix the ceiling on how much encryption growth we can have.
- Python provides:
- Version 3.8.16, see the release notes for details.
- Update the OpenSSL version to 1.1.1t (GH-101727).
- TBB provides:
- Userspace RCU provides:
- Version 0.12.5, see the release notes for details.
- GCC provides:
- Version 10.4, see the release notes for details.
- Fix for several test cases fails after r11-8940.
- Fix for ICE in gfc_simplify_transpose, at fortran/simplify.c:8181 since r12-4967-gbcf3728abe848888.
- Fix for ICE in gfc_simplify_cshift, at fortran/simplify.c:2139 since r12-4967-gbcf3728abe848888.
- Fix for ppc inline expansion of memcpy/memmove should not use lxsibzx/stxsibx for a single byte.
- Fix for ICE in get_sym_storage_size, at fortran/interface.c:2800.
- Fix for ICE in gfc_array_dimen_size(): Bad EXPR_ARRAY expr since r12-4967-gbcf3728abe848888.
- Fix for ICE verify_gimple failed with -ff2c since r10-2279-ge0af8f52b10385d8.
- Fix for ICE in next_char, at fortran/io.cc:160.
- Fix for gcc.target/powerpc/bswap-brw.c fails after r12-8221.
- Fix for Incorrect calculation of INDEX(str1,str2) at compile time.
- Fix for ICE in gfc_simplify_unpack, at fortran/simplify.cc:8490.
- Fix for ICE in gfc_element_size, at fortran/target-memory.cc:132.
- Fix for during RTL pass: swaps ICE: verify_flow_info failed: missing REG_EH_REGION note at the end of bb 69 with -fnon-call-exceptions.
- Fix for ICE in gfc_simplify_extends_type_of, at fortran/simplify.cc:3109.
- Fix for Some ppc64le tests fail with -mcpu=power9 -mtune=power9.
- Fix for #pragma GCC diagnostic ignored "-Wunused-function" inconsistent.
- OpenSSL provides:
- Version 1.1.1q, see the release notes for details.
- Fix for Performance degradation in 1.1.1m.
- Fix for Memory Leak in X509V3_add1_i2d when flag is X509V3_ADD_DELETE.
- Fix for Regression: Unable to set EC_KEY private_key to NULL starting in 1.1.1h.
- Fix for X509_STORE_CTX_purpose_inherit semantics details.
- Fix for PEM_write() causes segfault with header=NULL.
- Python provides:
- Version 3.8.14, see the release notes for details.
- Userspace RCU provides:
- Version 0.12.4, see the release notes for details.
- GCC provides:
- Fix for ICE on data initialization of type(character) with wrong data.
- Fix for ICE in gfc_widechar_to_char, at fortran/scanner.c:198.
- Fix for ICE in aggregate_value_p at gcc/function.c:2046.
- Fix for __SIZEOF_FLOAT128__ not defined on powerpc64le-linux.
- Fix for ICE with -O2: Segmentation fault, memcpy, copy_bb.
- Fix for AddressSanitizer: CHECK failed: asan_malloc_linux.cpp:46.
- Fix for ICE: in extract_insn, at recog.c:2769 (error: unrecognizable insn).
- Fix for ICE in add_init_expr_to_sym, at fortran/decl.c:2062.
- Fix for internal error occurs when overloading intrinsic since r9-1566-g87c789f1c0b2df41.
- Fix for powerpc: asm machine directive wrong for FSL processors.
- Fix for ICE in get_array_charlen, at fortran/trans-array.c:7244.
- Fix for -mlong-double-64 should override a previous -mabi=ibmlongdouble.
- Fix for libgcc missing __floatdiif.
- Fix for ICE in gfc_simplify_eoshift, at fortran/simplify.cc:2590.
- Fix for ICE on list comprehension with default derived type constructor.
- Fix for GNAT.Serial_Communications does not properly close the port.
- OpenSSL provides:
- Version 1.1.1n, see the release notes for details.
- Fix for unable to import PKCS#8 objects with short password.
- Fix for integer overflow in evp_EncryptDecryptUpdate.
- Fix for client allows more than one HelloRetryRequest.
- Fix for new_session_ticket message may contain invalid ticket_lifetime when using TLSv1.3.
- Fix for version 1.1.1L crashes with null pointer access in ERR_load_strings().
- Fix for issue on the commit fb67978a9* on OpenSSL_1_1_1-stable branch: OpenSSL Build Error.
- Fix for division incorrect result on allocation failure.
- Python provides:
- Version 3.8.13, see the release notes for details.
- GCC provides:
- Fix for powerpc: recognize 32-bit CPU as POWER9 with -misel option.
- Fix for parameterized Derived Types, problems with global variable.
- Fix for libasan built against latest glibc doesn't work.
- Fix for ICE in gfc_conv_procedure_call, at fortran/trans-expr.c:6131.
- Fix for gcc.dg/compat/struct-layout-1_generate.c contains errors.
- Fix for write with implicit loop.
- Fix for ICE in gfc_conv_procedure_call, at fortran/trans-expr.c:6131.
- Fix for cyclades.h is removed from linux kernel header files.
- Fix for missing ' ' space for '-E' preprocessing output, works with direct compilation.
- Fix for ICE: Segmentation fault (in lookup_page_table_entry) for bootstrap-O3 since r11-6411-gae99b315ba5b9e1c.
- Fix for passing return value of intrinsic to class(*) dummy argument can cause segfaults.
- Fix for MMA builtin usage ICEs when used in a #pragma omp parallel and using -fopenmp.
- Fix for ICE: verify_gimple failed.
- Fix for ICE in gimplify_var_or_parm_decl, at gimplify.c:2755.
- Fix for ICE in gfc_conv_expr_present, at fortran/trans-expr.c:1975.
- Fix for ICE in gfc_typenode_for_spec, at fortran/trans-types.c:1124.
- Fix for wrong code at -O1 since r11-5839.
- Fix for ICE in find_array_element, at fortran/expr.c:1355.
- Fix for ICE: Invalid expression in gfc_element_size.
- Fix for __FUNCTION__ doesn't work in core.stdc.stdio functions without cast.
- Fix for ICE at convert_expr(tree_node*, Type*, Type*).
- Fix for ICE: out of memory allocating 18446744073709551600 bytes.
- Fix for gcc.target/powerpc/pr101129.c has excess errors after r11-8780.
- Fix for ICE in gfc_conv_expr_descriptor, at fortran/trans-array.c:7324.
- Fix for gcc -static-libasan broken because libasan.a needs __cxa_guard_release in libstdc++.
- Fix for MMA built-in dies with a verify_gimple failed error.
- Fix for reactivated test case gcc.dg/pr78213.c in r10-10042 fails.
- Fix for vec_cpsgn parameter order.
- Fix for protocol register (r12) corrupted before a tail call.
- Fix for optional allocatable array arguments (intent out) of derived types with allocatable components are not properly passed to subroutines..
- Fix for ICE in select_type_set_tmp, at fortran/match.c:6366.
- Fix for "fatal error: target specific builtin not available" with MMA and LTO.
- Fix for ICE tree check: expected array_type, have pointer_type in gfc_conv_array_initializer, at fortran/trans-array.c:6136.
- Fix for ICE in expand_constructor, at fortran/array.c:1802.
- Fix for ICE in gfc_conv_array_initializer, at fortran/trans-array.c:6240.
- Fix for ICE in output_constructor_regular_field, at varasm.c:5514 since r12-4278-g74ccca380cde5e79.
- Fix for a volatile-related problem cased by ipa inline pass.
- Fix for ICE in gfc_simplify_transpose, at fortran/simplify.c:8184 since r12-4278-g74ccca380cde5e79.
- Fix for ICE in gfc_validate_kind(): Got bad kind.
- Fix for ICE in gfc_simplify_reshape, at fortran/simplify.c:6843.
- Fix for ICE in new test case gfortran.dg/reshape_shape_2.f90.
- Fix for ICE in resolve_structure_cons, at fortran/resolve.c:1467 since r12-4452-g1e819bd95ebeefc1.
- Fix for ICE in gfc_clear_shape, at fortran/expr.c:422 since r12-4278-g74ccca380cde5e79.
- Fix for MMA test case emits wrong code when building a vector pair.
- Fix for function is found to be pure looping but has a call to a noreturn function in it.
- Fix for ICE in gfc_simplify_transpose, at fortran/simplify.c:8181 since r12-4967-gbcf3728abe848888.
- Fix for ICE in gfc_simplify_cshift, at fortran/simplify.c:2139 since r12-4967-gbcf3728abe848888.
- Fix for wrong code with ipa-sra.
- Fix for ICE in simplify_bound, at fortran/simplify.c:4273.
- Fix for ICE in gfc_conv_array_initializer, at fortran/trans-array.c:6377.
- Fix for ICE: Invalid expression in gfc_element_size since r10-2083-g8dc63166e0b85954.
- Fix for random_number() does not accept pointer, intent(in) array argument.
- Fix for ICE in compare_bound_mpz_t, at fortran/resolve.c:4587 since r8-7594-g078c5aff5ed83e9c.
- Fix for ICE: Simplification error in gfc_ref_dimen_size, at fortran/array.c:2407.
- Fix for ICE in resolve_fl_procedure, at fortran/resolve.c:13297 since r9-3324-g2b03b800d866d345.
- Fix for ICE in do_subscript, at fortran/frontend-passes.c:2927.
- Fix for ICE in gfc_convert_mpz_to_signed, at fortran/simplify.c:193.
- Fix for runtime crash with PACK on zero-sized arrays.
- Fix for ICE in doloop_code, at fortran/frontend-passes.c:2656.
- Fix for ICE: Invalid expression in gfc_element_size.
- Fix for Null pointer in template deduction.
- Fix for bogus ambiguous reference to 'sqrt'.
- Fix for internal compiler error: in gfc_conv_expr_descriptor, at fortran/trans-array.c:6972.
- Fix for duplicate function call using -fcheck=pointer.
- Fix for substrings out of range are not rejected.
- Fix for ICE on associate of wrongly accessed array.
- Fix for ICE in gfc_conv_component_ref, at fortran/trans-expr.c:2497.
- Fix for ICE with procedure pointer.
- Fix for invalid memory reference upon call of a routine taking a procedure pointer as argument.
- Fix for ICE in gfc_match_pointer_assignment, at fortran/match.c:1422.
- Fix for ICE in gfc_check_do_variable, at fortran/parse.c:4446.
- Fix for failures of gnat.dg/unchecked_convert[56].adb on PowerPC64 LE.
- Fix for __builtin_fmod not optimized on POWER.
- Fix for -flto -ipa-pta ICE: at cgraph_node::get_untransformed_body().
- Fix for structure constructor of type with nested allocatable array components fails to compile.
- Fix for incorrect long double calculation with -mabi=ibmlongdouble.
- Fix for ICE with optional assumed rank class(*) argument.
- Fix for type bound ASSIGNMENT(=) within select rank block wrongly rejected.
- Fix for ICE in emit_library_call_value_1, at calls.c:5298.
- Fix for pointless: Array larger than ‘-fmax-stack-var-size=’, moved from stack to static storage for main program variables.
- Fix for internal compiler error: in gfc_conv_expr_descriptor, at fortran/trans-array.c:7352.
- Fix for unexpected out of bounds in array constructor with implied do loop.
- Fix for internal compiler error: in conv_function_val, at fortran/trans-expr.c:3950.
- Fix for powerpc*: __trampoline_setup inverted test for trampoline size.
- Fix for ICE in gfc_conv_intrinsic_atan2d, at fortran/trans-intrinsic.c:4728.
- Fix for ICE: gimplification failed (gimplify.c:15068).
- Fix for ICE in resolve_structure_cons, at fortran/resolve.c:1286.
- Fix for ICE in gfc_get_tree_for_caf_expr, at fortran/trans-expr.c:2186.
- Fix for ICE in gfc_defer_symbol_init, at fortran/trans-decl.c:841.
- Fix for ICE in inline_matmul_assign, at fortran/frontend-passes.c:4234.
- Fix for MMA test case ICEs using -O3.
- Fix for ICE in expand_expr_real_1, at expr.c:11556 since r5-5407-g30d5d8c5189064c8.
- Fix for ICE in gimplifier on invalid va_arg.
- GNU C Library provides:
- Fix for wrong access (read_only, 3, 4) attribute for readlinkat.
- Fix for getcwd(NULL, PATH_MAX) generates warnings on -Wnonnull.
- Fix for in elf/dl-open.c (_dl_open) we might use __LM_ID_CALLER to index GL(dl_ns)[].
- Fix for mq_notify does not handle separately allocated thread attributes (CVE-2021-33574).
- Fix for wild read in wordexp (parse_param) (CVE-2021-35942).
- Fix for NULL pointer dereference in mq_notify (CVE-2021-38604).
- Fix for conversion from ISO-2022-JP-3 with iconv may emit spurious NUL character on state reset.
- Fix for masked signals are delivered on thread exit.
- Binutils provides:
- Userspace RCU provides:
- Version 0.12.3, see the release notes for details.
- OpenSSL provides:
- Version 1.1.1m, see the release notes for details.
- Fix for Memory leak in EVP_DigestInit_ex.
- Fix for s_client connect doesn't send SNI server_name header through proxy by default.
- Fix for potential locking problem between methods open_console and lose_console.
- Fix for linux environment pfx file creation and issue of password can not be used automatically by any engine causing error that engine can not extract certification.
- Python provides:
- Version 3.8.12, see the release notes for details.
- Fix for test_multiprocessing_forkserver: test_shared_memory_basics() failed with FileExistsError.
- Fix for test_tk.test_configure_type() fails with Tcl/Tk 8.6.11.
- Fix for contextvars.Token has wrong module name in Sphinx's objects.inv.
- Fix for test_collections has a wrong test in case _itemgetter is not available.
- GCC provides:
- Fix for Fortran array initialization in offload regions.
- Fix for ICE in cp_check_const_attributes, at cp/decl2.c:1408.
- Fix for Inconsistencies with associative/unordered containers.
- Fix for maybe_instantiate_noexcept.
- Fix for ICE in tsubst_copy_and_build, at cp/pt.c:19577 since r265609.
- Fix for Incorrect warning when using a ternary operator to select one of two volatile variables to write to.
- Fix for ICE in -Wshadow in templated member function.
- Fix for GCC rejects const_cast of null pointer in constant expressions.
- Fix for -Wconversion false-positive in immediate context.
- Fix for C++17/20 mode fails to recognise pointer-to-member functions of incomplete types in conditional expression.
- Fix for filesystem::path::parent_path got a wrong path.
- Fix for ICE: in tsubst_copy, at cp/pt.c:17247.
- Fix for ICE in create_function_arglist, at fortran/trans-decl.c:2838 (etc.).
- Fix for ICE: in reshape_init, at cp/decl.c:6720.
- Fix for ICE in bootstrap while building libstdc++.
- Fix for bits/hashtable.h:483:9: error: body of ‘constexpr’ function ... not a return-statement.
- Fix for ranges::subrange CTAD for __iterator_sentinel_pair not work.
- GNU C Library provides:
- Fix for Aliasing violation in __vfscanf_internal.
- Fix for (CVE-2021-3326) Assertion failure in ISO-2022-JP-3 gconv module related to combining characters.
- Fix for (CVE-2021-27645) double-free in nscd.
- Fix for GLIBC_TUNABLES aren't parsed properly in AT_SECURE binaries.
- Binutils provides:
- Version 2.35.2, see the release notes for details.
- OpenSSL provides:
- Version 1.1.1k, see the release notes for details.
- Fix for EVP_PKEY_cmp() fails Identical keys.
- Fix for d2i_ASN1_OBJECT leaks the 'sn' and 'ln' fields of ASN1_OBJECT.
- Fix for a double free bug in crypto/srp/srp_vfy.c.
- Fix for a double free bug in crypto/ts/ts_rsp_verify.c.
- Fix for a double free bug in engines/e_loader_attic.c.
- Fix for Makefile in master removes possible current release tarball.
- Expat provides:
- Fix for xmlparse.c: Reject missing call to XML_GetBuffer in XML_ParseBuffer.
- Fix for xmlwf: Add argument -k to allow continuing after non-fatal errors.
- Fix for fuzzers: Address Clang warning -Wunused-parameter.
- Fix for CMake: Only set CMAKE_CXX_FLAGS after enable_language(CXX).
- Python provides:
- Version 3.8.9, see the release notes for details.
- Fix for ipaddress.ip_network(...).hosts() returns nothing for an IPv4 /32.
- Fix for Discrepancy between traceback.print_exception and sys.__excepthook__.
- Fix for PEP 570: Python Positional-Only Parameters.
- Fix for Raised exception in Enum keeping user objects alive unnecessarily.
- Fix for SSLContext.hostname_checks_common_name appears to have no effect.
- Fix for Tkinter: make X window & macOS recognize dialogs as such.
- Fix for Deprecate camelCase aliases from threading.py.
- Fix for Run GHA CI with multiple OpenSSL versions.
- Userspace RCU provides:
- Version 0.12.2, see the release notes for details.
- Fix for rculist header: use parenthesis around macro parameters.
- Fix for rcuhlist header: use parenthesis around macro parameters.
- Fix for hlist header: use parenthesis around macro parameters.
- Fix for list.h: use parenthesis around macro parameters, caa_container_of().
- Fix for hlist iteration relies on undefined behavior.
- Fix for use __atomic_load() rather than atomic load explicit.
- Fix for use atomic load memory_order_consume for rcu_dereference on C11/C++11.
- Fix for HAVE_SCHED_SETAFFINITY is not defined.
- Fix for shadowed local variable (-Wshadow).
- GCC provides:
- Fix for Preserve variable-use locations.
- Fix for [C++14] <unresolved overloaded function type> for function template with auto return.
- Fix for vtable not emitted for class with no key method and defaulted destructor with attribute((used)).
- Fix for relative line numbers only working if gcc_{error,warning}_prefix defined.
- Fix for [testsuite, libgomp] dg-message not supported.
- Fix for ICE: Floating point exception.
- Fix for Incorrect result from alignof in templates, if also using __alignof__..
- Fix for ice on aggregate initialization of unmovable base.
- Fix for constraints not checked on nested class template.
- Fix for Layout of istreambuf_iterator subobject depends on -std mode.
- Fix for Large increase in preprocessed file sizes in C++2a mode.
- Fix for Compiler is unable to generate finalization wrapper.
- Fix for Fortran Location Data for Diagnostic lacks the column number – when passing on to ME.
- Fix for [C++20] copy deduction rejected when doing CTAD for NTTP.
- Fix for No overflow check in __atomic_futex_unsigned_base::_M_futex_wait_until.
- Fix for ICE in gfc_constructor_append_expr, at fortran/constructor.c:135.
- Fix for ICE: [[no_unique_address] when constructing via template helper.
- Fix for Concept checked after auto return type deduction.
- Fix for ICE: verify_flow_info failed (error: wrong outgoing edge flags at end of bb 2).
- Fix for memcmp being wrongly stripped like strcmp.
- Fix for std::list | take | transform, expression does not work cbegin() == end().
- Fix for ICE in gfc_match_subroutine, at fortran/decl.c:7913.
- Fix for ICE in build_field, at fortran/trans-common.c:301.
- Fix for ICE in trunc_int_for_mode, at explow.c:59 since r9-7156-g33579b59aaf02eb7.
- Fix for std::ranges::construct_at's placement new not intercepted.
- Fix for suboptimal memcpy with embedded zero bytes.
- Fix for ICE in get_kind, at fortran/simplify.c:129.
- Fix for Segmentation fault compiling with static libraries and using jthread::request_stop.
- Fix for Reference type of std::ranges::iota is __int128 with -std=c++2a?!.
- Fix for bogus alignment for negative step grouped access.
- Fix for ICE in gimplify_expr, at gimplify.c:14638.
- Fix for ICE in fold_convert_loc, at fold-const.c:2398.
- Fix for internal compiler error: in tsubst_copy with CTAD for alias templates.
- Fix for Invalid specialization accepted when also constrained in base template template parameter.
- Fix for ICE in verify_ctor_sanity.
- Fix for optional comparison with nullopt fails.
- Fix for gfortran 8-10 shape mismatch in assumed-length dummy argument character array.
- Fix for ICE in add_new_edges_to_heap, at ipa-inline.c:1746 (-O3 PGO).
- Fix for gnat.dg/opt39.adb is not scalarized.
- Fix for ICE during GIMPLE pass:vect.
- Fix for ICE: Segmentation fault in instantiate_template / pop_nested_class().
- Fix for gcov TOPN streaming is incorrect for shared libraries.
- Fix for ICE segmentation fault in tree-vectorizer at -O3.
- Fix for Switch with case values derived from constexpr function takes unreasonable time to compile.
- Fix for Missing code from consteval constructor initializing const variable.
- Fix for C++20 ADL and function templates that are not visible (P0846R0) fails on call with templated type.
- Fix for Missing DW_AT_declaration=1 in dwarf data.
- Fix for [MATMUL intrinsic] The value of result is wrong when vector (step size is negative) * matrix.
- Fix for Zero valued #line directive results in excessively large blocks of memory being allocated.
- Fix for assume_aligned is not constexpr.
- Fix for Sanitizer pointer-subtract breaks constexpr functions subtracting pointers.
- Fix for Build error with -mcpu=power9 on ppc64.
- Fix for zstd build failure for gcc 10 on Ubuntu 16.04.
- Fix for .gcno files are not written to same directory as the object file.
- Fix for construct_at on a union member is not a constant expression.
- Fix for With -O2, Incorrect -Werror=maybe-uninitialized thrown, leads to 'target_mem_ref' and 'dump_expr<expression error>' in message.
- Fix for Vectorizer gives a boolean a value of 255.
- Fix for Wrong answer from MAXLOC with character arg.
- Fix for Segmentation fault in lto-wrapper.
- Fix for ASAN "dynamic-stack-buffer-overflow" false positive with OpenMP reduction to std::vector.
- Fix for ICE on firefox built with lto+pgo: dist/include/mozilla/Casting.h:64:1: internal compiler error: in to_frequency, at profile-count.c:273.
- Fix for ICE in verify_ctor_sanity, at cp/constexpr.c:3995 since r10-7313-gb599bf9d6d1e180d.
- Fix for Unable to coalesce ssa_names which are marked as MUST COALESCE..
- Fix for ICE in range_on_exit.
- Fix for `__deref` in <functional> in debug mode clashes with internal macro in Windows system header.
- Fix for wrong code with __builtin_bswap16() of rotated 64bit value.
- Fix for g++.dg/asan/asan_test.C compilation failure starting with r11-3827.
- Fix for [concepts] ICE with requires requires and parameter packs.
- Fix for AddressSanitizer CHECK failed: detect_stack_use_after_return and detect_invalid_pointer_pairs.
- Fix for [accepts-invalid] coroutines accepts prmomise type with both return_value() and return_void().
- Fix for Wrong min value generated for DFP numbers.
- Fix for An incorrect optimization causes a function to always return the same value when using -flto.
- Fix for Wrong restriction for VALUE arguments of pure procedures.
- Fix for ICE: decompressed stream: Destination buffer is too small.
- Fix for ICE verify_ssa failed since r10-4200-gb7ff7cef5005721e.
- Fix for ICE: during RTL pass: cprop /segfault in sbitmap.
- Fix for New gfortran.dg/pdt_14.f03 failure after g:617695cdc2b3d950f1e4deb5ea85d5cc302943f4.
- Fix for [c++17] Function with return type 'unsigned' in nested namespace misinterpreted as deduction guide.
- Fix for terminate called in std::experimental::filesystem::recursive_directory_iterator.
- Fix for Preincrement of _Complex gives bogus warning = "value computed is not used".
- Fix for GCC outputs wrong values when compiling the testcase with -O3 since r10-4200-gb7ff7cef5005721e.
- Fix for 32-bit f951 ICE on code from OpenMolcas.
- Fix for [Fortran] Confused location information for OpenACC compute constructs.
- Fix for constexpr evaluation reports false positive memory leak.
- Fix for internal compiler error: in build2, at tree.c:4814.
- Fix for std::ranges::search_n does not work with counted_iterator<_List_iterator<...>>.
- Fix for ice compiling dxml.
- Fix for Bad code gen when concatenating to array.
- Fix for <version> defines __cpp_lib_span even when <span> doesn't provide an implementation.
- Fix for stop_token header doesn't compile on clang-8 with -std=c++20.
- Fix for d: OutOfMemoryError thrown when appending to an array with a side effect.
- Fix for ICE near htab_hash_string when LTO, -O & -g.
- Fix for Missing subsumption in iterator category detection.
- Fix for ICE in build2, at tree.c:4868.
- Fix for ext/stdio_filebuf/char/79820.cc is broken.
- Fix for gcc.dg/strncmp-2.c frees mproptected memory.
- Fix for incorrect Type'Mod during a loop whose range is computed by a variable.
- Fix for Dependency check fails when using "allocatable" instead of "pointer" (forall_3.f90).
- GNU C Library provides:
- Fix for (CVE-2016-10228) iconv(1) with -c option hangs on illegal multi-byte sequences (CVE-2016-10228).
- Fix for (CVE-2019-25013) iconv encounters segmentation fault when converting 0x00 0xfe in EUC-KR to UTF-8 (CVE-2019-25013).
- Fix for undefined reference to `__warn_memset_zero_len' when changing gnuc version.
- Fix for (CVE-2020-27618) iconv hangs when converting some invalid inputs from several IBM character sets (CVE-2020-27618).
- Fix for bind_textdomain_codeset doesn't accept //TRANSLIT anymore.
- Fix for Transaction ID collisions cause slow DNS lookups in getaddrinfo.
- Fix for 32-bit shmctl(IPC_INFO) crashes when shminfo struct is at the end of a memory mapping.
- Fix for semctl SEM_STAT_ANY fails to pass the buffer specified by the caller to the kernel.
- Fix for msgctl IPC_INFO and MSG_INFO return garbage.
- Fix for glibc 2.32 has default_cflags="-g -O" instead of "-g -O2".
- Binutils provides:
- Fix for Error: file table slot 1 is already occupied by a different file.
- Fix for nm -D -u now by default displays symbol versions, adding --with-symbol-versions duplicates them.
- Fix for Inconsistent undefined versioned symbols.
- Fix for -z ibt and -z shstk are mishandled.
- Fix for Extra filename generated by --gdwarf-4.
- Fix for Error: file table slot 1 is already occupied by a different file.
- Fix for [2.36 Regression] readelf: Warning: DIE at offset 0x232 refers to abbreviation number 77 which does not exist.
- Fix for ld: assertion fail ../../bfd/elflink.c:14806 on i686-linux-gnu since 382aae06322799a25ea52fe61b243cbca4db8d66.
- Fix for gold powerpc inserts jump to middle of long branch stub.
- Fix for [readelf] crash with ASAN in print_dynamic_symbol.
- Fix for nm -P portable output format regression.
- Fix for ppc32 segmentation fault in make_stub.
- OpenSSL provides:
- Version 1.1.1i, see the release notes for details.
- Fix for OPENSSL_cpuid_setup FreeBSD PowerPC.
- Fix for [crypto/dh] side channel hardening for computing DH shared keys .
- Fix for NULL pointer access caused by X509_ATTRIBUTE_create().
- Fix for Broken on 32 bit big endian.
- Fix for SSL_CTX_sess_accept gives negative value.
- Fix for nginx 1.19.4 feature "ssl_reject_handshake" does not work as intended with openssl.
- Fix for Low Memory SegFault in dtls.
- Fix for X509_cmp fails since 1.1.1f.
- Fix for Regression in `X509_verify_cert`.
- Fix for UTF8 BOM should be ignored when reading the configuration file.
- Expat provides:
- Version 2.2.10, see the release notes for details.
- Fix for Make testrunner output more helpful (related to #382) by hartwork.
- Fix for Detect unsupported VS at configure time (and not at compile time) by tbeu.
- Fix for Obsolescent macro AC_HEADER_STDC .
- Fix for Protect installed expat_config.h from regression + drop obsolescent macro AC_HEADER_STDC (#436) by hartwork.
- Python provides:
- Version 3.8.7, see the release notes for details.
- Fix for strange interaction between __slots__ and class-level attributes.
- Fix for fixcid.py is using instead of !=.
- Fix for Change the text signature format (again) to be more robust.
- Fix for statistics._decimal_to_ratio() produces non-integer ratio.
- Fix for argparse: Provide equivalent of optparse.OptionParser.{option_groups,option_list,get_option}.
- Fix for Access violation - pyc file.
- Fix for Use PyMem_New instead of PyMem_Malloc.
- Fix for Improve byte formatting compatibility between Py2 and Py3.
- Fix for Add tests for wsgiref.validate.
- Fix for multiprocessing: string arg to SystemExit.
- Fix for timeit accuracy could be better.
- Fix for expandvars removes single quotes ( ' ).
- Fix for Reloading tokenize module leads to error.
- Fix for sum() function docstring lists arguments incorrectly.
- Fix for Make stdprinter use DebugOutputString when no stdout/stderr available.
- Fix for Encrypted MSI fails to install with code 2755.
- Fix for Argument Clinic: wrap impl's declaration if it's too long.
- Fix for Add python.ini file for embedded/applocal installs.
- Fix for Incorrect TimeoutError referenced in concurrent.futures documentation.
- Fix for test_ssl failure on Fedora 22.
- Fix for More clearly expose/explain native and cross-build target information.
- Fix for rename the platform directory from plat-$(MACHDEP) to plat-$(PLATFORM_TRIPLET).
- Fix for PEP 484 implementation.
- Fix for Undefined behavior in dtoa.c (rshift 32 of 32bit data type).
- Fix for Get rid of rare format units in PyArg_Parse*.
- Fix for Add a Sprints organization/preparation section to devguide.
- Fix for Add docstring to urllib.urlretrieve.
- Fix for Python heap corruption issue.
- Fix for str(bytes_obj) should raise an error.
- Fix for Python hangs forever in wait() of threading.py.
- Fix for GB2312 codec is using a wrong covert table.
- Fix for Argument Clinic: add the boolint converter.
- Fix for Clearify necessities for logging with timestamps.
- Fix for sum() several times slower on Python 3 64-bit.
- Fix for man page says -I implies -S. code says -s..
- Fix for inspect.getsourcelines ignores context and returns wrong line #.
- Fix for asyncio.Event.wait() Task was destroyed but it is pending.
- Fix for Obsolete note in argument parsing (c-api/arg.rst).
- Fix for yield expression confusion.
- Fix for argparse crashes with AssertionError.
- Fix for Use after free in Element.remove.
- Fix for Use after free in siftdown (2).
- Fix for Use after free in siftup.
- Fix for zipfile.ZipFile.write() does not accept bytes arcname.
- Fix for shlex constructor unreachable code.
- Fix for --with-pydebug has no effect when the final python binary is compiled.
- Fix for pathlib.(r)glob stops on PermissionDenied exception.
- Fix for Incorrect (misleading) statement in the execution model documentation.
- Fix for ABCMeta classes do not support the **kwargs standard class interface.
- Userspace RCU provides:
- Fix for configure: support Autoconf 2.70.
- Fix for bump tests thread limit to 4096.
- Fix for explicitly include urcu/config.h in files using CONFIG_RCU_ defines.
- Fix for add -lurcu-common to pkg-config libs for each flavor.
- Fix for race between rcu_barrier() and call_rcu_data_free().
- GCC provides:
- Fix for __glibcxx_assert and Debug Mode checks can't be used in constexpr functions.
- Fix for vec_popcntd is improperly defined in altivec.h.
- Fix for Potential optimization bug: invalid pre-load of floating-point value could cause SIGFPE-underflow if value is integer.
- Fix for std::gcd mishandles mixed-signedness.
- Fix for ICE on invalid with argument list for module procedure.
- Fix for ICE in scan_omp_1_op, at omp-low.c:3485.
- Fix for .debug_line with LTO refers to bogus file-names.
- Fix for std::pmr::pool_options::max_blocks_per_chunk=1 causes pool resources to return null pointers.
- Fix for worse debug info with O0 than with O2 with flto.
- Fix for LTO produces line info entries with invalid line numbers.
- Fix for gfortran/OpenMP chokes on PRESENT(array) despite of SHARED(array): Error: ‘array’ not specified in enclosing ‘parallel’.
- Fix for filesystem::sysmlink_status using stat instead of lstat when --disable-libstdcxx-filesystem-ts.
- Fix for [OpenMP] omp ... distribute – lastprivate not permitted and more issues.
- Fix for ICE in gfortran.dg/gomp/target1.f90 after r11-349.
- Fix for ICE regression starting with 9.3.
- Fix for ICE in odr_type_p, at ipa-utils.h:246, during IPA pass: pure-const.
- Fix for ICE on invalid code.
- Fix for ABI breakage for "base object constructor" for final classes.
- Fix for Wrong long double folding.
- Fix for LTO doesn't pick up -fcf-protection flag for the link step.
- Fix for ICE in gfc_get_derived_type, at fortran/trans-types.c:2729.
- Fix for ICE in gfortran.dg/pr93423.f90 after r11-1792.
- Fix for Vector element extract mistypes long long int down to long int.
- Fix for d: No NRVO when returning an array of a non-POD struct.
- Fix for LTO bootstrap with --enable-cet is broken.
- Fix for d: Field access in parentheses causes error: need 'this' for 'field' of type 'type'.
- Fix for d: ICE using non-local variable: internal compiler error: Segmentation fault.
- Fix for ICE: SSA corruption (Unable to coalesce ssa_names 2 and 3 which are marked as MUST COALESCE.) [in fail_abnormal_edge_coalesce].
- Fix for Wrong evaluation order of || operator.
- Fix for ICE with -ffast-math since r7-950-g8a85cee26eabf5cf.
- Fix for GCC generates separate debug info with undefined symbols without relocations.
- Fix for OpenMP host teams reductions ignored.
- Fix for get_environment_variable crashes for environment variables that are empty strings.
- Fix for Compare std::variant with int using C++20 <=> is not a constant expression.
- Fix for Incorrect with with -O -fno-tree-pta.
- Fix for ICE in get_atomic_generic_size.
- Fix for Wrong evaluation of a comparison between long & short.
- Fix for Bad "set but not used" warning with _Generic.
- Fix for ICE in gimple check: expected gimple_assign(error_mark), have gimple_nop() in gimple_assign_rhs1, at gimple.h:2605 since r7-950-g8a85cee26eabf5cf.
- Fix for valgrind error in do_hoist_insertion during O3 build.
- Fix for ICE in write_type since r10-6087.
- Fix for 25_algorithms/pstl/feature_test-3.cc has excess error.
- Fix for Clobbers on NULL since r8-1519.
- Fix for slow compile with `-g -O3` since r11-39-gf9e1ea10e657af9f.
- Fix for std::swap(std::variant, std::variant) triggers undefined behavior sanitizer.
- Fix for std::tuple chooses wrong constructor for uses-allocator construction.
- Fix for MMA built-in dies with incorrect sharing of tree nodes error.
- Fix for ICE in verify_sra_access_forest with array and out of bounds reference.
- Fix for operator< on std::array<T, N> does not work in constexpr, for sizeof(T) == 1, and N > 1.
- Fix for Wrong answer with intrinsic merge_bits.
- Fix for -frounding-math -std=c++2a error: '(1.29e+2 * 6.9314718055994529e-1)' is not a constant expression.
- Fix for Wrong answer with intrinsic IALL.
- Fix for d: ICE in create_tmp_var, at gimple-expr.c:482.
- Fix for ICE in subspan, at input.h:69.
- Fix for latent wrong-code with SLP vectorization.
- Fix for an O2, O3 codegen bug.
- Fix for noexcept specifier in std::bind_front().
- Fix for libffi build issue when compiling with -mcpu=power10.
- Fix for string_view bounds error in filesystem::path.
- GNU C Library provides:
- Binutils provides:
- Version 2.35.1, see the release notes for details.
- Fix for "objdump: DWARF error: could not find variable specification at offset ..." when generating assembly listing of .elf file containing symbols from libstdc++.a.
- Fix for Power10 libstdc++.so R_PPC64_NONE dynamic relocs.
- Fix for power10 libstdc++.so segfault in __cxxabiv1::__cxa_throw.
- OpenSSL provides:
- Version 1.1.1h, see the release notes for details.
- Expat provides:
- Fix for cmake .. -G "Visual Studio 16 2019" && msbuild /m expat.sln - failed.
- Fix for Get rid of unsigned integer overflow in column calculation by boris-kolpackov.
- Fix for Add an option to install pkg-config file .
- Fix for CMake: Introduce option EXPAT_BUILD_PKGCONFIG (fixes #413) by hartwork.
- Fix for Build fails on Windows with Visual Studio 2019 and non-English language pack.
- Fix for control build options by variables on usage by cmake FetchContent command by gittiver.
- Fix for AppVeyor: Cover Visual Studio 16 2019 (related to #418) by hartwork.
- Fix for qa.sh: Enable LeakSanitizer by hartwork.
- Fix for CMake: Support "make package" based on CPack by hartwork.
- Libhugetlbfs provides:
- Version 2.23, see the release notes for details.
- Python provides:
- Version 3.8.6, see the release notes for details.
- Fix for Updating zip comment doesn't truncate the zip file.
- Fix for Python doesn't exit with proper resultcode on SIGINT in runpy (pymain_run_module).
- Fix for Add programming FAQ entry: remove multiple entries from list.
- Fix for IDLE: change Shell window title.
- Fix for Missing documentation for 'PyDict_DelItem' behavior.
- Fix for Fix incomplete line on optparse documentation.
- Valgrind provides:
- Version 3.16.1, see the release notes for details.
- Support for Ubuntu 20.04.
- GCC provides:
- Version 10.2, see the release notes for details.
- MMA support, see the list of functions for details.
- GNU C Library provides:
- Version 2.32, see the release notes for details.
- Binutils provides:
- Version 2.35, see the release notes for details.
- GNU Debugger provides:
- Version 9.2, see the release notes for details.
- Userspace RCU provides:
- Version 0.12.1, see the release notes for details.
- OpenSSL provides:
- Version 1.1.1g, see the release notes for details.
- Expat provides:
- Version 2.2.9, see the release notes for details.
- Libhugetlbfs provides:
- Version 2.22, see the release notes for details.
- Python provides:
- Version 3.8.5, see the release notes for details.
- Boost provides:
- Version 1.73.0, see the release notes for details.
- libdfp provides:
- Version 0.15.0, see the release notes for details.
- Valgrind provides:
- Version 3.15.0, see the release notes for details.
- TCMalloc provides:
- Version 2.8.0, see the release notes for details.
- TBB provides:
- Version 2020.3, see the release notes for details.
- zlib provides:
- Add optimizations for Power.
- Provides a new component: NX zlib compliant software (libnxz).
- GCC provides:
- Fix for gcc looks for C++ attributes in the wrong place in a lambda-expression.
- Fix for enum class bitfield size-checking needs a separate warning flag controlling it.
- Fix for std::locale::classic() Needless Race.
- Fix for ICE in resolve_component, at fortran/resolve.c:13696.
- Fix for ICE in curr_insn_transform, at lra-constraints.c:3892.
- Fix for error: unrecognizable insn on ppc64le.
- Fix for ICE: Segmentation fault signal terminated program cc1plus, with -std=c++2a -fconcepts.
- Fix for PowerPC vec_xl_len should take const.
- Fix for ubsan does not work with openmp default (none) directive.
- Fix for Doc typos in __builtin_crypto_vpmsum*.
- Fix for Debug mode: there is a racing condition between destructors of iterator and the associated container..
- Fix for error in update of gcc.target/powerpc/pr72804.c in r277872.
- Fix for Documentation ambiguous/misleading about interplay of optimization and warning flags.
- Fix for Inappropriate comment for std::ios_base::trunc.
- Fix for frename-registers does not work well with __builtin_return.
- Fix for std::discrete_distribution's operator>> causes OOM.
- Fix for std::filesystem::path::generic_string doesn't convert the first slash on Windows.
- Fix for libstdc++ wrongly uses direct clock_gettime syscall on non-glibc, breaks time64.
- Fix for points-to wrong for integer offsetting and field-sensitive analysis.
- Fix for ICE in oacc_code_to_statement, at fortran/openmp.c:6007.
- Fix for OpenMP target teams distribute parallel for with defaultmap not mapping correctly.
- Fix for ICE in simd_clone_struct_copy, at omp-simd-clone.c:84.
- Fix for __builtin_convertvector doesn't mark input as used.
- Fix for infinite loop building ghostscript and icu with -O3 on powerpc64le-linux-gnu.
- Fix for fortran.dg/minlocval_4.f90 fails on power 9 after r10-4161.
- Fix for GCC adds unwanted nops to align loops on powerpc 8xx since r9-1623.
- Fix for PPC64 builtin vec_rlnm() argument order is wrong..
- Fix for Incorrect DW_AT_location generated for copy-constructed function argument.
- Fix for r10-6762 breaks gcc.target/powerpc/fold-vec-st-*.c test cases.
- Fix for ICE using lambda capture in openMP parallel for reduction.
- Fix for PowerPC vec_extract with variable element number has code regressions for V2DI/V2DF vectors.
- Fix for std::to_address doesn't work with past-the-end Debug Mode iterators.
- Fix for Problematic ld_date configure check.
- Fix for gcc.target/powerpc/pr72804.c fails.
- Fix for pr71109.c -fcompare-debug failures on x86_64 and powerpc64le.
- Fix for std::experimental::net::v1::make_service function template not instantiatable.
- Fix for Wrong optimization: memset of n-bit integer types (from bit-fields) is truncated to n bits (instead of sizeof).
- Fix for gfortran 8/9 reject module procedure definition in same module as function interface.
- Fix for Missing c++ debug information for 'auto&' return type.
- Fix for ICE in tsubst_expr, at cp/pt.c:18181.
- Fix for Logical operator inside fold-expression: strange warning.
- Fix for r9-8486 causes several builtin instruction test case execution failures on power 9.
- GNU C Library provides:
- Fix for (CVE-2020-1752) 'glob' use-after-free bug (CVE-2020-1752).
- Fix for (CVE-2020-1751) Array overflow in backtrace on powerpc (CVE-2020-1751).
- Fix for configure: broken detection of STT_GNU_IFUNC when GCC defaults to PIE.
- Fix for system() returns wrong errors when posix_spawn fails.
- Fix for Incorrect prctl.
- Fix for Bad LOADARGS_N.
- Binutils provides:
- Fix for nm should not mark symbols in .init_array as "t".
- Fix for nm reports data variable as "T" with -flto.
- Fix for objcopy : free() invalid pointer in _bfd_coff_free_symbols.
- Fix for ar and ranlib should not call lto-wrapper for LTO bytecode.
- Fix for error: PHDR segment not covered by LOAD segment.
- Fix for nm shows symbol as 'U' while showed as 'T'.
- Fix for powerpc64-unknown-linux-gnu-ld overflows string buffer in --stats mode.
- Fix for powerpc64-ld infinite loop
- Python provides:
- Adding the following flags when building python: --enable-optimizations and --with-lto
Debian 10 (buster) end of support
Debian 10 (buster) reached EOL in August 2022. Advance Toolchain packages won't be provided for Debian 10 (buster) with Advance Toolchain 14.0-7 and later.
New features in 14.0-7
Previous releases
New features in 14.0-6
New features in 14.0-5
New features in 14.0-4
New features in 14.0-3
New features in 14.0-2
New features in 14.0-1
New features in 14.0-0
New features in 13.0-2
Support
Customer support for the Advance Toolchain (AT) is provided in one of three ways:
- If you are using AT as directed by an IBM product team (ex.: IBM XL Compiler or PowerVM Lx86) please report suspected AT problems to IBM Support using that product name and entitlement.
- IBM's Support Line for Linux Offerings now provides support for the Advance Toolchain as well. If you have a contract with a Support Line for Linux, place a call to IBM Support, e.g. for United States:
- Dial 1-800-426-IBM-SERV
- Option #2 (Other business products or solutions)
- Option #2 (Software)
- Option #7 (Other OS/Linux)
- All other users can use an electronic forum that is monitored Monday through Friday. For questions regarding the use of or to report a suspected defect in AT, click here.
- Log in.
- Start a topic.
- Enter and save your question or problem.
- An initial response will be attempted within 2 business days.
Installation
The gpg public key(s) gpg-pubkey-6976a827-5164221b will be provided in the repository where these release notes were found. The pubkey(s) can be used to verify the authenticity of both the Advance Toolchain install packages and the repository contents. After downloading the gpg-pubkey(s) they can be imported as follows:
rpm --import gpg-pubkey-6976a827-5164221b
Using DNF
First, if you have never created an Advance Toolchain repository configuration file, you need to do so. Create the following file using the text editor of your choice as root:
/etc/yum.repos.d/at14.0.repo
and add the following content:
# Begin of configuration file [at14.0] name=Advance Toolchain IBM FTP baseurl=https://public.dhe.ibm.com/software/server/POWER/Linux/toolchain/at/redhat/RHEL8 enabled=1 gpgcheck=1 gpgkey=https://public.dhe.ibm.com/software/server/POWER/Linux/toolchain/at/redhat/RHEL8/gpg-pubkey-6976a827-5164221b # End of configuration file
To install execute dnf install as root:
dnf install advance-toolchain-at14.0-runtime / advance-toolchain-at14.0-devel / advance-toolchain-at14.0-perf
Answer y when DNF prompts for confirmation.
Manual installation for rpms
If you are installing the rpms manually you will need to install them in the following order (due to prerequisites):
advance-toolchain-at14.0-runtime-14.0-7 advance-toolchain-at14.0-devel-14.0-7 advance-toolchain-at14.0-perf-14.0-7 advance-toolchain-at14.0-mcore-libs-14.0-7 advance-toolchain-at14.0-runtime-at13.0-compat-14.0-7
If you are updating a previous installation, you need to update as a batch, so rpm can solve the dependencies, i.e.:
rpm -Uvh advance-toolchain-at14.0-runtime-14.0-7.ppc64.rpm \ advance-toolchain-at14.0-devel-14.0-7.ppc64.rpm \ advance-toolchain-at14.0-perf-14.0-7.ppc64.rpm \ advance-toolchain-at14.0-mcore-14.0-7.ppc64.rpm \ advance-toolchain-at14.0-runtime-at13.0-compat-14.0-7.ppc64.rpm
The rpm command should always be run as root. Failure to do so will result in an error similar to this:
error: can't create transaction lock on /var/lib/rpm/__db.000
Important notes
- Timezone files: If you need to use something different than Factory, then you should copy the timezone file you want from /opt/at14.0/share/zoneinfo to /opt/at14.0/etc/localtime
- advance-toolchain-at14.0-runtime-compat-14.0-7: DO NOT INSTALL it on RHEL7 and beyond. These are intended for runtime compatibility on RHEL6 only (see below).
Installation for runtime compatibility on previous distribution versions
Users running applications on previous distributions of SLES or RHEL may install the compatibility rpm advance-toolchain-at14.0-runtime-compat-14.0-7 in order to get the Advance Toolchain runtime libraries.
Installation of the cross-compiler (x86)
You can download advance-toolchain-at14.0-cross-14.0-7 and install in a x86 machine to build Power binaries on it. Binaries generated by the cross-compiler will run on a Power system with the same version of the Advance Toolchain installed.
back to topDocumentation
The official documentation for the Advance Toolchain is available at the IBM Power Linux Community website.
back to topLegal notices
Each component of Advance Toolchain has its own license, they are all covered by this list:
- LGPL 2.1: https://www.gnu.org/licenses/old-licenses/lgpl-2.1.en.html
- GPL 2.0: https://www.gnu.org/licenses/old-licenses/gpl-2.0.en.html
- GPL 3.0: https://www.gnu.org/licenses/gpl-3.0.en.html
- MIT
- BSD
- PYTHON SOFTWARE FOUNDATION LICENSE VERSION 2
- Boost Software License 1.0
- Eclipse Public License (EPL) 1.0
- Zlib
- Apache License 2.0
The licenses for each GPL and LGPL code segment can be found in the advance-toolchain-at14.0-src-14.0-7.tgz file in the repository, the others are listed below.
In order to comply with the GPL and LGPL licenses, the source code for the following packages is available:
- binutils (GPL 2.0)
- gcc (GPL 3.0)
- gdb (GPL 2.0)
- glibc (LGPL 2.1)
- gmp (GPL 3.0)
- Threading Building Blocks (GPL 2.0)
- libdfp (LGPL 2.1)
- libhugetlbfs (LGPL 2.1)
- libvecpf (LGPL 2.1)
- linux kernel (GPL 2.0)
- mpc (GPL 3.0)
- mpfr (GPL 3.0)
- Userspace RCU (LGPL 2.1)
- Valgrind (GPL 2.0)
- libnxz (GPL 2.0)
Boost
Boost Software License - Version 1.0 - August 17th, 2003
Permission is hereby granted, free of charge, to any person or organization
obtaining a copy of the software and accompanying documentation covered by
this license (the "Software") to use, reproduce, display, distribute,
execute, and transmit the Software, and to prepare derivative works of the
Software, and to permit third-parties to whom the Software is furnished to
do so, all subject to the following:
The copyright notices in the Software and this entire statement, including
the above license grant, this restriction and the following disclaimer,
must be included in all copies of the Software, in whole or in part, and
all derivative works of the Software, unless such copies or derivative
works are solely in the form of machine-executable object code generated by
a source language processor.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
DEALINGS IN THE SOFTWARE.
Expat (MIT)
Copyright (c) 1998, 1999, 2000 Thai Open Source Software Center Ltd and Clark Cooper
Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006 Expat maintainers.
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Golang (BSD)
Copyright (c) 2012 The Go Authors. All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above
copyright notice, this list of conditions and the following disclaimer
in the documentation and/or other materials provided with the
distribution.
* Neither the name of Google Inc. nor the names of its
contributors may be used to endorse or promote products derived from
this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Gperftools (BSD)
Copyright (c) 2005, Google Inc. All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
* Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
* Neither the name of Google Inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Libauxv (BSD)
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
* Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
* Neither the name of the IBM Corporation nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL IBM CORPORATION BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Libpfm (MIT)
Copyright (c) 2002-2006 Hewlett-Packard Development Company, L.P.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
of the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
OpenSSL (BSD)
Copyright (c) 1998-2011 The OpenSSL Project. All rights reserved.
Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com). All rights reserved.
* Note: this distribution of OpenSSL does not include the IDEA and RC5 algorithms
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
3. All advertising materials mentioning features or use of this software must display the following acknowledgment: "This product includes software developed by the OpenSSL Project for use in the OpenSSL Toolkit. (http://www.openssl.org/)"
4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to endorse or promote products derived from this software without prior written permission. For written permission, please contact openssl-core@openssl.org.
5. Products derived from this software may not be called "OpenSSL" nor may "OpenSSL" appear in their names without prior written permission of the OpenSSL Project.
6. Redistributions of any form whatsoever must retain the following acknowledgment: "This product includes software developed by the OpenSSL Project for use in the OpenSSL Toolkit (http://www.openssl.org/)"
THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
This product includes cryptographic software written by Eric Young (eay@cryptsoft.com). This product includes software written by Tim Hudson (tjh@cryptsoft.com).
PAFLib (MIT)
Copyright IBM Corp. 2013
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM
,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
Python
Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Python Software Foundation; All Rights Reserved
PYTHON SOFTWARE FOUNDATION LICENSE VERSION 2
--------------------------------------------
1. This LICENSE AGREEMENT is between the Python Software Foundation ("PSF"), and the Individual or Organization ("Licensee") accessing and otherwise using this software ("Python") in source or binary form and its associated documentation.
2. Subject to the terms and conditions of this License Agreement, PSF hereby grants Licensee a nonexclusive, royalty-free, world-wide license to reproduce, analyze, test, perform and/or display publicly, prepare derivative works, distribute, and otherwise use Python alone or in any derivative version, provided, however, that PSF's License Agreement and PSF's notice of copyright, i.e., "Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Python Software Foundation; All Rights Reserved" are retained in Python alone or in any derivative version prepared by Licensee.
3. In the event Licensee prepares a derivative work that is based on or incorporates Python or any part thereof, and wants to make the derivative work available to others as provided herein, then Licensee hereby agrees to include in any such work a brief summary of the changes made to Python.
4. PSF is making Python available to Licensee on an "AS IS" basis. PSF MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, PSF MAKES NO AND DISCLAIMS ANY REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF PYTHON WILL NOT INFRINGE ANY THIRD PARTY RIGHTS.
5. PSF SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF PYTHON FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS AS A RESULT OF MODIFYING, DISTRIBUTING, OR OTHERWISE USING PYTHON, OR ANY DERIVATIVE THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF.
6. This License Agreement will automatically terminate upon a material breach of its terms and conditions.
7. Nothing in this License Agreement shall be deemed to create any relationship of agency, partnership, or joint venture between PSF and Licensee. This License Agreement does not grant permission to use PSF trademarks or trade name in a trademark sense to endorse or promote products or services of Licensee, or any third party.
8. By copying, installing or otherwise using Python, Licensee agrees to be bound by the terms and conditions of this License Agreement.
SPHDE (EPL)
Copyright (c) 2012 IBM Corporation
Distributed through the Eclipse Public License 1.0. The source code for this project is available on GitHub.
ZLIB Compression Library
(C) 1995-2013 Jean-loup Gailly and Mark Adler
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
arising from the use of this software.
Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute it
freely, subject to the following restrictions:
1. The origin of this software must not be misrepresented; you must not
claim that you wrote the original software. If you use this software
in a product, an acknowledgment in the product documentation would be
appreciated but is not required.
2. Altered source versions must be plainly marked as such, and must not be
misrepresented as being the original software.
3. This notice may not be removed or altered from any source distribution.
PVEC Library (Apache License 2.0)
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
1. Definitions.
"License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document.
"Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License.
"Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity.
"You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License.
"Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files.
"Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types.
"Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below).
"Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof.
"Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution."
"Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work.
2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form.
3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed.
4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions:
- You must give any other recipients of the Work or Derivative Works a copy of this License; and
- You must cause any modified files to carry prominent notices stating that You changed the files; and
- You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and
- If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License.
You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License.
5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions.
6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file.
7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License.
8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages.
9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability.
END OF TERMS AND CONDITIONS
NX GZIP library (Apache License 2.0)
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
1. Definitions.
"License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document.
"Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License.
"Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity.
"You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License.
"Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files.
"Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types.
"Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below).
"Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof.
"Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution."
"Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work.
2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form.
3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed.
4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions:
- You must give any other recipients of the Work or Derivative Works a copy of this License; and
- You must cause any modified files to carry prominent notices stating that You changed the files; and
- You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and
- If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License.
You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License.
5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions.
6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file.
7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License.
8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages.
9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability.
END OF TERMS AND CONDITIONS