pike.git/
src/
pike_types.c
Branch:
Tag:
Non-build tags
All tags
No tags
2007-04-06
2007-04-06 16:08:14 by Henrik Grubbström (Grubba) <grubba@grubba.org>
3421ff03f6bee370de6ef95fe0bff449dcbacb54 (
40
lines) (+
22
/-
18
)
[
Show
|
Annotate
]
Branch:
7.9
get_type_of_svalue() now returns a stricter type for arrays.
Rev: src/pike_types.c:1.284
2:
|| This file is part of Pike. For copyright information see COPYRIGHT. || Pike is distributed under GPL, LGPL and MPL. See the file COPYING || for more information.
-
|| $Id: pike_types.c,v 1.
283
2007/04/06
15
:
56
:
23
grubba Exp $
+
|| $Id: pike_types.c,v 1.
284
2007/04/06
16
:
08
:
14
grubba Exp $
*/ #include "global.h"
5634:
case T_ARRAY: {
-
struct pike_type *arg_type;
+
struct array *a = s->u.array;
-
+
+
type_stack_mark();
#if 0
-
+
{
+
struct pike_type *arg_type;
int i; /* FIXME: Circular structures? */
5648:
Inside #if 0
free_type(tmp1); arg_type = tmp2; }
-
#else /* !0 */
-
if (a->size)
-
copy_pike_type(arg_type, mixed_type_string);
-
else
-
copy_pike_type(arg_type, zero_type_string);
-
#endif /* 0 */
-
type_stack_mark();
+
push_finished_type(arg_type); free_type(arg_type);
-
push_type(
s
->type);
+
}
+
#else /* !0 */
+
if (a->size) {
+
push_type
_field
(
a
->type
_field
);
+
}else
+
push_finished_type(zero_type_string);
+
#endif /* 0 */
+
push_type(T_ARRAY);
return pop_unfinished_type(); }