This is the mail archive of the
mailing list for the GCC project.
Re: [PATCH] [lambda] Extract lambda functions from semantics.c.
- From: Adam Butcher <adam at jessamine dot co dot uk>
- To: Gabriel Dos Reis <gdr at integrable-solutions dot net>
- Cc: Mike Stump <mikestump at comcast dot net>, Jason Merrill <jason at redhat dot com>, <gcc-patches at gcc dot gnu dot org>
- Date: Wed, 04 Sep 2013 18:55:13 +0100
- 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> <6E502635-EB4D-48DA-9674-963E377A4568 at comcast dot net> <CAAiZkiDeMcumAPK=Dvvtocufanj9uqFg=T1oj8RnFXY5K6VdMQ at mail dot gmail dot com>
On 04.09.2013 03:41, Gabriel Dos Reis wrote:
On Tue, Sep 3, 2013 at 9:33 PM, Mike Stump <email@example.com>
Eek. I didn't realize dependencies had to be manually specified.
That's prompted me to update a more recent patchset I'm working on where
I've introduced a new header.
On Jul 12, 2013, at 11:18 PM, Adam Butcher <firstname.lastname@example.org>
* gcc/cp/semantics.c (build_lambda_expr),
(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
diff --git a/gcc/cp/Make-lang.in b/gcc/cp/Make-lang.in
index 2c1774f..65dfe08 100644
@@ -351,6 +351,7 @@ cp/vtable-class-hierarchy.o:
cp/name-lookup.o: cp/name-lookup.c $(CONFIG_H) $(SYSTEM_H)
$(TM_H) $(CXX_TREE_H) $(TIMEVAR_H) gt-cp-name-lookup.h
$(DIAGNOSTIC_CORE_H) $(FLAGS_H) debug.h pointer-set.h
+cp/lambda.o: cp/lambda.c $(CXX_TREE_H) $(CGRAPH_H) $(VEC_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)
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...
Is anyone working on using some use, perhaps filtered, of -MD (or -MDD)
to generate deps on the fly? I haven't looked into the GCC makefile
system in any detail but I assume dependency handling is more complex
than the standard usage pattern for -MD or I guess someone would have
done it already. Or are maintainers worried that auto deps will slow
the build down too much? In our team's experience with using -MD the
overhead is negligible; especially when weighed up against the effort
required to manually maintain deps. It just takes make a little longer
to start actually building anything.