version 1.1, 2003/05/11 21:36:33 |
version 1.2, 2005/10/16 18:56:35 |
|
|
/* |
/* |
* Copyright (c) 1997 - 2000 Kungliga Tekniska Högskolan |
* Copyright (c) 1997 - 2003 Kungliga Tekniska Högskolan |
* (Royal Institute of Technology, Stockholm, Sweden). |
* (Royal Institute of Technology, Stockholm, Sweden). |
* All rights reserved. |
* All rights reserved. |
* |
* |
|
|
#include "gen_locl.h" |
#include "gen_locl.h" |
|
|
/* |
/* |
RCSID("$KTH: gen_free.c,v 1.9 2001/09/25 13:39:26 assar Exp $"); |
RCSID("$KTH: gen_free.c,v 1.12 2003/10/03 00:28:08 lha Exp $"); |
*/ |
*/ |
|
|
static void |
static void |
|
|
break; |
break; |
case TInteger: |
case TInteger: |
case TUInteger: |
case TUInteger: |
|
case TBoolean: |
case TEnumerated : |
case TEnumerated : |
break; |
break; |
case TOctetString: |
case TOctetString: |
|
|
if(m->optional) |
if(m->optional) |
fprintf(codefile, |
fprintf(codefile, |
"free(%s);\n" |
"free(%s);\n" |
"}\n",s); |
"%s = NULL;\n" |
|
"}\n", s, s); |
if (tag == -1) |
if (tag == -1) |
tag = m->val; |
tag = m->val; |
free (s); |
free (s); |
|
|
"}\n", |
"}\n", |
name); |
name); |
fprintf(codefile, |
fprintf(codefile, |
"free((%s)->val);\n", name); |
"free((%s)->val);\n" |
|
"(%s)->val = NULL;\n", name, name); |
free(n); |
free(n); |
break; |
break; |
} |
} |
|
|
break; |
break; |
case TGeneralString: |
case TGeneralString: |
free_primitive ("general_string", name); |
free_primitive ("general_string", name); |
|
break; |
|
case TUTF8String: |
|
free_primitive ("utf8string", name); |
|
break; |
|
case TNull: |
break; |
break; |
case TApplication: |
case TApplication: |
free_type (name, t->subtype); |
free_type (name, t->subtype); |