Ignore:
Timestamp:
Aug 19, 2018, 12:09:00 PM (6 years ago)
Author:
Rob Schluntz <rschlunt@…>
Branches:
ADT, aaron-thesis, arm-eh, ast-experimental, cleanup-dtors, deferred_resn, demangler, enum, forall-pointer-decay, jacob/cs343-translation, jenkins-sandbox, master, new-ast, new-ast-unique-expr, no_list, persistent-indexer, pthread-emulation, qualifiedEnum
Children:
04c77791
Parents:
38587bc
Message:

Fix name mangling for type variables and forall lists

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/SymTab/ManglerCommon.cc

    r38587bc r0e73845  
    1616#include "Mangler.h"
    1717#include "SynTree/Type.h"
     18#include "SynTree/Declaration.h"
    1819
    1920namespace SymTab {
     
    8283                        const std::string qualifiedTypeEnd = "E";
    8384
     85                        const std::string forall = "Q";
     86                        const std::string typeVariables[] = {
     87                                "BD", // dtype
     88                                "BF", // ftype
     89                                "BT", // ttype
     90                        };
     91                        static_assert(
     92                                sizeof(typeVariables)/sizeof(typeVariables[0]) == TypeDecl::NUMBER_OF_KINDS,
     93                                "Each type variable kind should have a corresponding mangler prefix"
     94                        );
     95
    8496                        const std::string struct_t = "S";
    8597                        const std::string union_t = "U";
Note: See TracChangeset for help on using the changeset viewer.