Skip to content

Commit 9aaeb11

Browse files
authored
Merge pull request #50 from lmntal/refactor/warnings
Fix warnings.
2 parents 4924894 + 82054b5 commit 9aaeb11

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

44 files changed

+1268
-1244
lines changed

.gitignore

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -67,10 +67,12 @@ lib/*.il
6767
*.lo
6868
*.la
6969
src/arch.h
70-
src/il_lexer.*
71-
src/il_parser.*
72-
src/interpret_generated.c
73-
src/translate_generated.c
70+
src/loader/il_lexer.c
71+
src/loader/il_lexer.h
72+
src/loader/il_parser.c
73+
src/loader/il_parser.h
74+
src/loader/interpret_generated.c
75+
src/loader/translate_generated.c
7476
src/slim
7577
src/verifier/nc_lexer.*
7678
src/verifier/nc_parser.*

src/Makefile.am

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ slim_LDFLAGS = -L./verifier \
1616
-L./element \
1717
-L../third_party/zdelta-2.1
1818
slim_CFLAGS = -I../third_party/zdelta-2.1 \
19-
-std=gnu99
19+
-std=gnu99 -Werror
2020
slim_DEPENDENCIES = ./verifier/liblmn_verifier.a \
2121
./vm/liblmn_vm.a \
2222
./element/liblmn_elm.a \

src/element/lmnstring.c

Lines changed: 31 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -61,12 +61,12 @@ struct LmnString {
6161
(TO_ATOM), \
6262
(TO_ATTR), \
6363
LMN_ATTR_GET_VALUE((TO_ATTR)), \
64-
LMN_ATOM((STR_ATOM)), \
64+
(STR_ATOM), \
6565
LMN_SP_ATOM_ATTR, 0)
6666

6767
static int string_atom_type;
6868

69-
BOOL lmn_is_string(LmnAtom atom, LmnLinkAttr attr)
69+
BOOL lmn_is_string(LmnAtomRef atom, LmnLinkAttr attr)
7070
{
7171
return
7272
attr == LMN_SP_ATOM_ATTR &&
@@ -200,8 +200,8 @@ unsigned long lmn_string_len(LmnStringRef s)
200200

201201
void cb_string_make(LmnReactCxtRef rc,
202202
LmnMembraneRef mem,
203-
LmnAtom a0, LmnLinkAttr t0,
204-
LmnAtom a1, LmnLinkAttr t1)
203+
LmnAtomRef a0, LmnLinkAttr t0,
204+
LmnAtomRef a1, LmnLinkAttr t1)
205205
{
206206
const char *s;
207207
char buf[64];
@@ -210,11 +210,11 @@ void cb_string_make(LmnReactCxtRef rc,
210210
if (LMN_ATTR_IS_DATA(t0)) {
211211
switch (t0) {
212212
case LMN_INT_ATTR:
213-
s = int_to_str(a0);
213+
s = int_to_str((LmnWord)a0);
214214
to_be_freed = TRUE;
215215
break;
216216
case LMN_DBL_ATTR:
217-
sprintf(buf, "%#g", lmn_get_double(a0));
217+
sprintf(buf, "%#g", lmn_get_double((LmnDataAtomRef)a0));
218218
s = buf;
219219
break;
220220
case LMN_STRING_ATTR:
@@ -226,7 +226,7 @@ void cb_string_make(LmnReactCxtRef rc,
226226
break;
227227
}
228228
} else { /* symbol atom */
229-
s = LMN_SATOM_STR(a0);
229+
s = LMN_SATOM_STR((LmnSymbolAtomRef)a0);
230230
}
231231

232232
LINK_STR(mem, a1, t1, lmn_string_make(s));
@@ -236,9 +236,9 @@ void cb_string_make(LmnReactCxtRef rc,
236236

237237
void cb_string_concat(LmnReactCxtRef rc,
238238
LmnMembraneRef mem,
239-
LmnAtom a0, LmnLinkAttr t0,
240-
LmnAtom a1, LmnLinkAttr t1,
241-
LmnAtom a2, LmnLinkAttr t2)
239+
LmnAtomRef a0, LmnLinkAttr t0,
240+
LmnAtomRef a1, LmnLinkAttr t1,
241+
LmnAtomRef a2, LmnLinkAttr t2)
242242
{
243243
LmnStringRef s = lmn_string_concat(LMN_STRING(a0), LMN_STRING(a1));
244244
LINK_STR(mem, a2, t2, s);
@@ -249,21 +249,21 @@ void cb_string_concat(LmnReactCxtRef rc,
249249

250250
void cb_string_length(LmnReactCxtRef rc,
251251
LmnMembraneRef mem,
252-
LmnAtom a0, LmnLinkAttr t0,
253-
LmnAtom a1, LmnLinkAttr t1)
252+
LmnAtomRef a0, LmnLinkAttr t0,
253+
LmnAtomRef a1, LmnLinkAttr t1)
254254
{
255-
int len = LMN_STRING_LEN(a0);
255+
LmnWord len = LMN_STRING_LEN(a0);
256256

257257
lmn_mem_newlink(mem, a1, t1, LMN_ATTR_GET_VALUE(t1),
258-
len, LMN_INT_ATTR, 0);
258+
(LmnAtomRef)len, LMN_INT_ATTR, 0);
259259

260260
lmn_mem_delete_atom(mem, a0, t0);
261261
}
262262

