aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2020-12-30libgo: update to Go1.16beta1 releaseIan Lance Taylor1189-30824/+67411
This does not yet include support for the //go:embed directive added in this release. * Makefile.am (check-runtime): Don't create check-runtime-dir. (mostlyclean-local): Don't remove check-runtime-dir. (check-go-tool, check-vet): Copy in go.mod and modules.txt. (check-cgo-test, check-carchive-test): Add go.mod file. * Makefile.in: Regenerate. Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/280172
2020-12-30i386: Remove unnecessary clobbers from combine splitters.Uros Bizjak1-37/+24
There is no need for combine splitters to emit insn patterns with clobbers, the pass is smart enough to add clobbers to patterns as necessary. 2020-12-30 Uroš Bizjak <ubizjak@gmail.com> gcc/ * config/i386/i386.md: Remove unnecessary clobbers from combine splitters.
2020-12-30d: Simplify quoting characters in deps_add_targetIain Buclaw1-4/+13
The implementation in d-lang.cc was based on what was present in libcpp. This synchronizes the escaping logic to match the current version. gcc/d/ChangeLog: * d-lang.cc (deps_add_target): Handle quoting ':' character. Reimplement backslash tracking.
2020-12-30d: Give the result of evaluated expressions a locationIain Buclaw4-12/+13
CST trees that were converted back to a D front-end AST node lost all location information of the original expression. Now this is propagated on to the literal expression. gcc/d/ChangeLog: * d-tree.h (d_eval_constant_expression): Add location argument. * d-builtins.cc (d_eval_constant_expression): Give generated constants a proper file location. * d-compiler.cc (Compiler::paintAsType): Pass expression location to d_eval_constant_expression. * d-frontend.cc (eval_builtin): Likewise.
2020-12-30i386: Optimize pmovmskb on inverted vector to inversion of pmovmskb result ↵Jakub Jelinek3-0/+151
[PR98461] The following patch adds combine splitters to optimize: - vpcmpeqd %ymm1, %ymm1, %ymm1 - vpandn %ymm1, %ymm0, %ymm0 vpmovmskb %ymm0, %eax + notl %eax etc. (for vectors with less than 32 elements with xorl instead of notl). 2020-12-30 Jakub Jelinek <jakub@redhat.com> PR target/98461 * config/i386/sse.md (<sse2_avx2>_pmovmskb): Add splitters for pmovmskb of NOT vector. * gcc.target/i386/sse2-pr98461.c: New test. * gcc.target/i386/avx2-pr98461.c: New test.
2020-12-30Daily bump.GCC Administrator4-1/+77
2020-12-29Fortran: Correct missing structure constructor comps. [PR97612].Paul Thomas2-11/+42
2020-12-29 Paul Thomas <pault@gcc.gnu.org> gcc/fortran PR fortran/97612 * primary.c (build_actual_constructor): Missing allocatable components are set unallocated using EXPR_NULL. Then missing components are tested for a default initializer. gcc/testsuite/ PR fortran/97612 * gfortran.dg/structure_constructor_17.f90: New test.
2020-12-29Fortran: Fix deferred character lengths in array constructors [PR93833].Paul Thomas2-0/+30
2020-12-29 Paul Thomas <pault@gcc.gnu.org> gcc/fortran PR fortran/93833 * trans-array.c (get_array_ctor_var_strlen): If the character length backend_decl cannot be found, convert the expression and use the string length. Clear up some minor white space issues in the rest of the file. gcc/testsuite/ PR fortran/93833 * gfortran.dg/deferred_character_36.f90 : New test.
2020-12-29arc: generate mac(u) insn instead of macd(u) when destination is acclClaudiu Zissulescu1-10/+14
Generate MAC(U) instruction instead of MACD(U) when the destination register is already choosen as ACCL register. gcc/ 2020-12-29 Claudiu Zissulescu <claziss@synopsys.com> * config/arc/arc.md (maddsidi4_split): Skip macd gen, use mac insn instead. (macd): Update register letters. (umaddsidi4_split): Skip macdu gen, use macu insn instead. (macdu): Update register letters. Signed-off-by: Claudiu Zissulescu <claziss@synopsys.com>
2020-12-29arc: flip if-condition predicates in secondary reload hookClaudiu Zissulescu1-1/+1
The ARC code contains code which should only work with the old reload pass. Such code is found in arc_secondary_reload hook, however it was not properly quarded. Reverse the if-condition predicate such that req_equiv_mem is called when lra is not in progress. gcc/ 2020-12-29 Claudiu Zissulescu <claziss@synopsys.com> * config/arc/arc.c (arc_secondary_reload): Flip if-condition predicates. Signed-off-by: Claudiu Zissulescu <claziss@synopsys.com>
2020-12-29arc: Make use reg_renumber safe.Claudiu Zissulescu1-1/+1
The REGNO_OK_FOR_BASE_P is using reg_renumber array. However, it is not always defined. Use it only when it is defined. gcc/ 2020-12-29 Claudiu Zissulescu <claziss@synopsys.com> * config/arc/arc.h (REGNO_OK_FOR_BASE_P): Check if defined reg_renumber. Signed-off-by: Claudiu Zissulescu <claziss@synopsys.com>
2020-12-29arc: Update test pattern.Claudiu Zissulescu1-1/+1
gcc/testsuite 2020-12-29 Claudiu Zissulescu <claziss@synopsys.com> * gcc.target/arc/loop-3.c: Update test pattern. Signed-off-by: Claudiu Zissulescu <claziss@synopsys.com>
2020-12-29arc: Fix cached to uncached moves.Claudiu Zissulescu2-2/+49
We need an temporary register when moving data from a cached memory to an uncached memory. Fix this issue and add a test for it. gcc/ 2020-12-29 Claudiu Zissulescu <claziss@synopsys.com> * config/arc/arc.c (prepare_move_operands): Use a temporary registers when we have cached mem-to-uncached mem moves. gcc/testsuite/ 2020-12-29 Vladimir Isaev <isaev@synopsys.com> * gcc.target/arc/uncached-9.c: New test. Signed-off-by: Claudiu Zissulescu <claziss@synopsys.com>
2020-12-29arc: Don't use predicated vadd2 instructions in mov patterns.Claudiu Zissulescu2-5/+5
Update movdi, movdf and mov vectors not to use predicated vadd2 instructions. vadd2 is used as a "fast" move in these patterns. This fixes a number of failures in dejagnu. gcc/ 2020-12-29 Claudiu Zissulescu <claziss@synopsys.com> * config/arc/arc.md (movdi_insn): Update pattern, no predicated vadd2 usage. (movdf_insn): Likewise. * config/arc/simdext.md (movVEC_insn): Likewise. Signed-off-by: Claudiu Zissulescu <claziss@synopsys.com>
2020-12-29i386: Rounding functions TLCUros Bizjak1-66/+64
Use copy_to_reg where appropriate, use int_mode_for_mode and fix comment indentation. 2020-12-29 Uroš Bizjak <ubizjak@gmail.com> gcc/ * config/i386/i386-expand.c (ix86_gen_TWO52): Use REAL_MODE_FORMAT to determine number of mantissa bits. Use real_2expN instead of real_ldexp. (ix86_expand_rint): Use copy_to_reg. (ix86_expand_floorceildf_32): Ditto. (ix86_expand_truncdf_32): Ditto. (ix86_expand_rounddf_32): Ditto. (ix86_expand_floorceil): Use copy_to_reg and int_mode_for_mode. (ix86_expand_trunc): Ditto. (ix86_expand_round): Ditto.
2020-12-29Daily bump.GCC Administrator4-1/+54
2020-12-28libgomp: Avoid bad "up" link in libgomp docsGerald Pfeifer1-1/+1
The libgomp texinfo docs lead to an invalid "up" link on the Top node, which we can avoid similarly to the Top link in the main GCC manual. 2020-12-28 Sandra Loosemore <sandra@codesourcery.com> libgomp/ * libgomp.texi (Top): Avoid bad "up" link.
2020-12-28doc: Remove HSAIL from Language StandardsGerald Pfeifer1-8/+0
Support for HSAIL has been deprecated with GCC 10 and their web server has been down for weeks. gcc/ 2020-12-28 Gerald Pfeifer <gerald@pfeifer.com> * doc/standards.texi (HSAIL): Remove section.
2020-12-28i386: Fix __builtin_rint with FE_DOWNWARD rounding direction [PR96793]Uros Bizjak2-7/+37
x86_expand_rint expander uses x86_sse_copysign_to_positive, which is unable to change the sign from - to +. When FE_DOWNWARD rounding direction is in effect, the expanded sequence that involves subtraction can trigger x - x = -0.0 special rule. x86_sse_copysign_to_positive fails to change the sign of the intermediate value, assumed to always be positive, back to positive. The patch adds one extra fabs that strips the sign from the intermediate value when flag_rounding_math is in effect. 2020-12-28 Uroš Bizjak <ubizjak@gmail.com> gcc/ PR target/96793 * config/i386/i386-expand.c (ix86_expand_rint): Remove the sign of the intermediate value for flag_rounding_math. gcc/testsuite/ PR target/96793 * gcc.target/i386/pr96793-2.c: New test.
2020-12-28i386: Use existing temporary register in rounding functionsUros Bizjak1-5/+7
It is possible to avoid the call to force_reg and use existing temporary register in ix86_expand_trunc, ix86_expand_round and ix86_expand_rounddf_32 expanders. 2020-12-28 Uroš Bizjak <ubizjak@gmail.com> gcc/ * config/i386/i386-expand.c (ix86_expand_trunc): Use existing temporary register to avoid a call to force_reg.
2020-12-28Fix standard name for zero/sign extend expandersHongyu Wang5-18/+642
gcc/ChangeLog: * config/i386/i386.md (optab): New code attr. * config/i386/sse.md (<code>v32qiv32hi2): Rename to ... (<optab>v32qiv32hi2) ... this. (<code>v16qiv16hi2): Likewise. (<code>v8qiv8hi2): Likewise. (<code>v16qiv16si2): Likewise. (<code>v8qiv8si2): Likewise. (<code>v4qiv4si2): Likewise. (<code>v16hiv16si2): Likewise. (<code>v8hiv8si2): Likewise. (<code>v4hiv4si2): Likewise. (<code>v8qiv8di2): Likewise. (<code>v4qiv4di2): Likewise. (<code>v2qiv2di2): Likewise. (<code>v8hiv8di2): Likewise. (<code>v4hiv4di2): Likewise. (<code>v2hiv2di2): Likewise. (<code>v8siv8di2): Likewise. (<code>v4siv4di2): Likewise. (<code>v2siv2di2): Likewise. gcc/testsuite/ChangeLog: * gcc.target/i386/pr92658-avx2-2.c: New test. * gcc.target/i386/pr92658-avx512bw-2.c: Likewise. * gcc.target/i386/pr92658-sse4-2.c: Likewise.
2020-12-28Daily bump.GCC Administrator5-1/+38
2020-12-27doc: New source for "Memory Model for Static Analysis" paperGerald Pfeifer1-1/+1
gcc: 2020-12-27 Gerald Pfeifer <gerald@pfeifer.com> * doc/analyzer.texi (Analyzer Internals): Find a new source for the "A Memory Model for Static Analysis of C Programs" paper.
2020-12-27libstdc++: Update link to Arm ABIGerald Pfeifer2-2/+2
libstdc++-v3: 2020-12-27 Gerald Pfeifer <gerald@pfeifer.com> * doc/xml/manual/abi.xml: Update link to Arm ABI. * doc/html/manual/abi.html: Regenerate.
2020-12-27Fix regressions for iq2000-elf after recent changesJeff Law2-0/+8
gcc/testsuite * gcc.dg/tree-ssa/asm-2.c: Use different register for iq2000. * gcc.dg/tree-ssa/asm-3.c: Likewise.
2020-12-27Fortran: Fix some select rank issues [PR97694 and 97723].Paul Thomas4-9/+55
2020-12-27 Paul Thomas <pault@gcc.gnu.org> gcc/fortran PR fortran/97694 PR fortran/97723 * check.c (allocatable_check): Select rank temporaries are permitted even though they are treated as associate variables. * resolve.c (gfc_resolve_code): Break on select rank as well as select type so that the block os resolved. * trans-stmt.c (trans_associate_var): Class associate variables that are optional dummies must use the backend_decl. gcc/testsuite/ PR fortran/97694 PR fortran/97723 * gfortran.dg/select_rank_5.f90: New test.
2020-12-27libstdc++: Move Valgrind references to httpsGerald Pfeifer2-4/+4
libstdc++-v3: 2020-12-27 Gerald Pfeifer <gerald@pfeifer.com> * doc/xml/manual/debug.xml: Move Valgrind references to https. * doc/html/manual/debug.html: Regenerate.
2020-12-27Daily bump.GCC Administrator4-1/+43
2020-12-26Objective-C++ : Fix up testcase EOF diagnostics.Iain Sandoe4-4/+4
Some Objective-C++ testcases need modification in reponse to the solution to PR 96045. gcc/testsuite/ChangeLog: PR c++/96045 * obj-c++.dg/property/property-neg-6.mm: Adjust EOF diagnostic location. * obj-c++.dg/syntax-error-10.mm: Likewise. * obj-c++.dg/syntax-error-8.mm: Likewise. * obj-c++.dg/syntax-error-9.mm: Likewise.
2020-12-26Fortran: Correction to recent patch in light of comments [PR98022].Paul Thomas2-32/+61
2020-12-26 Paul Thomas <pault@gcc.gnu.org> gcc/fortran PR fortran/98022 * data.c (gfc_assign_data_value): Throw an error for inquiry references. Follow with corrected code that would provide the expected result and provides clean error recovery. gcc/testsuite/ PR fortran/98022 * gfortran.dg/data_inquiry_ref.f90: Change to dg-compile and add errors for inquiry references.
2020-12-26Fix failures with -m32 and some memory leaks.Paul Thomas3-5/+47
2020-12-23 Paul Thomas <pault@gcc.gnu.org> gcc/fortran PR fortran/83118 * trans-array.c (gfc_alloc_allocatable_for_assignment): Make sure that class expressions are captured for dummy arguments by use of gfc_get_class_from_gfc_expr otherwise the wrong vptr is used. * trans-expr.c (gfc_get_class_from_gfc_expr): New function. (gfc_get_class_from_expr): If a constant expression is encountered, return NULL_TREE; (gfc_trans_assignment_1): Deallocate rhs allocatable components after passing derived type function results to class lhs. * trans.h : Add prototype for gfc_get_class_from_gfc_expr.
2020-12-26libstdc++: Update link to Intel/GNU compatibility paperGerald Pfeifer2-2/+2
libstdc++-v3: 2020-12-26 Gerald Pfeifer <gerald@pfeifer.com> * doc/xml/manual/abi.xml: Update link to Intel's compatibility with GNU compilers document. * doc/html/manual/abi.html: Regenerate.
2020-12-26Daily bump.GCC Administrator5-1/+29
2020-12-25libstdc++: Update link to Java docsGerald Pfeifer2-2/+2
libstdc++-v3: 2020-12-25 Gerald Pfeifer <gerald@pfeifer.com> * doc/xml/manual/messages.xml: Update link to Java docs. * doc/html/manual/facets.html: Ditto.
2020-12-25doc: Fix reference to libcodyGerald Pfeifer1-1/+1
github.com requests (via 301 Moved Permanently) to use gibhub.com, not www.github.com. gcc/ChangeLog: 2020-12-25 Gerald Pfeifer <gerald@pfeifer.com> * doc/invoke.texi (C++ Module Mapper): Fix reference to libcody.
2020-12-25PR93685 - ICE in gfc_constructor_append_expr, at fortran/constructor.c:135Harald Anlauf4-9/+48
Fix handling of F2018 enhancements to DATA statements that allows initialization of pointer components to derived types, and adjust error handling for the CHARACTER case. gcc/fortran/ChangeLog: * data.c (gfc_assign_data_value): Restrict use of create_character_initializer to constant initializers. * trans-expr.c (gfc_conv_initializer): Ensure that character initializer is constant, otherwise fall through to get the same error handling as for non-character cases. gcc/testsuite/ChangeLog: * gfortran.dg/pr93685_1.f90: New test. * gfortran.dg/pr93685_2.f90: New test.
2020-12-25libstdc++: Convert three doxygen.nl links to httpsGerald Pfeifer2-6/+6
libstdc++-v3: 2020-12-25 Gerald Pfeifer <gerald@pfeifer.com> * doc/xml/manual/documentation_hacking.xml: Convert three links to doxygen.nl to https. * doc/html/manual/documentation_hacking.html: Regenerate.
2020-12-25Daily bump.GCC Administrator4-1/+34
2020-12-24C++ : Add the -stdlib= option.Iain Sandoe10-13/+216
This option allows the user to specifiy alternate C++ runtime libraries, for example when a platform uses libc++ as the installed C++ runtime. We introduce the command line option: -stdlib= which is the user-facing mechanism to select the C++ runtime to be used when compiling and linking code. This is the same option spelling as that used by clang to allow the use of libstdc++. The availability (and thus function) of the option are a configure-time choice using the configuration control: --with-gxx-libcxx-include-dir= Specification of the path for the libc++ headers, enables the -stdlib= option (using the path as given), default values are set when the path is unconfigured. If --with-gxx-libcxx-include-dir is given together with --with-sysroot=, then we test to see if the include path starts with the sysroot and, if so, record the sysroot-relative component as the local path. At runtime, we prepend the sysroot that is actually active. At link time, we use the C++ runtime in force and (if that is libc++) also append the libc++abi ABI library. As for other cases, if a target sets the name pointer for the ABI library to NULL the G++ driver will omit it from the link line. gcc/ChangeLog: * configure.ac: Add gxx-libcxx-include-dir handled in the same way as the regular cxx header directory. * Makefile.in: Regenerated. * config.in: Likewise. * configure: Likewise. * cppdefault.c: Pick up libc++ headers if the option is enabled. * cppdefault.h (struct default_include): Amend comments to reflect the extended use of the cplusplus field. * incpath.c (add_standard_paths): Allow for multiple c++ header include path variants. * doc/invoke.texi: Document the -stdlib= option. gcc/c-family/ChangeLog: * c.opt: Add -stdlib= option and enumerations for libstdc++ and libc++. gcc/cp/ChangeLog: * g++spec.c (LIBCXX, LIBCXX_PROFILE, LIBCXX_STATIC): New. (LIBCXXABI, LIBCXXABI_PROFILE, LIBCXXABI_STATIC): New. (enum stdcxxlib_kind): New. (lang_specific_driver): Allow selection amongst multiple c++ runtime libraries.
2020-12-24RISC-V: Fix python3 compatibility for multilib-generatorKito Cheng1-1/+1
The subprocess return string is raw bytes in python3, it must decode before used as string, verifed with python2 and python3. gcc/ChangeLog: * config/riscv/multilib-generator (arch_canonicalize): Call decode for the subprocess return value.
2020-12-23compiler: parenthesize channel type strings if necessaryIan Lance Taylor2-1/+16
Avoid the ambiguity between "chan <- (chan int)" and "chan (<- chan int)". This parenthesizes the same way as the gc compiler. Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/279961
2020-12-24Daily bump.GCC Administrator8-1/+177
2020-12-23PR middle-end/98160 - ICE in warn_dealloc_offset on member placement new and ↵Martin Sebor2-1/+33
delete gcc/ChangeLog: PR middle-end/98160 * builtins.c (warn_dealloc_offset): Avoid assuming calls are made through declared functions and not pointers. gcc/testsuite/ChangeLog: PR middle-end/98160 * g++.dg/warn/pr98160.C: New test.
2020-12-23PR c++/98413 - ICE on placement new and member pointerMartin Sebor2-0/+26
gcc/ChangeLog: PR c++/98413 * builtins.c (get_offset_range): Avoid non-integers/-pointers. gcc/testsuite/ChangeLog: PR c++/98413 * g++.dg/warn/pr98413.C: New test.
2020-12-23Account for VxWorks headers in libstdc++ test on namesOlivier Hainque1-0/+41
Undefine various macros unexpectedly defined by VxWorks headers. for libstdc++-v3/ChangeLog * testsuite/17_intro/names.cc: Account for VxWorks headers.
2020-12-23mark some tests in gcc.target/arm as requiring "fpic" supportJoel Brobecker8-8/+16
Require effective target fpic support in tests using pic flags. for gcc/testsuite/ChangeLog * gcc.target/arm/data-rel-1.c: Require "fpic" support. * gcc.target/arm/data-rel-2.c: Likewise. * gcc.target/arm/data-rel-3.c: Ditto. * gcc.target/arm/pr44788.c: Ditto. * gcc.target/arm/pr52006.c: Ditto. * gcc.target/arm/pr59858.c: Ditto. * gcc.target/arm/tlscall.c: Ditto. * gcc.target/arm/require-pic-register-loc.c: Ditto. Adjust line numbers.
2020-12-23c++: EOF location [PR 96045]Nathan Sidwell48-60/+59
Setting the EOF token location to be the start of a line just after the ending newline is not most helpful. While that location is probably the right place to report preprocessing and lexing issues, when parsing, the location just after the last token is better. That way we get to point at some actual text. Setting the location from the previous token has the advantage over just setting the location to be the end of the final line, in that any ending comments do not get considered, which I think is better. PR c++/96045 gcc/cp/ * parser.c (cp_lexer_new_main): Adjust EOF token location. gcc/testsuite/ * g++.dg/diagnostic/pr96045-1.C: New. * g++.dg/diagnostic/pr96045-2.C: New. * g++.dg/diagnostic/pr96045-3.C: New. * c-c++-common/goacc/pr79428-1.c: Adjust EOF diagnostic location. * c-c++-common/gomp/pr79428-2.c: Likewise * c-c++-common/raw-string-6.c: Likewise * g++.dg/cpp0x/decltype63.C: Likewise * g++.dg/cpp0x/gen-attrs-64.C: Likewise * g++.dg/cpp0x/pr68726.C: Likewise * g++.dg/cpp0x/pr78341.C: Likewise * g++.dg/cpp1y/pr65202.C: Likewise * g++.dg/cpp1y/pr65340.C: Likewise * g++.dg/cpp1y/pr68578.C: Likewise * g++.dg/cpp1z/class-deduction44.C: Likewise * g++.dg/diagnostic/unclosed-extern-c.C: Likewise * g++.dg/diagnostic/unclosed-function.C: Likewise * g++.dg/diagnostic/unclosed-namespace.C: Likewise * g++.dg/diagnostic/unclosed-struct.C: Likewise * g++.dg/ext/pr84598.C: Likewise * g++.dg/other/switch4.C: Likewise * g++.dg/parse/attr4.C: Likewise * g++.dg/parse/cond4.C: Likewise * g++.dg/parse/crash10.C: Likewise * g++.dg/parse/crash18.C: Likewise * g++.dg/parse/crash27.C: Likewise * g++.dg/parse/crash34.C: Likewise * g++.dg/parse/crash35.C: Likewise * g++.dg/parse/crash52.C: Likewise * g++.dg/parse/crash59.C: Likewise * g++.dg/parse/crash61.C: Likewise * g++.dg/parse/crash67.C: Likewise * g++.dg/parse/error14.C: Likewise * g++.dg/parse/error56.C: Likewise * g++.dg/parse/invalid1.C: Likewise * g++.dg/parse/parameter-declaration-1.C: Likewise * g++.dg/parse/parser-pr28152-2.C: Likewise * g++.dg/parse/parser-pr28152.C: Likewise * g++.dg/parse/pr68722.C: Likewise * g++.dg/parse/pr96258.C: Likewise * g++.dg/pr46852.C: Likewise * g++.dg/pr46868.C: Likewise * g++.dg/template/crash115.C: Likewise * g++.dg/template/crash43.C: Likewise * g++.dg/template/crash90.C: Likewise * g++.dg/template/error-recovery1.C: Likewise * g++.dg/template/error57.C: Likewise * g++.old-deja/g++.other/crash31.C: Likewise
2020-12-23c++: Fix initializing empty base from prvalue [PR97597]Jason Merrill4-2/+52
unsafe_return_slot_p wasn't recognizing an empty base as potentially-overlapping, which it definitely is. The change to build_base_path is to make the virtual conversion also recognized by is_empty_base_ref; unsafe_return_slot_p doesn't to handle virtual conversions, but hypothetical future callers might. gcc/cp/ChangeLog: PR c++/97597 * class.c (is_empty_base_ref): New. (build_base_path): Add NOP_EXPR after offset. * cp-tree.h (is_empty_base_ref): Declare it. * call.c (unsafe_return_slot_p): Call it. gcc/testsuite/ChangeLog: PR c++/97597 * g++.dg/init/empty3.C: New test.
2020-12-23compiler: nil-checked pointers and index expressions can trapIan Lance Taylor2-7/+5
The compiler was treating indirections through pointers that had been explicitly checked against nil and slice and string index expressions as non-trapping memory references. That is true for ordinary Go programs, but it isn't true if the programs construct their own memory addresses. In particular it isn't true for the kinds of programs that want to use runtime.SetPanicOnFault. The effect of this will be slightly larger binaries, due to additional exception information, and perhaps slightly less optimization. Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/279960
2020-12-23c++: Improve testcase [PR98332]Jason Merrill1-1/+3
gcc/testsuite/ChangeLog: * g++.dg/cpp0x/constexpr-overflow3.C: Use INT_MAX.