Make type macroInt$ have rawtype "int const" instead of "int" so that NULL translates to a constant integral type.
Make type macroInt$ have rawtype "int const" instead of
"int" so that NULL translates to a constant integral type.

The C++ standard has this to say in section
4.10 Pointer conversions [conv.ptr]:

     A "null pointer constant" is an integral constant
     expression (5.19) rvalue of integer type that
     evaluates to zero.

This is a problem in a function overloading situation
like this:

void f(double);
void f(char*);

int main()
{
   for (int i = 1; i < 10; ++i) {
      f(i);
   }
}

The rule in section 4.10 on null pointer constants
and the rules in Chapter 13 Overloading, make f(char*)
a non-viable function for overloading purposes
because i is not a "integral constant expression".

However given:

     #define POGO 0

then in the same loop a call written:

     f(POGO);

is ambiguous since both of the functions are viable
(because POGO is substituted with 0, which is an
integral constant expression).

In cint "#define int MyType" is implemented as a variable
definition using the special type macroInt$.  So we need
to make that type const so that overloading works correctly.

Note that this is all a gross hack to paper over the fact
that cint does not have a proper preprocessor.

-- Paul Russo and Philippe Canal


git-svn-id: acec3fd5b7ea1eb9e79d6329d318e8118ee2e14f@24273 27541ba8-7e3a-0410-8455-c3a389f83636

