- 05 Apr, 2018 25 commits
-
-
* include/std/variant (_VARIANT_RELATION_FUNCTION_TEMPLATE): Qualify __get calls to avoid ADL and avoid ambiguity due to Clang bug. From-SVN: r259135
Jonathan Wakely committed -
re PR target/85193 (ICE: SIGSEGV in memory_operand at recog.c:1361 with -O2 -fno-tree-ccp -fno-tree-fre -mno-sse) PR target/85193 * config/i386/i386.md (define_attr "memory"): Handle rotate1 type. testsuite/ChangeLog: PR target/85193 * gcc.target/i386/pr85193.c: New test. From-SVN: r259134
Uros Bizjak committed -
* pt.c (do_class_deduction): Ignore inherited ctors. From-SVN: r259133
Jason Merrill committed -
* decl2.c (cp_check_const_attributes): Use fold_non_dependent_expr. From-SVN: r259132
Jason Merrill committed -
* pt.c (bt_instantiate_type_proc): Don't assume CLASSTYPE_TEMPLATE_INFO is non-null. From-SVN: r259130
Jason Merrill committed -
gcc/cp Implement P0969 * decl.c (find_decomp_class_base): Check accessibility instead of declared access, adjust diagnostic. testsuite/ Implement P0969 * g++.dg/cpp1z/decomp4.C: Adjust. * g++.dg/cpp1z/decomp38.C: New. From-SVN: r259129
Ville Voutilainen committed -
gcc/cp Implement P0961 * decl.c (get_tuple_decomp_init): Check the templatedness of a member get. testsuite/ Implement P0961 * g++.dg/cpp1z/decomp10.C: Adjust. * g++.dg/cpp1z/decomp37.C: New. From-SVN: r259128
Ville Voutilainen committed -
* pt.c (extract_locals_r): Don't record the local specs of variables declared within the pattern. From-SVN: r259127
Jason Merrill committed -
2018-04-05 Tom de Vries <tom@codesourcery.com> PR target/85204 * config/nvptx/nvptx.c (nvptx_single): Fix neutering of bb with only cond jump. * testsuite/libgomp.oacc-c-c++-common/broadcast-1.c: New test. From-SVN: r259125
Tom de Vries committed -
With concepts, we accept auto in explicit template arguments, but we should only accept them for template classes. Passing them to template functions or variables is not allowed. So, reject it, at parse time if possible, at specialization time otherwise. for gcc/cp/ChangeLog PR c++/84979 * pt.c (check_auto_in_tmpl_args): New. (tsubst_qualified_id): Use it to reject template args referencing auto for non-type templates. * parser.c (cp_parser_template_id): Likewise. * cp-tree.h (check_auto_in_tmpl_args): Declare. * typeck2.c (build_functional_cast): Report correct location for invalid use of auto. for gcc/testsuite/ChangeLog PR c++/84979 * g++.dg/concepts/pr84979.C: New. * g++.dg/concepts/pr84979-2.C: New. * g++.dg/concepts/pr84979-3.C: New. From-SVN: r259124
Alexandre Oliva committed -
* call.c (merge_conversion_sequences): Fix type of direct binding sequence. From-SVN: r259123
Jason Merrill committed -
gcc/ * config/nds32/constraints.md (U33): Fine-tune checking condition. * config/nds32/nds32-md-auxiliary.c (nds32_mem_format): Ditto. * config/nds32/nds32.h (nds32_16bit_address_type): Add ADDRESS_POST_MODIFY_LO_REG_IMM3U. Co-Authored-By: Kito Cheng <kito.cheng@gmail.com> From-SVN: r259122
Shiva Chen committed -
gcc/ * config/nds32/constraints.md (Ufe): New memory constraint. * config/nds32/nds32-md-auxiliary.c (nds32_mem_format, nds32_output_16bit_load): Consider r8 register for lwi45.fe format. * config/nds32/nds32.c (nds32_print_operand): Output lwi45.fe operands. * config/nds32/nds32.h (nds32_16bit_address_type): Add ADDRESS_R8_IMM7U. * config/nds32/nds32.md (*mov<mode>): Adjust pattern. Co-Authored-By: Kito Cheng <kito.cheng@gmail.com> From-SVN: r259121
Shiva Chen committed -
gcc/ * config/nds32/nds32.md: Use optimize_size in the condition for alu-shift instructions. From-SVN: r259120
Chung-Ju Wu committed -
gcc/ * config/nds32/nds32.md (divsi4, udivsi4): New patterns. From-SVN: r259119
Chung-Ju Wu committed -
gcc/ * config/nds32/nds32.md (negsi2): Refine pattern. From-SVN: r259118
Chung-Ju Wu committed -
gcc/ * config/nds32/iterators.md (shift_rotate): New code iterator. (shift): New code attribute. * config/nds32/nds32-md-auxiliary.c (nds32_expand_constant): New. * config/nds32/nds32-protos.h (nds32_expand_constant): Declare. * config/nds32/nds32.c (nds32_print_operand): Deal with more cases. * config/nds32/nds32.md (addsi3, *add_srli): Refine implementation for bit-wise operations. (andsi3, *andsi3): Ditto. (iorsi3, *iorsi3, *or_slli, *or_srli): Ditto. (xorsi3, *xorsi3, *xor_slli, *xor_srli): Ditto. (<shift>si3, *ashlsi3, *ashrsi3, *lshrsi3, *rotrsi3): Ditto. * config/nds32/predicates.md (nds32_rimm5u_operand, nds32_and_operand, nds32_ior_operand, nds32_xor_operand): New predicates. Co-Authored-By: Chung-Ju Wu <jasonwucj@gmail.com> From-SVN: r259117
Kito Cheng committed -
gcc/ * config/nds32/nds32.md (add<mode>3, sub<mode>3): Rename to ... (addsi3, subsi3): ... this. From-SVN: r259116
Chung-Ju Wu committed -
gcc/ * config/nds32/nds32.md (*sub_srli, *and_slli): Fine-tune predicator. From-SVN: r259115
Chung-Ju Wu committed -
gcc/ * config/nds32/nds32.md: Adjust indention. From-SVN: r259114
Chung-Ju Wu committed -
gcc/ * config/nds32/nds32.md (feature): New attribute. From-SVN: r259113
Kito Cheng committed -
gcc/ * config/nds32/nds32.md (subtype): New attribute. From-SVN: r259112
Chung-Ju Wu committed -
From-SVN: r259111
GCC Administrator committed -
* call.c (set_up_extended_ref_temp): Call cp_fully_fold. From-SVN: r259108
Jason Merrill committed -
* parser.c (cp_parser_mem_initializer_list): Call check_for_bare_parameter_packs. From-SVN: r259107
Jason Merrill committed
-
- 04 Apr, 2018 15 commits
-
-
PR c++/84221 * g++.dg/warn/Wunused-var-32.C: Test explicit specialization. From-SVN: r259106
Jason Merrill committed -
re PR c++/80026 ([pending testcase installation] passing unresolved function pointer to variadic function template yields "too many arguments" error) 2018-04-04 Paolo Carlini <paolo.carlini@oracle.com> PR c++/80026 * g++.dg/cpp0x/variadic174.C: New. From-SVN: r259105
Paolo Carlini committed -
re PR inline-asm/85172 (internal compiler error: unexpected expression '<statement>' of kind asm_expr) PR inline-asm/85172 * constexpr.c (cxx_eval_builtin_function_call): For calls to builtin_valid_in_constant_expr_p functions, don't call cxx_eval_constant_expression if argument is not potential_constant_expression. * g++.dg/ext/builtin13.C: New test. * g++.dg/ext/atomic-4.C: New test. From-SVN: r259104
Jakub Jelinek committed -
PR c++/85146 * cp-tree.h (calculate_bases, calculate_direct_bases): Add complain argument. * semantics.c (calculate_bases): Add complain argument. Use complete_type_or_maybe_complain instead of just complete_type and return an empty vector if it fails. Move make_tree_vector () call after early return. Formatting fixes. (calculate_direct_bases): Likewise. Call release_tree_vector at the end. (dfs_calculate_bases_post, calculate_bases_helper): Formatting fixes. * pt.c (tsubst_pack_expansion): Adjust calculate_bases and calculate_direct_bases callers, formatting fixes. * g++.dg/ext/bases2.C: Expect extra error diagnostics. * g++.dg/ext/bases3.C: New test. From-SVN: r259101
Jakub Jelinek committed -
* pt.c (tsubst_pack_expansion): Allow unsubstituted auto pack. From-SVN: r259100
Jason Merrill committed -
* tree.c (cp_walk_subtrees): Walk into DECL_EXPR in templates. From-SVN: r259099
Jason Merrill committed -
* decl2.c (is_late_template_attribute): Handle unused and used normally on non-TYPE_DECL. From-SVN: r259098
Jason Merrill committed -
__builtin_cmse_nonsecure_caller implementation returns true in almost all cases due to 2 separate bugs: * gen_addsi is used instead of gen_andsi to retrieve the lsb * the lsb boolean value is not negated but the specification says the intrinsic should return true for a nonsecure caller and a nonsecure caller is characterized with LR's lsb being 0 This was not caught due to (1) lack of runtime test and (2) the existing RTL scan not taking into account that '.' matches newline in Tcl regular expressions. This commit fixes the implementation issues and improves testing of cmse_nonsecure_caller by (1) adding a runtime test for the secure caller case and (2) looking for an SET insn of an AND expression in the right function. This leaves the nonsecure caller case only partly tested since the exact value being AND and the negation are not covered by the scan and the existing test infrastructure does not allow 2 separate compilation and link to be performed. It is enough though to catch the current incorrect behavior. The commit also reorganize the scan directives in cmse-1.c to more easily identify what function they are intended to test in the file. 2018-04-04 Thomas Preud'homme <thomas.preudhomme@arm.com> gcc/ PR target/85203 * config/arm/arm-builtins.c (arm_expand_builtin): Change expansion to perform a bitwise AND of the argument followed by a boolean negation of the result. gcc/testsuite/ PR target/85203 * gcc.target/arm/cmse/cmse-1.c: Tighten cmse_nonsecure_caller RTL scan to match a single insn of the baz function. Move scan directives at the end of the file below the functions they are trying to test for better readability. * gcc.target/arm/cmse/cmse-16.c: New testcase. From-SVN: r259097
Thomas Preud'homme committed -
PR other/85161 * elf.c (elf_zlib_fetch): Fix up predefined macro names in test for big endian, only use 32-bit loads if endianity macros are predefined and indicate big or little endian. From-SVN: r259096
Jakub Jelinek committed -
* decl.c (grokdeclarator): Catch deduced class type in trailing return type. From-SVN: r259092
Jason Merrill committed -
* decl.c (cp_finish_decl): If a concept initializer is missing, use true. From-SVN: r259091
Jason Merrill committed -
* call.c (add_template_conv_candidate): Disable if there are any call operators. From-SVN: r259090
Jason Merrill committed -
* typeck.c (cp_build_modify_expr): Call decay_conversion for RHS of compound assignment. From-SVN: r259089
Jason Merrill committed -
* tree.c (replace_placeholders_r): Use handled_component_p. From-SVN: r259088
Jason Merrill committed -
PR c++/65923 gcc/cp PR c++/65923 * decl.c (grokfndecl): Handle standard UDL diagnostics here.. * parser.c (cp_parser_unqualified_id): ..not here. testsuite/ PR c++/65923 * g++.dg/diagnostic/pr65923.C: New. From-SVN: r259087
Ville Voutilainen committed
-