[overloading] NOT FIXED 6.0.0
[scilab.git] / scilab / modules / overloading / tests / nonreg_tests / bug_3688.tst
1 // =============================================================================
2 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3 // Copyright (C) 2010 - INRIA - Serge Steer
4 //
5 //  This file is distributed under the same license as the Scilab package.
6 // =============================================================================
7
8 // <-- CLI SHELL MODE -->
9 // <-- NOT FIXED --> 6.0.0
10 // <-- Non-regression test for bug 3688 -->
11 //
12 // <-- Bugzilla URL -->
13 // http://bugzilla.scilab.org/show_bug.cgi?id=3688
14 //
15 // <-- Short Description -->
16 // The assignment using ":" subscript for a dimension that does not exist
17 // does not work for hypermatrices
18
19 A=[];A(1,1,:) = [-1 3];
20 if or(size(A)<>[1 1 2])|or(matrix(A(1,1,:),1,-1)<>[-1 3]) then pause,end
21
22 A=[];A(1,1,:) = [-1;3];
23 if or(size(A)<>[1 1 2])|or(matrix(A(1,1,:),1,-1)<>[-1 3]) then pause,end
24
25 A=[];A(1,2,:) = [-1 3];
26 if or(size(A)<>[1 2 2])|or(matrix(A(1,:,:),2,-1)<>[0 0;-1 3]) then pause,end
27
28 A=[];A(1,2,:) = [-1;3];
29 if or(size(A)<>[1 2 2])|or(matrix(A(1,:,:),2,-1)<>[0 0;-1 3]) then pause,end
30
31 A=[];A(2,1,:) = [-1 3];
32 if or(size(A)<>[2 1 2])|or(matrix(A(:,1,:),2,-1)<>[0 0;-1 3]) then pause,end
33
34
35
36 A=[];A(1,:,1) = [-1 3];
37 if or(A<>[-1 3]) then pause,end
38
39 A=[];A(1,:,1) = [-1;3];
40 if or(A<>[-1 3]) then pause,end
41
42 A=[];A(:,1,1) = [-1 3];
43 if or(A<>[-1;3]) then pause,end
44
45 A=[];A(:,1,1) = [-1;3];
46 if or(A<>[-1;3]) then pause,end
47
48 A=[];A(1,:,:) = [-1 3;5 7];
49 if or(size(A)<>[1 2 2])|or(matrix(A(1,:,:),2,-1)<>[-1 3;5 7]) then pause,end
50
51 A=[];A(:,1,:) = [-1 3;5 7];
52 if or(size(A)<>[2 1 2])|or(matrix(A(:,1,:),2,-1)<>[-1 3;5 7]) then pause,end
53
54 A=[];A(1,:,:) = [-1 3 5 7];
55 if or(size(A)<>[1 1 4])|or(matrix(A(1,1,:),1,-1)<>[-1 3 5 7]) then pause,end
56
57 if execstr("A=[];A(1,1:2,:) = [-1 3 5 7];","errcatch")==0 then pause,end
58
59 A=[];A(1,1,2)=3;A(1,1,1,:)=[-1 3];
60 if or(size(A)<>[1 1 2 2])|or(matrix(A(1,1,1,:),1,-1)<>[-1 3]) then pause,end
61
62 A=[];A(1,1,2)=3;A(1,1,1,:)=[-1;3];
63 if or(size(A)<>[1 1 2 2])|or(matrix(A(1,1,1,:),1,-1)<>[-1 3]) then pause,end
64
65 A=[];A(1,1,2)=3;A(2,1,1,:)=[-1;3];
66 if or(size(A)<>[2 1 2 2])|or(matrix(A(2,1,1,:),1,-1)<>[-1 3]) then pause,end
67
68 //insertion of integer
69 A=[];A(1,1,:) = int32([-1 3]);
70 if or(size(A)<>[1 1 2])|or(matrix(A(1,1,:),1,-1)<>int32([-1 3])) then pause,end
71
72 A=[];A(1,1,:) = int32([-1;3]);
73 if or(size(A)<>[1 1 2])|or(matrix(A(1,1,:),1,-1)<>int32([-1 3])) then pause,end
74
75 A=[];A(1,2,:) = int32([-1 3]);
76 if or(size(A)<>[1 2 2])|or(matrix(A(1,:,:),2,-1)<>int32([0 0;-1 3])) then pause,end
77
78 A=[];A(1,2,:) = int32([-1;3]);
79 if or(size(A)<>[1 2 2])|or(matrix(A(1,:,:),2,-1)<>int32([0 0;-1 3])) then pause,end
80
81 A=[];A(2,1,:) = int32([-1 3]);
82 if or(size(A)<>[2 1 2])|or(matrix(A(:,1,:),2,-1)<>int32([0 0;-1 3])) then pause,end
83
84 A=[];A(1,:,1) = int32([-1 3]);
85 if or(A<>int32([-1 3])) then pause,end
86
87 A=[];A(1,:,1) = int32([-1;3]);
88 if or(A<>int32([-1 3])) then pause,end
89
90 A=[];A(:,1,1) = int32([-1 3]);
91 if or(A<>int32([-1;3])) then pause,end
92
93 A=[];A(:,1,1) = int32([-1;3]);
94 if or(A<>int32([-1;3])) then pause,end
95
96
97 A=[];A(1,:,:) = int32([-1 3;5 7]);
98 if or(size(A)<>[1 2 2])|or(matrix(A(1,:,:),2,-1)<>int32([-1 3;5 7])) then pause,end
99
100 A=[];A(:,1,:) = int32([-1 3;5 7]);
101 if or(size(A)<>[2 1 2])|or(matrix(A(:,1,:),2,-1)<>int32([-1 3;5 7])) then pause,end
102
103 A=[];A(1,:,:) = int32([-1 3 5 7]);
104 if or(size(A)<>[1 1 4])|or(matrix(A(1,1,:),1,-1)<>int32([-1 3 5 7])) then pause,end
105
106 if execstr("A=[];A(1,1:2,:) = int32([-1 3 5 7];","errcatch")==0 then pause,end
107
108 A=[];A(1,1,2)=int32(3);A(1,1,1,:)=int32([-1 3]);
109 if or(size(A)<>[1 1 2 2])|or(matrix(A(1,1,1,:),1,-1)<>int32([-1 3])) then pause,end
110
111 A=[];A(1,1,2)=int32(3);A(1,1,1,:)=int32([-1;3]);
112 if or(size(A)<>[1 1 2 2])|or(matrix(A(1,1,1,:),1,-1)<>int32([-1 3])) then pause,end
113
114 A=[];A(1,1,2)=int32(3);A(2,1,1,:)=int32([-1;3]);
115 if or(size(A)<>[2 1 2 2])|or(matrix(A(2,1,1,:),1,-1)<>int32([-1 3])) then pause,end
116
117 //same should work for other types that uses the same algorithm (generic_i_hm)
118 //polynomials
119 A=[];A(1,1,:) = [-1 3]+%s;
120 if or(size(A)<>[1 1 2])|or(matrix(A(1,1,:),1,-1)<>[-1 3]+%s) then pause,end
121
122 A=[];A(1,1,2)=3;A(2,1,1,:)=[-1;3]+%s;
123 if or(size(A)<>[2 1 2 2])|or(matrix(A(2,1,1,:),1,-1)<>[-1 3]+%s) then pause,end
124
125 //booleans
126 A=[];A(1,1,:) = [%t %f];
127 if or(size(A)<>[1 1 2])|or(matrix(A(1,1,:),1,-1)<>[%t %f]) then pause,end
128
129 A=[];A(1,1,2)=%t;A(2,1,1,:)= [%t; %f];
130 if or(size(A)<>[2 1 2 2])|or(matrix(A(2,1,1,:),1,-1)<>[%t %f]) then pause,end
131
132 //added because a bug found in %b_i_b.sci
133 A=%t;A(2,1,1,:)= [%t; %f];
134 if or(size(A)<>[2 1 1 2])|or(matrix(A(2,1,1,:),1,-1)<>[%t %f]) then pause,end