diff options
Diffstat (limited to 'lobject.h')
-rw-r--r-- | lobject.h | 7 |
1 files changed, 3 insertions, 4 deletions
@@ -356,7 +356,7 @@ typedef struct GCObject { | |||
356 | 356 | ||
357 | 357 | ||
358 | /* | 358 | /* |
359 | ** Header for string value; string bytes follow the end of this structure. | 359 | ** Header for a string value. |
360 | */ | 360 | */ |
361 | typedef struct TString { | 361 | typedef struct TString { |
362 | CommonHeader; | 362 | CommonHeader; |
@@ -367,16 +367,15 @@ typedef struct TString { | |||
367 | size_t lnglen; /* length for long strings */ | 367 | size_t lnglen; /* length for long strings */ |
368 | struct TString *hnext; /* linked list for hash table */ | 368 | struct TString *hnext; /* linked list for hash table */ |
369 | } u; | 369 | } u; |
370 | char contents[1]; | ||
370 | } TString; | 371 | } TString; |
371 | 372 | ||
372 | 373 | ||
373 | 374 | ||
374 | /* | 375 | /* |
375 | ** Get the actual string (array of bytes) from a 'TString'. | 376 | ** Get the actual string (array of bytes) from a 'TString'. |
376 | ** (Access to 'extra' ensures that value is really a 'TString'.) | ||
377 | */ | 377 | */ |
378 | #define getstr(ts) \ | 378 | #define getstr(ts) ((ts)->contents) |
379 | check_exp(sizeof((ts)->extra), cast_charp((ts)) + sizeof(TString)) | ||
380 | 379 | ||
381 | 380 | ||
382 | /* get the actual string (array of bytes) from a Lua value */ | 381 | /* get the actual string (array of bytes) from a Lua value */ |