minor updates for better unused code cleanup in the c_library

This commit is contained in:
Edward R. Gonzalez 2024-12-16 17:18:52 -05:00
parent 6533a3be29
commit 6689235691
6 changed files with 30 additions and 29 deletions

View File

@ -72,16 +72,16 @@ inline Str spec_to_str( Specifier type )
inline bool spec_is_trailing( Specifier specifier ) inline bool spec_is_trailing( Specifier specifier )
{ {
switch (specifier) { switch ( specifier )
case Spec_Const: {
case Spec_Final: case Spec_Const :
case Spec_NoExceptions: case Spec_Final :
case Spec_Override: case Spec_NoExceptions :
case Spec_Pure: case Spec_Override :
case Spec_Volatile: case Spec_Pure :
case Spec_Volatile :
return true; return true;
default :
default:
return false; return false;
} }
} }

View File

@ -327,8 +327,6 @@ forceinline CodeBody def_union_body ( s32 num, Code* codes )
#pragma region Parsing #pragma region Parsing
// TODO(Ed) : Implmeent the new parser API design.
#if 0 #if 0
struct StackNode struct StackNode
{ {

View File

@ -3684,9 +3684,6 @@ CodeEnum parser_parse_enum( bool inplace_def )
Code array_expr = { nullptr }; Code array_expr = { nullptr };
CodeTypename type = { nullptr }; CodeTypename type = { nullptr };
char entries_code[ kilobytes(128) ] = { 0 };
s32 entries_length = 0;
bool is_enum_class = false; bool is_enum_class = false;
eat( Tok_Decl_Enum ); eat( Tok_Decl_Enum );
@ -4684,11 +4681,12 @@ else if ( currtok.Type == Tok_DeclType )
} }
} }
} }
// TODO(Ed): This needs updating
else if ( currtok.Type == Tok_Preprocess_Macro_Typename ) { else if ( currtok.Type == Tok_Preprocess_Macro_Typename ) {
// Typename is a macro // Typename is a macro
name = currtok; // name = currtok;
eat(Tok_Preprocess_Macro_Typename); // eat(Tok_Preprocess_Macro_Typename);
Code macro = parse_simple_preprocess(Tok_Preprocess_Macro_Typename);
name.Text = macro->Content;
} }
// The usual Identifier type signature that may have namespace qualifiers // The usual Identifier type signature that may have namespace qualifiers

View File

@ -1129,6 +1129,7 @@ R"(#define <interface_name>( code ) _Generic( (code), \
CodeBody interface = def_body(CT_Global_Body); CodeBody interface = def_body(CT_Global_Body);
for ( Code entry = parsed_interface.begin(); entry != parsed_interface.end(); ++ entry ) switch( entry->Type ) for ( Code entry = parsed_interface.begin(); entry != parsed_interface.end(); ++ entry ) switch( entry->Type )
{ {
case CT_Preprocess_If:
case CT_Preprocess_IfDef: case CT_Preprocess_IfDef:
{ {
b32 found = ignore_preprocess_cond_block(txt("GEN_INTELLISENSE_DIRECTIVES"), entry, parsed_interface, interface ); b32 found = ignore_preprocess_cond_block(txt("GEN_INTELLISENSE_DIRECTIVES"), entry, parsed_interface, interface );
@ -1217,11 +1218,18 @@ R"(#define <interface_name>( code ) _Generic( (code), \
CodeBody inlines = def_body(CT_Global_Body); CodeBody inlines = def_body(CT_Global_Body);
for ( Code entry = parsed_inlines.begin(); entry != parsed_inlines.end(); ++ entry ) switch( entry->Type ) for ( Code entry = parsed_inlines.begin(); entry != parsed_inlines.end(); ++ entry ) switch( entry->Type )
{ {
case CT_Preprocess_If:
case CT_Preprocess_IfDef: case CT_Preprocess_IfDef:
{ {
b32 found = ignore_preprocess_cond_block(txt("GEN_INTELLISENSE_DIRECTIVES"), entry, parsed_inlines, inlines ); b32 found = ignore_preprocess_cond_block(txt("GEN_INTELLISENSE_DIRECTIVES"), entry, parsed_inlines, inlines );
if (found) break; if (found) break;
found = ignore_preprocess_cond_block(txt("GEN_COMPILER_CPP"), entry, parsed_interface, interface);
if (found) break;
found = ignore_preprocess_cond_block(txt("0"), entry, parsed_interface, interface);
if (found) break;
inlines.append(entry); inlines.append(entry);
} }
break; break;

View File

@ -28,10 +28,9 @@ b32 ignore_preprocess_cond_block( Str cond_sig, Code& entry_iter, CodeBody& pars
//log_fmt("Preprocess cond found: %S\n", cond->Content); //log_fmt("Preprocess cond found: %S\n", cond->Content);
found = true; found = true;
s32 depth = 1; s32 depth = 0;
++ entry_iter; for(b32 continue_for = true; continue_for && entry_iter != parsed_body.end(); ) switch (entry_iter->Type)
for(b32 continue_for = true; continue_for && entry_iter != parsed_body.end(); ) switch {
(entry_iter->Type) {
case CT_Preprocess_If: case CT_Preprocess_If:
case CT_Preprocess_IfDef: case CT_Preprocess_IfDef:
case CT_Preprocess_IfNotDef: case CT_Preprocess_IfNotDef:
@ -41,20 +40,18 @@ b32 ignore_preprocess_cond_block( Str cond_sig, Code& entry_iter, CodeBody& pars
case CT_Preprocess_Else: case CT_Preprocess_Else:
++ entry_iter; ++ entry_iter;
for(; continue_for && entry_iter != parsed_body.end(); ++ entry_iter) if (depth == 1) for(; entry_iter != parsed_body.end(); ++ entry_iter)
{ {
if (entry_iter->Type == CT_Preprocess_EndIf) if ( entry_iter->Type == CT_Preprocess_EndIf)
{
continue_for = false;
break; break;
}
body.append(entry_iter); body.append(entry_iter);
} }
break; break;
case CT_Preprocess_EndIf: case CT_Preprocess_EndIf:
{ {
depth --; -- depth;
if (depth == 0) { if (depth == 0) {
continue_for = false; continue_for = false;
break; break;

View File

@ -326,7 +326,7 @@ if ( $unreal )
} }
# C Library testing # C Library testing
if ( $test -and $false ) if ( $test -and $true )
{ {
$path_test_c = join-path $path_test c_library $path_test_c = join-path $path_test c_library
$path_build = join-path $path_test_c build $path_build = join-path $path_test_c build