Browse Source

Add end map when untokenizing + debug message + comment

Yann Weber 4 years ago
parent
commit
c4a4642910
3 changed files with 19 additions and 2 deletions
  1. 11
    0
      rpn_jit.c
  2. 3
    2
      rpn_jit.h
  3. 5
    0
      rpn_parse.c

+ 11
- 0
rpn_jit.c View File

130
 		}
130
 		}
131
 	}
131
 	}
132
 
132
 
133
+	if(_rpn_expr_end_map(expr))
134
+	{
135
+		snprintf(expr->err_reason, 128,
136
+			"Error ending code map : %s",
137
+			strerror(errno));
138
+		expr->state = RPN_ERROR;
139
+		return -1;
140
+	}
141
+
142
+	expr->state = RPN_READY;
133
 	return 0;
143
 	return 0;
134
 
144
 
135
 	ret_err:
145
 	ret_err:
146
+		expr->state = RPN_ERROR;
136
 		errno = err;
147
 		errno = err;
137
 		return -1;
148
 		return -1;
138
 }
149
 }

+ 3
- 2
rpn_jit.h View File

122
 	size_t args_count;
122
 	size_t args_count;
123
 
123
 
124
 	/**@brief Stack values memory */
124
 	/**@brief Stack values memory */
125
-	unsigned long *stack;
126
-	/**@brief rpn jit function stack size */
125
+	rpn_value_t *stack;
126
+	/**@brief rpn jit function stack size
127
+	 * @note item size (size in bytes is sizeof(long) * stack_sz */
127
 	unsigned char stack_sz;
128
 	unsigned char stack_sz;
128
 
129
 
129
 	/**@brief Expression status. Takes value in @ref RPN_ERROR,
130
 	/**@brief Expression status. Takes value in @ref RPN_ERROR,

+ 5
- 0
rpn_parse.c View File

284
 					"0x%lX ", token->value);
284
 					"0x%lX ", token->value);
285
 				break;
285
 				break;
286
 			default:
286
 			default:
287
+				#ifdef DEBUG
288
+				dprintf(2,
289
+"Invalid token type encountered : %d\n",
290
+					token->type); 
291
+				#endif
287
 				err = EUCLEAN;
292
 				err = EUCLEAN;
288
 				goto free_err;
293
 				goto free_err;
289
 		}
294
 		}

Loading…
Cancel
Save