263263
void cb_string_reverse(LmnReactCxtRef rc,
264264
LmnMembraneRef mem,
265-
LmnAtom a0, LmnLinkAttr t0,
266-
LmnAtom a1, LmnLinkAttr t1)
265+
LmnAtomRef a0, LmnLinkAttr t0,
266+
LmnAtomRef a1, LmnLinkAttr t1)
267267
{
268268
int i, j;
269269
char *s = LMN_STRING_BUF(a0);
@@ -280,18 +280,19 @@ void cb_string_reverse(LmnReactCxtRef rc,
280280

281281
void cb_string_substr(LmnReactCxtRef rc,
282282
LmnMembraneRef mem,
283-
LmnAtom a0, LmnLinkAttr t0,
284-
long begin, LmnLinkAttr t1,
285-
long end, LmnLinkAttr t2,
286-
LmnAtom a3, LmnLinkAttr t3)
283+
LmnAtomRef a0, LmnLinkAttr t0,
284+
LmnAtomRef begin_, LmnLinkAttr t1,
285+
LmnAtomRef end_, LmnLinkAttr t2,
286+
LmnAtomRef a3, LmnLinkAttr t3)
287287
{
288288
const char *src = (const char *)LMN_STRING_BUF(a0);
289289
char *s;
290290
LmnStringRef ret;
291+
LmnWord begin = (LmnWord)begin_;
292+
LmnWord end = (LmnWord)end_;
291293

292294
if (begin <= end) {
293295
int len = strlen(src);
294-
if (begin < 0) begin = 0;
295296
if (end > len) end = len;
296297
s = LMN_NALLOC(char, end - begin + 1);
297298
snprintf(s, end - begin + 1, "%s", src+begin);
@@ -301,37 +302,37 @@ void cb_string_substr(LmnReactCxtRef rc,
301302

302303
ret = lmn_string_make(s);
303304
LMN_FREE(s);
304-
lmn_mem_push_atom(mem, LMN_ATOM(ret), LMN_SP_ATOM_ATTR);
305+
lmn_mem_push_atom(mem, ret, LMN_SP_ATOM_ATTR);
305306
LINK_STR(mem, a3, t3, ret);
306307

307308
lmn_mem_delete_atom(mem, a0, t0);
308-
lmn_mem_delete_atom(mem, begin, t1);
309-
lmn_mem_delete_atom(mem, end, t2);
309+
lmn_mem_delete_atom(mem, begin_, t1);
310+
lmn_mem_delete_atom(mem, end_, t2);
310311
}
311312

312313
void cb_string_substr_right(LmnReactCxtRef rc,
313314
LmnMembraneRef mem,
314-
LmnAtom a0, LmnLinkAttr t0,
315-
long begin, LmnLinkAttr t1,
316-
LmnAtom a2, LmnLinkAttr t2)
315+
LmnAtomRef a0, LmnLinkAttr t0,
316+
LmnAtomRef begin_, LmnLinkAttr t1,
317+
LmnAtomRef a2, LmnLinkAttr t2)
317318
{
318319
const char *src = LMN_STRING_BUF(a0);
319320
char *s;
320321
int len = strlen(src);
321322
LmnStringRef ret;
323+
LmnWord begin = (LmnWord)begin_;
322324

323-
if (begin < 0) { begin = 0;}
324325
if (begin > len) begin = len;
325326
s = LMN_NALLOC(char, len - begin + 1);
326327
snprintf(s, len - begin + 1, "%s", src+begin);
327328

328329
ret = lmn_string_make(s);
329330
LMN_FREE(s);
330-
lmn_mem_push_atom(mem, LMN_ATOM(ret), LMN_SP_ATOM_ATTR);
331+
lmn_mem_push_atom(mem, ret, LMN_SP_ATOM_ATTR);
331332
LINK_STR(mem, a2, t2, ret);
332333

333334
lmn_mem_delete_atom(mem, a0, t0);
334-
lmn_mem_delete_atom(mem, begin, t1);
335+
lmn_mem_delete_atom(mem, begin_, t1);
335336
}
336337

337338

src/element/lmnstring.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,9 +42,10 @@
4242

4343
/* cldoc:begin-category(Lmntal::String) */
4444

45-
#include "lmntal.h"
4645
typedef struct LmnString *LmnStringRef;
4746

47+
#include "lmntal.h"
48+
4849
#define LMN_STRING(obj) ((struct LmnString *)(obj))
4950

5051
void string_init(void);
@@ -55,7 +56,6 @@ LmnStringRef lmn_string_make_empty(void);
5556
void lmn_string_free(LmnStringRef s);
5657
BOOL lmn_string_eq(LmnStringRef s1, LmnStringRef s2);
5758
LmnStringRef lmn_string_copy(LmnStringRef s);
58-
BOOL lmn_is_string(LmnAtom atom, LmnLinkAttr attr);
5959
unsigned long lmn_string_hash(LmnStringRef atom);
6060
const char *lmn_string_c_str(LmnStringRef atom);
6161
void lmn_string_push(LmnStringRef dst, const LmnStringRef src);

0 commit comments

Comments
 (0)