sirinath/root,root-mirror/root,mkret2/root,lgiommi/root,buuck/root,Duraznos/root,perovic/root,simonpf/root,satyarth934/root,tc3t/qoot,buuck/root,krafczyk/root,satyarth934/root,sirinath/root,bbockelm/root,veprbl/root,sbinet/cxx-root,root-mirror/root,veprbl/root,Y--/root,esakellari/root,Y--/root,alexschlueter/cern-root,olifre/root,arch1tect0r/root,beniz/root,mhuwiler/rootauto,mhuwiler/rootauto,nilqed/root,tc3t/qoot,mkret2/root,sbinet/cxx-root,esakellari/my_root_for_test,BerserkerTroll/root,esakellari/root,mkret2/root,jrtomps/root,Duraznos/root,lgiommi/root,smarinac/root,zzxuanyuan/root,omazapa/root-old,nilqed/root,Y--/root,0x0all/ROOT,strykejern/TTreeReader,esakellari/my_root_for_test,pspe/root,arch1tect0r/root,sbinet/cxx-root,agarciamontoro/root,evgeny-boger/root,nilqed/root,sawenzel/root,beniz/root,simonpf/root,sawenzel/root,0x0all/ROOT,sawenzel/root,sirinath/root,georgtroska/root,buuck/root,perovic/root,sawenzel/root,nilqed/root,jrtomps/root,davidlt/root,ffurano/root5,sbinet/cxx-root,ffurano/root5,esakellari/my_root_for_test,bbockelm/root,root-mirror/root,alexschlueter/cern-root,Dr15Jones/root,mhuwiler/rootauto,beniz/root,gganis/root,lgiommi/root,CristinaCristescu/root,alexschlueter/cern-root,esakellari/root,0x0all/ROOT,satyarth934/root,omazapa/root,arch1tect0r/root,veprbl/root,bbockelm/root,simonpf/root,buuck/root,perovic/root,0x0all/ROOT,dfunke/root,zzxuanyuan/root-compressor-dummy,zzxuanyuan/root-compressor-dummy,davidlt/root,lgiommi/root,mattkretz/root,root-mirror/root,abhinavmoudgil95/root,karies/root,zzxuanyuan/root-compressor-dummy,gbitzes/root,agarciamontoro/root,agarciamontoro/root,esakellari/my_root_for_test,zzxuanyuan/root-compressor-dummy,perovic/root,mhuwiler/rootauto,lgiommi/root,karies/root,sbinet/cxx-root,mhuwiler/rootauto,davidlt/root,bbockelm/root,dfunke/root,gganis/root,root-mirror/root,omazapa/root,omazapa/root,kirbyherm/root-r-tools,cxx-hep/root-cern,nilqed/root,karies/root,CristinaCristescu/root,perovic/root,agarciamontoro/root,buuck/root,BerserkerTroll/root,karies/root,0x0all/ROOT,0x0all/ROOT,davidlt/root,sirinath/root,simonpf/root,beniz/root,zzxuanyuan/root,abhinavmoudgil95/root,olifre/root,krafczyk/root,gganis/root,esakellari/my_root_for_test,perovic/root,veprbl/root,mkret2/root,olifre/root,vukasinmilosevic/root,pspe/root,bbockelm/root,Dr15Jones/root,Y--/root,omazapa/root,davidlt/root,Y--/root,buuck/root,simonpf/root,ffurano/root5,pspe/root,zzxuanyuan/root-compressor-dummy,karies/root,omazapa/root,Dr15Jones/root,esakellari/root,cxx-hep/root-cern,mhuwiler/rootauto,Duraznos/root,beniz/root,pspe/root,davidlt/root,gganis/root,krafczyk/root,georgtroska/root,BerserkerTroll/root,evgeny-boger/root,simonpf/root,gbitzes/root,vukasinmilosevic/root,thomaskeck/root,mhuwiler/rootauto,beniz/root,ffurano/root5,krafczyk/root,lgiommi/root,davidlt/root,agarciamontoro/root,zzxuanyuan/root,vukasinmilosevic/root,gganis/root,lgiommi/root,bbockelm/root,dfunke/root,sbinet/cxx-root,sbinet/cxx-root,evgeny-boger/root,kirbyherm/root-r-tools,kirbyherm/root-r-tools,lgiommi/root,kirbyherm/root-r-tools,agarciamontoro/root,abhinavmoudgil95/root,strykejern/TTreeReader,satyarth934/root,sawenzel/root,sirinath/root,thomaskeck/root,perovic/root,zzxuanyuan/root,omazapa/root,CristinaCristescu/root,georgtroska/root,tc3t/qoot,karies/root,omazapa/root-old,karies/root,bbockelm/root,beniz/root,simonpf/root,buuck/root,mhuwiler/rootauto,gganis/root,strykejern/TTreeReader,sawenzel/root,veprbl/root,satyarth934/root,gganis/root,tc3t/qoot,satyarth934/root,nilqed/root,bbockelm/root,esakellari/root,sirinath/root,esakellari/my_root_for_test,zzxuanyuan/root,zzxuanyuan/root-compressor-dummy,sbinet/cxx-root,omazapa/root,krafczyk/root,bbockelm/root,dfunke/root,Dr15Jones/root,lgiommi/root,olifre/root,omazapa/root-old,sirinath/root,smarinac/root,alexschlueter/cern-root,abhinavmoudgil95/root,olifre/root,0x0all/ROOT,krafczyk/root,sirinath/root,sawenzel/root,Y--/root,CristinaCristescu/root,gbitzes/root,sbinet/cxx-root,beniz/root,evgeny-boger/root,dfunke/root,omazapa/root-old,thomaskeck/root,sirinath/root,root-mirror/root,jrtomps/root,karies/root,sbinet/cxx-root,CristinaCristescu/root,georgtroska/root,CristinaCristescu/root,mkret2/root,Duraznos/root,vukasinmilosevic/root,krafczyk/root,nilqed/root,zzxuanyuan/root-compressor-dummy,pspe/root,evgeny-boger/root,kirbyherm/root-r-tools,vukasinmilosevic/root,mkret2/root,mattkretz/root,root-mirror/root,evgeny-boger/root,cxx-hep/root-cern,ffurano/root5,root-mirror/root,dfunke/root,evgeny-boger/root,sirinath/root,strykejern/TTreeReader,simonpf/root,zzxuanyuan/root,smarinac/root,evgeny-boger/root,BerserkerTroll/root,Duraznos/root,karies/root,vukasinmilosevic/root,zzxuanyuan/root-compressor-dummy,omazapa/root,ffurano/root5,agarciamontoro/root,Duraznos/root,kirbyherm/root-r-tools,mkret2/root,olifre/root,evgeny-boger/root,alexschlueter/cern-root,zzxuanyuan/root,vukasinmilosevic/root,gbitzes/root,Dr15Jones/root,arch1tect0r/root,esakellari/root,mkret2/root,omazapa/root,arch1tect0r/root,esakellari/root,gbitzes/root,thomaskeck/root,satyarth934/root,CristinaCristescu/root,mkret2/root,vukasinmilosevic/root,gganis/root,0x0all/ROOT,jrtomps/root,sawenzel/root,mattkretz/root,krafczyk/root,vukasinmilosevic/root,buuck/root,agarciamontoro/root,abhinavmoudgil95/root,Y--/root,smarinac/root,veprbl/root,agarciamontoro/root,arch1tect0r/root,tc3t/qoot,georgtroska/root,mattkretz/root,davidlt/root,Y--/root,esakellari/my_root_for_test,Y--/root,bbockelm/root,esakellari/root,agarciamontoro/root,perovic/root,pspe/root,georgtroska/root,gbitzes/root,strykejern/TTreeReader,sawenzel/root,mattkretz/root,root-mirror/root,Duraznos/root,arch1tect0r/root,esakellari/my_root_for_test,jrtomps/root,esakellari/root,abhinavmoudgil95/root,thomaskeck/root,omazapa/root-old,nilqed/root,omazapa/root,olifre/root,esakellari/my_root_for_test,agarciamontoro/root,beniz/root,zzxuanyuan/root-compressor-dummy,nilqed/root,krafczyk/root,perovic/root,sawenzel/root,mhuwiler/rootauto,sbinet/cxx-root,pspe/root,arch1tect0r/root,mhuwiler/rootauto,gbitzes/root,dfunke/root,arch1tect0r/root,veprbl/root,gganis/root,0x0all/ROOT,gganis/root,buuck/root,jrtomps/root,mattkretz/root,beniz/root,dfunke/root,mattkretz/root,smarinac/root,tc3t/qoot,omazapa/root-old,BerserkerTroll/root,sirinath/root,dfunke/root,mattkretz/root,jrtomps/root,lgiommi/root,simonpf/root,zzxuanyuan/root,Dr15Jones/root,veprbl/root,veprbl/root,zzxuanyuan/root,buuck/root,omazapa/root-old,arch1tect0r/root,cxx-hep/root-cern,cxx-hep/root-cern,omazapa/root-old,thomaskeck/root,sawenzel/root,esakellari/root,smarinac/root,mhuwiler/rootauto,thomaskeck/root,BerserkerTroll/root,BerserkerTroll/root,omazapa/root,nilqed/root,root-mirror/root,smarinac/root,Duraznos/root,ffurano/root5,satyarth934/root,pspe/root,veprbl/root,krafczyk/root,georgtroska/root,abhinavmoudgil95/root,satyarth934/root,georgtroska/root,evgeny-boger/root,olifre/root,georgtroska/root,omazapa/root-old,omazapa/root-old,davidlt/root,mattkretz/root,zzxuanyuan/root,Y--/root,tc3t/qoot,krafczyk/root,Dr15Jones/root,zzxuanyuan/root,kirbyherm/root-r-tools,CristinaCristescu/root,mkret2/root,zzxuanyuan/root-compressor-dummy,root-mirror/root,BerserkerTroll/root,thomaskeck/root,smarinac/root,cxx-hep/root-cern,gbitzes/root,buuck/root,jrtomps/root,davidlt/root,dfunke/root,olifre/root,tc3t/qoot,Y--/root,alexschlueter/cern-root,jrtomps/root,perovic/root,gbitzes/root,georgtroska/root,satyarth934/root,olifre/root,veprbl/root,mattkretz/root,abhinavmoudgil95/root,gbitzes/root,thomaskeck/root,zzxuanyuan/root,CristinaCristescu/root,cxx-hep/root-cern,jrtomps/root,cxx-hep/root-cern,Duraznos/root,mkret2/root,abhinavmoudgil95/root,CristinaCristescu/root,CristinaCristescu/root,dfunke/root,gganis/root,pspe/root,strykejern/TTreeReader,pspe/root,georgtroska/root,esakellari/my_root_for_test,zzxuanyuan/root-compressor-dummy,karies/root,beniz/root,omazapa/root-old,simonpf/root,alexschlueter/cern-root,BerserkerTroll/root,smarinac/root,satyarth934/root,thomaskeck/root,vukasinmilosevic/root,Duraznos/root,simonpf/root,jrtomps/root,Duraznos/root,lgiommi/root,olifre/root,BerserkerTroll/root,pspe/root,davidlt/root,karies/root,tc3t/qoot,BerserkerTroll/root,arch1tect0r/root,gbitzes/root,tc3t/qoot,abhinavmoudgil95/root,mattkretz/root,bbockelm/root,evgeny-boger/root,perovic/root,abhinavmoudgil95/root,strykejern/TTreeReader,vukasinmilosevic/root,esakellari/root,nilqed/root,smarinac/root