This is the mail archive of the gdb@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Variable Length Arrays (VLA) proposal


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]