-
Andrei Paskevich authored
- prevent leak of idents by separating them into two types: - "preid" -- user-created and non-unique - "ident" -- unique, generated from "preid" by various smart constructors: create_tysymbol, etc This guarantees that two different symbols never share an ident. - no need to hashcons tysymbols, fsymbols, and psymbols, as they are unique by construction - make separate hashconsing smart constructors for decl - export namespace as a private record (no reason to not to) - some code rearrangement in hashconsing of decls - fix namespace merging in close_namespace - namespace name can be just a string, no need to use ident
094ab658