petdance/scratch — Issue #739: Fix namespace pollution
Author: petdance
Created: 2011-11-01 05:36:45+00:00
State: open
Labels: cage, core, Pri-minor, Sev-medium

This is the trac equivalent of RTs #40059 and #40060.

There are many global symbols we're exporting which don't have a "Parrot_" prefix. This list might vary a bit depending on OS and platform, but I'll attach my current list. By my count, there are currently 182 functions and 1 variable (PMCNULL) exported by default.

I think the idea is that these functions should be renamed from "funcname" to "Parrot_funcname", and some #defines should be left behind (inside an #ifdef PARROT_IN_CORE) so we don't need to fix up all the callers (and therefore, don't need a deprecation cycle).

I think it would be a good idea to make headerizer do this for us.

Trac ID #676