Ignore:
Timestamp:
Jul 10, 2024, 6:55:54 PM (8 days ago)
Author:
JiadaL <j82liang@…>
Branches:
master
Children:
236f133, 3be81a4
Parents:
725f777f
Message:

Fix the bug with typed anomynous enum got incorrect forward declaration

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/Validate/Autogen.cpp

    r725f777f r9d5eacb  
    245245        ast::EnumInstType enumInst( enumDecl->name );
    246246        enumInst.base = enumDecl;
    247         EnumFuncGenerator gen( enumDecl, &enumInst, functionNesting );
    248         gen.generateAndPrependDecls( declsToAddBefore );
     247        if ( enumDecl->isCfa ) {
     248                EnumFuncGenerator gen( enumDecl, &enumInst, functionNesting );
     249                gen.generateAndPrependDecls( declsToAddBefore );
     250        }
    249251
    250252        EnumFuncGenerator gen2( enumDecl, &enumInst, functionNesting );
     
    742744        for ( auto & generator : standardProtos ) {
    743745                ast::FunctionDecl * decl = (this->*generator)();
    744                 // produceForwardDecl( decl ); Done in genForwards
     746                produceForwardDecl( decl );
    745747                genFuncBody( decl );
    746748                if ( CodeGen::isAssignment( decl->name ) ) {
Note: See TracChangeset for help on using the changeset viewer.