On Mon, Dec 19, 2016 at 9:36 AM, Daniel Kolesa <[email protected]> wrote:
> On Mon, Dec 12, 2016, at 19:50, Gustavo Sverzut Barbieri wrote:
>> okay, on IRC people clarified it with an example:

Hello Kolesa,

[snip]

> Eolian is ready for this; so if this gets implemented in C++, it's just
> a very small Eolian change.

Can you enable it in Eolian so I can implement it in C++? Otherwise
I can't test it. I've tried just commenting out the error for cyclic
dependency, but it fails in a infinite recursion with the following
backtrace:

[...]
#22202 eo_parser_walk (ls=ls@entry=0x55555593c500, eot=eot@entry=0
'\000') at ../../src/lib/eolian/eo_parser.c:2201
#22203 0x00007ffff794a7b6 in eo_parser_database_fill
(filename=filename@entry=0x555555840ac0
"/home/felipe/dev/samsung/upstream/efl/src/tests/eolian_cxx/cyclic1.eo",
eot=eot@entry=0 '\000') at ../../src/lib/eolian/database_fill.c:253
#22204 0x00007ffff794517c in _parse_dep (name=0x555555847c10
"Cyclic1", fname=0x555555840ac0
"/home/felipe/dev/samsung/upstream/efl/src/tests/eolian_cxx/cyclic1.eo",
ls=0x55555593c010) at ../../src/lib/eolian/eo_parser.c:688
#22205 parse_type_void (ls=ls@entry=0x55555593c010,
allow_ref=allow_ref@entry=1 '\001', allow_sarray=allow_sarray@entry=0
'\000') at ../../src/lib/eolian/eo_parser.c:928
#22206 0x00007ffff79454b1 in parse_type (ls=0x55555593c010,
allow_ref=<optimized out>, allow_sarray=<optimized out>) at
../../src/lib/eolian/eo_parser.c:471
#22207 0x00007ffff79455bd in parse_return (ls=ls@entry=0x55555593c010,
ret=ret@entry=0x7fffffffbf50, allow_void=allow_void@entry=0 '\000') at
../../src/lib/eolian/eo_parser.c:1045
#22208 0x00007ffff7946fa1 in parse_method (ls=0x55555593c010) at
../../src/lib/eolian/eo_parser.c:1468
#22209 parse_methods (ls=0x55555593c010) at
../../src/lib/eolian/eo_parser.c:1774
#22210 parse_class_body (type=<optimized out>, ls=0x55555593c010) at
../../src/lib/eolian/eo_parser.c:1898
#22211 parse_class (ls=0x55555593c010,
type=type@entry=EOLIAN_CLASS_REGULAR) at
../../src/lib/eolian/eo_parser.c:2045
#22212 0x00007ffff794833a in parse_unit (ls=ls@entry=0x55555593c010,
eot=eot@entry=0 '\000') at ../../src/lib/eolian/eo_parser.c:2060
#22213 0x00007ffff794894c in parse_chunk (eot=0 '\000', ls=<optimized
out>) at ../../src/lib/eolian/eo_parser.c:2192
#22214 eo_parser_walk (ls=ls@entry=0x55555593c010, eot=eot@entry=0
'\000') at ../../src/lib/eolian/eo_parser.c:2201
#22215 0x00007ffff794a7b6 in eo_parser_database_fill
(filename=filename@entry=0x5555558405a0
"/home/felipe/dev/samsung/upstream/efl/src/tests/eolian_cxx/cyclic2.eo",
eot=eot@entry=0 '\000') at ../../src/lib/eolian/database_fill.c:253
#22216 0x00007ffff794517c in _parse_dep (name=0x5555559193c0
"Cyclic2", fname=0x5555558405a0
"/home/felipe/dev/samsung/upstream/efl/src/tests/eolian_cxx/cyclic2.eo",
ls=0x5555558f58d0) at ../../src/lib/eolian/eo_parser.c:688
#22217 parse_type_void (ls=ls@entry=0x5555558f58d0,
allow_ref=allow_ref@entry=1 '\001', allow_sarray=allow_sarray@entry=0
'\000') at ../../src/lib/eolian/eo_parser.c:928
#22218 0x00007ffff79454b1 in parse_type (ls=0x5555558f58d0,
allow_ref=<optimized out>, allow_sarray=<optimized out>) at
../../src/lib/eolian/eo_parser.c:471
#22219 0x00007ffff79455bd in parse_return (ls=ls@entry=0x5555558f58d0,
ret=ret@entry=0x7fffffffd1b0, allow_void=allow_void@entry=0 '\000') at
../../src/lib/eolian/eo_parser.c:1045
#22220 0x00007ffff7946fa1 in parse_method (ls=0x5555558f58d0) at
../../src/lib/eolian/eo_parser.c:1468
#22221 parse_methods (ls=0x5555558f58d0) at
../../src/lib/eolian/eo_parser.c:1774
#22222 parse_class_body (type=<optimized out>, ls=0x5555558f58d0) at
../../src/lib/eolian/eo_parser.c:1898
#22223 parse_class (ls=0x5555558f58d0,
type=type@entry=EOLIAN_CLASS_REGULAR) at
../../src/lib/eolian/eo_parser.c:2045
#22224 0x00007ffff794833a in parse_unit (ls=ls@entry=0x5555558f58d0,
eot=eot@entry=0 '\000') at ../../src/lib/eolian/eo_parser.c:2060
#22225 0x00007ffff794894c in parse_chunk (eot=0 '\000', ls=<optimized
out>) at ../../src/lib/eolian/eo_parser.c:2192
#22226 eo_parser_walk (ls=ls@entry=0x5555558f58d0, eot=eot@entry=0
'\000') at ../../src/lib/eolian/eo_parser.c:2201
#22227 0x00007ffff794a7b6 in eo_parser_database_fill
(filename=filename@entry=0x555555847e20
"/home/felipe/dev/samsung/upstream/efl/src/tests/eolian_cxx/cyclic1.eo",
eot=<optimized out>) at ../../src/lib/eolian/database_fill.c:253
#22228 0x00007ffff7948db4 in _eolian_file_parse_nodep
(filepath=<optimized out>) at
../../src/lib/eolian/eolian_database.c:687
#22229 0x00007ffff794a1ab in eolian_file_parse (filepath=<optimized
out>) at ../../src/lib/eolian/eolian_database.c:698
#22230 0x0000555555585c0d in
eolian_cxx::database_load(eolian_cxx::options_type const&) ()
#22231 0x00005555555866dd in main ()

> D5

Regards,
-- 
Felipe Magno de Almeida

------------------------------------------------------------------------------
Developer Access Program for Intel Xeon Phi Processors
Access to Intel Xeon Phi processor-based developer platforms.
With one year of Intel Parallel Studio XE.
Training and support from Colfax.
Order your platform today.http://sdm.link/intel
_______________________________________________
enlightenment-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to