Re: Variable Length Arrays (VLA) proposal

Keven Boell
2013-08-07T05:25:11Z

Thanks for feedback.

On 04.08.2013 21:33, Jan Kratochvil wrote:
> On Thu, 04 Jul 2013 14:32:07 +0200, Keven Boell wrote:
>> We've created some tests for the VLA features in Fortran and C in
>> advance to test our future implementation against it. We used/split
>> some of your tests from archer-jankratochvil-vla and added some more
>> to cover more VLA use-cases, we want to fix/enable in GDB. Maybe you
>> can have a look at them to see if we agree on the feature set in
>> general, which will be available to the user afterwards.
>>
>> You can find them in our github repository (see the last few commits):
>> https://github.com/ChristophTWeinmann/GDB/tree/vla-testbase
>
> GIT URL: https://github.com/ChristophTWeinmann/GDB.git
>
>> The tests are covering only Fortran and C at the moment.
>
> Some of the files need CRLF->LF conversion.
Done.

>
>
>> gdb/testsuite/gdb.base/vla-datatypes.exp
>> gdb/testsuite/gdb.base/vla-multi.exp
>> gdb/testsuite/gdb.base/vla-ptr.exp
>> gdb/testsuite/gdb.fortran/vla-alloc-assoc.exp
>> gdb/testsuite/gdb.fortran/vla-datatypes.exp
>
> type = long [5]
> (gdb) FAIL: gdb.base/vla-datatypes.exp: ptype long_vla
>
> Expected "long int [5]", I use gcc-4.8.1-5.fc20.x86_64.
> Such minor differences for different compilers are OK and common in GDB
> testsuite.
>
I've extended the regex to catch these cases.

>
>> gdb/testsuite/gdb.fortran/vla-func.exp
>> gdb/testsuite/gdb.fortran/vla-ptype-sub.exp
>> gdb/testsuite/gdb.fortran/vla-ptype.exp
>
>
>> gdb/testsuite/gdb.fortran/vla-type.exp
>
> archer-jankratochvil-vla has some FAILs here for more compilated types, that
> is a known bug of archer-jankratochvil-vla.
>
>
> gdb.fortran/vla-value.exp
>
> Why isn't prepare_for_testing used here?
You're right, there is no reason for not having prepare_for_testing.

>
>
> gdb.fortran/vla.f90
>
> Missing copyright header.
Done.

>
>
> I did not check it but I guess these testcases / expect strings work only with
> gfortran. If you are interested it would be sure great if they worked also
> with iFort.
I've also checked them with ifort and it worked. However, there are some
more fails but not related to the expect strings.

>
>
> In general expect strings in testcases "\\$\\d+ = ..." are commonly simplified
> to " = ..." (start of expect strings are not anchored by ^ even in gdb_test).
> But it is up to the submitter, "\\$\\d+ = ..." is also fine.
>
> In general 'untested' call is not needed after failed prepare_for_testing.
> The same applies to failed 'runto MAIN__'.
>
Done.

>
> The testcases are pre-approved for check-in. But you will also need to write
> stub (just "*: New files." for everything) ChangeLog entry and post it to
> gdb-patches. And if you like to check them in before the real VLA
> implementation they would need KFAILs for everything (IMO not worth the work
> to check in the testcases before the implementation).
I agree, this doesn't make too much sense. We'll submit the tests as
soon as we have the VLA implementation ready.

Thanks,
Keven