From bc49bf86f68a38cd08426f591b4664677aaba20c Mon Sep 17 00:00:00 2001 From: Steven Watanabe Date: Tue, 9 Apr 2013 20:08:22 +0000 Subject: [PATCH] Don't auto-grist the argument in feature.attributes. This function is hot and it hurts performance. [SVN r83822] --- src/build/build-request.jam | 2 +- src/build/feature.jam | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/src/build/build-request.jam b/src/build/build-request.jam index 121f788df..2a1bbb467 100644 --- a/src/build/build-request.jam +++ b/src/build/build-request.jam @@ -194,7 +194,7 @@ local rule convert-command-line-element ( e ) lresult = [ regex.split $(p) "," ] ; } - if $(feature) && free in [ feature.attributes $(feature) ] + if $(feature) && free in [ feature.attributes <$(feature)> ] { # If we have free feature, then the value is everything # until the end of the command line token. Slashes in diff --git a/src/build/feature.jam b/src/build/feature.jam index 3ee1f1e9e..ee6abc591 100644 --- a/src/build/feature.jam +++ b/src/build/feature.jam @@ -223,7 +223,7 @@ rule valid ( names + ) # rule attributes ( feature ) { - return $($(:E=:G=$(feature)).attributes) ; + return $($(feature).attributes) ; } @@ -1232,7 +1232,6 @@ rule __test__ ( ) subfeature fu : subfu2 : q r s ; assert.result optional : attributes ; - assert.result optional : attributes fu ; assert.result static foobar on gcc:FOO gcc debug native