Ignore:
Timestamp:
Dec 11, 2024, 6:09:10 PM (7 days ago)
Author:
Michael Brooks <mlbrooks@…>
Branches:
master
Children:
e797179
Parents:
ec22220
Message:

Fix support for partial autogen.

Partial autogen means that some lifecycle functions are possible to generate, and needed, while others are impossible to generate, but unneeded. It is a valid situation that a user can implicitly request.

Previous handling of "impossible to generate" left the function in a zombie state, where it could show up as an alternative later. This zombie state is problematic handling caused by a compiler bug. Without the fix, the added test fails by creating zombie states.

This change is also a prerequsite for an upcoming change to avoid gcc warnings by not emitting autogen forward declarations.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/AST/SymbolTable.hpp

    rec22220 r64f3b9f  
    177177        void addFunction( const FunctionDecl * );
    178178
     179        /// Reclassifies the previously-indexed special declaration, so `combine` shows it as deleted
     180        void reviseSpecialAsDeleted( const FunctionDecl * );
     181
    179182private:
    180183        void OnFindError( CodeLocation location, std::string error ) const;
Note: See TracChangeset for help on using the changeset viewer.