This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] [lambda] Extract lambda functions from semantics.c.
- From: Mike Stump <mikestump at comcast dot net>
- To: Adam Butcher <adam at jessamine dot co dot uk>
- Cc: Jason Merrill <jason at redhat dot com>, Gabriel Dos Reis <gdr at integrable-solutions dot net>, gcc-patches at gcc dot gnu dot org
- Date: Tue, 3 Sep 2013 19:33:14 -0700
- Subject: Re: [PATCH] [lambda] Extract lambda functions from semantics.c.
- Authentication-results: sourceware.org; auth=none
- References: <CAAiZkiCrdH+Lff82cuXJH4DOU0VJ07QjQiB3jh0ek6ugg0QtLw at mail dot gmail dot com> <1373696318-1715-1-git-send-email-adam at jessamine dot co dot uk>
On Jul 12, 2013, at 11:18 PM, Adam Butcher <adam@jessamine.co.uk> wrote:
> * gcc/cp/semantics.c (build_lambda_expr),
> (build_lambda_object), (begin_lambda_type), (lambda_return_type),
> (lambda_function), (lambda_capture_field_type), (is_capture_proxy),
> (is_normal_capture_proxy), (insert_capture_proxy),
> (insert_pending_capture_proxies), (lambda_proxy_type),
> (build_capture_proxy), (vla_capture_type),
> (register_capture_members), (add_default_capture),
> (lambda_expr_this_capture), (maybe_resolve_dummy),
> (nonlambda_method_basetype), (maybe_add_lambda_conv_op) and
> (is_lambda_ignored_entity): Moved definitions into ...
> * gcc/cp/lambda.c: ... this new file.
This can cause an incremental build failure because there are no dependencies:
diff --git a/gcc/cp/Make-lang.in b/gcc/cp/Make-lang.in
index 2c1774f..65dfe08 100644
--- a/gcc/cp/Make-lang.in
+++ b/gcc/cp/Make-lang.in
@@ -351,6 +351,7 @@ cp/vtable-class-hierarchy.o: cp/vtable-class-hierarchy.c \
cp/name-lookup.o: cp/name-lookup.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
$(TM_H) $(CXX_TREE_H) $(TIMEVAR_H) gt-cp-name-lookup.h $(PARAMS_H) \
$(DIAGNOSTIC_CORE_H) $(FLAGS_H) debug.h pointer-set.h
+cp/lambda.o: cp/lambda.c $(CXX_TREE_H) $(CGRAPH_H) $(VEC_H) $(SYSTEM_H) coretypes.h
cp/cxx-pretty-print.o: cp/cxx-pretty-print.c $(CXX_PRETTY_PRINT_H) \
$(CONFIG_H) $(SYSTEM_H) $(TM_H) coretypes.h $(CXX_TREE_H) tree-pretty-print.h
When tree codes are added or moved, the check is then against the wrong number, and this will kill the build.
I'm still looking forward to the day when all the dependancies are unceremoniously ripped out, until then...
Ok?