MATLAB: Do I receive an Assertion error when I try to reference a structure field in MATLAB 7.0 (R14) on the Linux machine

cellcrashlinuxMATLABreferencestructure

I have a structure with three layers. For example:
a = cell(3,1);
a{1} = 'str';
a{2} = 'str2';
a{3} = 'str3';
x.a = a;
b.x = x;
I try to reference the inner-most layer using the following command at the command prompt:
b.x.a{1}
This causes MATLAB to exit and the following crash log to be produced.
------------------------------------------------------------------------
Assertion detected at Wed Mar 24 15:45:37 2004
------------------------------------------------------------------------
Assertion fault "0" in file "M_to_IR/M_to_IR.c", line 340.
Configuration:
MATLAB Version: 7.0.0.14092 (R14) Prerelease
Operating System: Linux 2.4.18 #14 SMP Mon Feb 10 15:36:47 EST 2003 i686
Window System: NetManage XoftWare (6), display tighea.dhcp:0.0
Current Visual: 0x20 (class 4, depth 32)
Processor ID: x86 Family 6 Model 6 Stepping 2, AuthenticAMD
Virtual Machine: Java 1.4.2_02 with Sun Microsystems Inc. Java HotSpot(TM) Client VM
(mixed mode)
Default Charset: US-ASCII
Stack Trace:
[0] libmwbridge.so:ThrowAssertion()(0x4009bae4 "Assertion fault "0" in file "M_t..",
0xbfffb550 "MATLAB:assertion_fault", 65537,
0x4009bae4 "Assertion fault "0" in file "M_t..") + 164 bytes
[1] libut.so:utErrorHandler(0x4009b084, 0xbfffb550 "MATLAB:assertion_fault", 65537,
0xbfffd3d0) + 106 bytes
[2] libut.so:ut_verror_id(0x4009b0c4, 0xbfffb550 "MATLAB:assertion_fault", 65537,
0xbfffbd78) + 174 bytes
[3] libut.so:ut_error(0x4009b0c4, 65537, 0x40c05d07, 0x40bfc3e0 "M_to_IR/M_to_IR.c")
+ 74 bytes
...

Best Answer

This bug has been fixed for MATLAB 7.0 (R14). For previous releases, please read below for any possible workarounds:
This has been verified as a bug in the way structure fields containing cells are referenced.
To work around this issue, use the following commands to view the lowest level components:
celldisp(b.x.a(1))