@@ -756,7 +756,9 @@ var_t *parse_global_constant_value(block_t *parent, basic_block_t **bb)
756756 add_insn (parent , * bb , OP_load_constant , val , NULL , NULL , 0 , NULL );
757757 } else if (lex_peek (T_string , NULL )) {
758758 lex_accept (T_string );
759- /* Strings not supported in struct fields */
759+ /* TODO: String fields in structs not yet supported - requires proper
760+ * handling of string literals as initializers
761+ */
760762 } else {
761763 error ("Global array initialization requires constant values" );
762764 }
@@ -3657,8 +3659,9 @@ bool read_global_assignment(char *token)
36573659 if (lex_peek (T_string , NULL )) {
36583660 /* String literal global initialization:
36593661 * String literals are now stored in .rodata section.
3660- * TODO: Full support for global pointer initialization with
3661- * rodata addresses requires compile-time address resolution.
3662+ * TODO: Implement compile-time address resolution for global
3663+ * pointer initialization with rodata addresses
3664+ * (e.g., char *p = "str";)
36623665 */
36633666 read_literal_param (parent , bb );
36643667 rs1 = opstack_pop ();
@@ -4801,7 +4804,9 @@ void read_global_decl(block_t *block, bool is_const)
48014804 lex_expect (T_semicolon );
48024805 return ;
48034806 } else if (lex_accept (T_comma )) {
4804- /* TODO: Global variable continuation syntax not yet implemented */
4807+ /* TODO: Implement global variable continuation syntax for multiple
4808+ * declarations in single statement (e.g., int a = 1, b = 2;)
4809+ */
48054810 error ("Global continuation not supported" );
48064811 } else if (lex_accept (T_semicolon )) {
48074812 opstack_pop ();
0 commit comments