[Bug c++/61135] It seems to be not able to call virtual method of literal object in lambda expression
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61135 Paolo Carlini changed: What|Removed |Added Status|NEW |RESOLVED Resolution|--- |FIXED Target Milestone|--- |8.0 --- Comment #13 from Paolo Carlini --- Completely fixed in trunk.
[Bug c++/61135] It seems to be not able to call virtual method of literal object in lambda expression
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61135 --- Comment #12 from paolo at gcc dot gnu.org --- Author: paolo Date: Sat Mar 3 00:28:03 2018 New Revision: 258165 URL: https://gcc.gnu.org/viewcvs?rev=258165=gcc=rev Log: 2018-03-02 Paolo CarliniPR c++/61135 * g++.dg/cpp0x/lambda/lambda-61135.C: New. Added: trunk/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-61135.C Modified: trunk/gcc/testsuite/ChangeLog
[Bug c++/61135] It seems to be not able to call virtual method of literal object in lambda expression
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61135 --- Comment #11 from paolo at gcc dot gnu.org --- Author: paolo Date: Wed Sep 13 17:28:37 2017 New Revision: 252571 URL: https://gcc.gnu.org/viewcvs?rev=252571=gcc=rev Log: 2017-09-13 Paolo CarliniPR c++/61135 * g++.dg/cpp0x/lambda/lambda-ice18.C: New. * g++.dg/cpp1y/lambda-ice2.C: Likewise. Added: trunk/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice18.C trunk/gcc/testsuite/g++.dg/cpp1y/lambda-ice2.C Modified: trunk/gcc/testsuite/ChangeLog
[Bug c++/61135] It seems to be not able to call virtual method of literal object in lambda expression
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61135 Paolo Carlini changed: What|Removed |Added Keywords||accepts-invalid --- Comment #10 from Paolo Carlini --- Since 5.2.0 we accept the snippet in Comment 3, since 6.1.0 the snippet in Comment 6, thus I'm going to add to the testsuite both anyway. However, we also accept the original snippet, thus I'm keeping the bug open as accepts-invalid.
[Bug c++/61135] It seems to be not able to call virtual method of literal object in lambda expression
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61135 --- Comment #9 from lc289dafd7ybme05se at softbank dot ne.jp --- right. i don't know why, but templateclass is also needed, to invoke the error.
[Bug c++/61135] It seems to be not able to call virtual method of literal object in lambda expression
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61135 --- Comment #8 from Uroš Bizjak ubizjak at gmail dot com --- (In reply to lc289dafd7ybme05se from comment #7) 仮想継承の時もエラーになるみたいですね。 To save some clicking, Google translate said: It seems to be an error even when the virtual inheritance.
[Bug c++/61135] It seems to be not able to call virtual method of literal object in lambda expression
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61135 lc289dafd7ybme05se at softbank dot ne.jp changed: What|Removed |Added CC||lc289dafd7ybme05se@softbank ||.ne.jp --- Comment #6 from lc289dafd7ybme05se at softbank dot ne.jp --- below also doesn't work struct A { int funcA(){return 0;} }; templateclass struct B:virtual public A{ void funcB(){ [a=this-funcA()]{}; } }; int main() { BA b; b.funcB(); return 0; } //g++ 4.9.2 g++ -std=c++14 hd.cpp hd.cpp: In instantiation of ‘void B template-parameter-1-1 ::funcB() [with template-parameter-1-1 = A]’: hd.cpp:15:10: required from here hd.cpp:9:2: internal compiler error: in cp_genericize_r, at cp/cp-gimplify.c:1175 } ^
[Bug c++/61135] It seems to be not able to call virtual method of literal object in lambda expression
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61135 --- Comment #7 from lc289dafd7ybme05se at softbank dot ne.jp --- 仮想継承の時もエラーになるみたいですね。
[Bug c++/61135] It seems to be not able to call virtual method of literal object in lambda expression
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61135 Kai Tietz ktietz at gcc dot gnu.org changed: What|Removed |Added CC||ktietz at gcc dot gnu.org --- Comment #5 from Kai Tietz ktietz at gcc dot gnu.org --- No, I can still reproduce the ICE in make_decl_rtl, at varasm.c:1297 #2 0x007ae6e2 in make_decl_rtl (decl=decl@entry=0xffe80160) at ../../gcc/gcc/varasm.c:1293 #3 0x007fa975 in expand_expr_real_1 (exp=0xffe80160, target=optimized out, tmode=DImode, modifier=EXPAND_CONST_ADDRESS, alt_rtl=0x0, inner_reference_p=false) at ../../gcc/gcc/expr.c:9563 #4 0x008065d5 in expand_expr (modifier=optimized out, mode=DImode, target=0xfff670a0, exp=0xffe80160) at ../../gcc/gcc/expr.h:299 #5 expand_expr_addr_expr_1 (exp=exp@entry=0xffe80160, target=target@entry=0xfff670a0, tmode=tmode@entry=DImode, modifier=modifier@entry=EXPAND_NORMAL, as=as@entry=0 '\000') at ../../gcc/gcc/expr.c:7704 #6 0x008067f5 in expand_expr_addr_expr_1 (exp=optimized out, target=target@entry=0xfff670a0, tmode=tmode@entry=DImode, modifier=modifier@entry=EXPAND_NORMAL, as=as@entry=0 '\000') at ../../gcc/gcc/expr.c:7756 #7 0x007f7222 in expand_expr_addr_expr (modifier=EXPAND_NORMAL, tmode=DImode, target=0xfff670a0, exp=0xffe3fd20) at ../../gcc/gcc/expr.c:7832 #8 expand_expr_real_1 (exp=0xffe3fd20, target=optimized out, tmode=DImode, modifier=EXPAND_NORMAL, alt_rtl=0xdeca688, inner_reference_p=false) at ../../gcc/gcc/expr.c:10706 #9 0x00807334 in store_expr_with_bounds (exp=exp@entry=0xffe3fd20, target=target@entry=0xfff670a0, call_param_p=call_param_p@entry=0, nontemporal=nontemporal@entry=false, btarget=btarget@entry=0xffe45ca8) at ../../gcc/gcc/expr.c:5368 #10 0x008101f6 in expand_assignment (to=to@entry=0xffe45ca8, from=from@entry=0xffe3fd20, nontemporal=false) at ../../gcc/gcc/expr.c:5137 #11 0x00ddab15 in expand_gimple_stmt_1 (stmt=0xffdd09f0) at ../../gcc/gcc/cfgexpand.c:3351 #12 expand_gimple_stmt (stmt=stmt@entry=0xffdd09f0) at ../../gcc/gcc/cfgexpand.c:3447 #13 0x00ddcb6c in expand_gimple_basic_block (bb=0xfff81080, disable_tail_calls=disable_tail_calls@entry=false) at ../../gcc/gcc/cfgexpand.c:5280 #14 0x00ddeaad in (anonymous namespace)::pass_expand::execute ( this=0x80056948, fun=0xfff303a8) at ../../gcc/gcc/cfgexpand.c:5889 #15 0x0090d285 in execute_one_pass (pass=pass@entry=0x80056948) at ../../gcc/gcc/passes.c:2311 #16 0x0090d714 in execute_pass_list_1 (pass=0x80056948, pass@entry=0x80054848) ...
[Bug c++/61135] It seems to be not able to call virtual method of literal object in lambda expression
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61135 --- Comment #4 from Dinar Temirbulatov dtemirbulatov at gmail dot com --- I could not reproduce the error, the output looks correct on trunk
[Bug c++/61135] It seems to be not able to call virtual method of literal object in lambda expression
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=61135 --- Comment #1 from MamoruOKAMOTO okamoto6496 at gmail dot com --- g++-4.9.0 returned same message.
[Bug c++/61135] It seems to be not able to call virtual method of literal object in lambda expression
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=61135 --- Comment #2 from MamoruOKAMOTO okamoto6496 at gmail dot com --- Created attachment 32772 -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=32772action=edit Test code using report