Maybe gcc should spend more time implementing C++14 and fixing bugs and
less time worrying about someone stealing their AST.

You can use clang and it should work.
CC=clang CXX=clang++ make

I'll patch the implicit this but I don't know what else to say. :)

Doug

On Fri, Aug 14, 2015 at 10:00 AM, Jon Harper <jon.harpe...@gmail.com> wrote:

> Hi,
> for info, we can't compile the factor vm with the default compiler (gcc
> 4.7.2) of debian oldstable wheezy anymore.
>
> First, it has a false compilation error (
> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54277):
> g++ -c -x c++-header -Wall -DFACTOR_VERSION="0.98"
> -DFACTOR_GIT_LABEL="heads/master-5ba44b37bc82bfdea706c16f33b3bbc13b9ca87c"
> -fomit-frame-pointer -Wl,--no-as-needed -m32 -O3 -g -std=c++11 -o
> vm/master.hpp.gch vm/master.hpp
> In file included from vm/master.hpp:112:0:
> vm/free_list_allocator.hpp: In lambda function:
> vm/free_list_allocator.hpp:137:35: error: no matching function for call to
> ‘factor::mark_bits::marked_p(factor::cell&) const’
> vm/free_list_allocator.hpp:137:35: note: candidate is:
> In file included from vm/master.hpp:109:0:
> vm/mark_bits.hpp:81:8: note: bool
> factor::mark_bits::marked_p(factor::cell) <near match>
> vm/mark_bits.hpp:81:8: note:   no known conversion for implicit ‘this’
> parameter from ‘const factor::mark_bits*’ to ‘factor::mark_bits*’
>
> The following patch workarounds error:
> diff --git a/vm/free_list_allocator.hpp b/vm/free_list_allocator.hpp
> index 65e6851..461004c 100644
> --- a/vm/free_list_allocator.hpp
> +++ b/vm/free_list_allocator.hpp
> @@ -137 +137 @@ void free_list_allocator<Block>::compact(Iterator& iter,
> Fixup fixup,
> -    if (!state.marked_p(block_addr))
> +    if (!this->state.marked_p(block_addr))
>
>
> Even with the workaround, when then have
> g++ -c -Wall -DFACTOR_VERSION="0.98"
> -DFACTOR_GIT_LABEL="heads/master-5ba44b37bc82bfdea706c16f33b3bbc13b9ca87c"
> -fomit-frame-pointer -Wl,--no-as-needed -m32 -O3 -g -std=c++11 -o
> vm/compaction.o vm/compaction.cpp
> vm/compaction.cpp: In lambda function:
> vm/compaction.cpp:165:1: internal compiler error: in get_expr_operands, at
> tree-ssa-operands.c:1035
> Please submit a full bug report,
> with preprocessed source if appropriate.
> See <file:///usr/share/doc/gcc-4.7/README.Bugs> for instructions.
>
>
> Jon
>
>
> ------------------------------------------------------------------------------
>
> _______________________________________________
> Factor-talk mailing list
> Factor-talk@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/factor-talk
>
>
------------------------------------------------------------------------------
_______________________________________________
Factor-talk mailing list
Factor-talk@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/factor-talk

Reply via email to