www.digitalmars.com         C & C++   DMDScript  

c++ - Internal error: ph 1114

reply Scott Michel <scottm cs.ucla.edu> writes:
I'm going to appologize up front for posting frequently, but I'm still
crawling up the learning curve. (*)

I'm creating a precompiled header and I'm getting the following output:

Internal error: ph 1114
-- errorlevel 1

Clearly I've uncovered a compiler "feature" (**). The question is what's the
workaround [the obvious one being to not use precompiled headers] and how
soon can this feature get fixed?


-scooter

(*) I've resorted to XEmacs and smake instead of the IDDE.
(**) There are no bugs, only undiscovered features.
Jan 17 2004
parent reply "Walter" <walter digitalmars.com> writes:
"Scott Michel" <scottm cs.ucla.edu> wrote in message
news:bucs0g$173i$1 digitaldaemon.com...
 I'm creating a precompiled header and I'm getting the following output:

 Internal error: ph 1114
 -- errorlevel 1

 Clearly I've uncovered a compiler "feature" (**). The question is what's
the
 workaround [the obvious one being to not use precompiled headers] and how
 soon can this feature get fixed?
I need to be able to reproduce it to fix it. See www.digitalmars.com/faq.html#error
Jan 17 2004
next sibling parent Scott Michel <scottm cs.ucla.edu> writes:
Walter wrote:
 "Scott Michel" <scottm cs.ucla.edu> wrote in message
 news:bucs0g$173i$1 digitaldaemon.com...
 I'm creating a precompiled header and I'm getting the following output:

 Internal error: ph 1114
 -- errorlevel 1

 Clearly I've uncovered a compiler "feature" (**). The question is what's
the
 workaround [the obvious one being to not use precompiled headers] and how
 soon can this feature get fixed?
Pardon my presumptuousness. No gauruntees that it will get fixed...
 I need to be able to reproduce it to fix it. See
 www.digitalmars.com/faq.html#error
I've tried '-e -llisting.lst', but the output appears to get truncated (buffer not flushed when assert is triggered?) I'll test to see if the error is reproducable on just that fragment that gets output and send the fragment if it is reproducable. Otherwise, I'll have to spend time to narrow the problem down to its minimum, which might not be 10 lines or less. -scooter
Jan 17 2004
prev sibling next sibling parent reply Scott Michel <scottm cs.ucla.edu> writes:
Walter wrote:
 "Scott Michel" <scottm cs.ucla.edu> wrote in message
 news:bucs0g$173i$1 digitaldaemon.com...
 I'm creating a precompiled header and I'm getting the following output:

 Internal error: ph 1114
 -- errorlevel 1

 Clearly I've uncovered a compiler "feature" (**). The question is what's
the
 workaround [the obvious one being to not use precompiled headers] and how
 soon can this feature get fixed?
I need to be able to reproduce it to fix it. See www.digitalmars.com/faq.html#error
Much easier than I thought, it's a one line header file: --- brokenHeader.h --- #include <iostream> --- brokenHeader.h --- I'm compiling it as follows: sc -cpp -I\dm\stlport\stlport -HFbrokenHeader.sym brokenHeader.h Produces: Internal error: ph 1114 -- errorlevel 1
Jan 17 2004
next sibling parent reply Scott Michel <scottm cs.ucla.edu> writes:
I did some header file chasing and was able to narrow the internal error
down to the include <stl/_algobase.c>. I wasn't able to narrow the bug to
any specific line in _algobase.c.


-scooter

Scott Michel wrote:
 Walter wrote:
 "Scott Michel" <scottm cs.ucla.edu> wrote in message
 news:bucs0g$173i$1 digitaldaemon.com...
 I'm creating a precompiled header and I'm getting the following output:

 Internal error: ph 1114
 -- errorlevel 1

 Clearly I've uncovered a compiler "feature" (**). The question is what's
the
 workaround [the obvious one being to not use precompiled headers] and
 how soon can this feature get fixed?
I need to be able to reproduce it to fix it. See www.digitalmars.com/faq.html#error
Much easier than I thought, it's a one line header file: --- brokenHeader.h --- #include <iostream> --- brokenHeader.h --- I'm compiling it as follows: sc -cpp -I\dm\stlport\stlport -HFbrokenHeader.sym brokenHeader.h Produces: Internal error: ph 1114 -- errorlevel 1
Jan 18 2004
parent reply -scooter- <scottm cs.ucla.edu> writes:
Taking a break from dissertation writing, I've tracked the problem down a 
little more to stl/_iterator.h. If you try to compile _iterator.h by itself, 
everything is fine. When used in _algobase.c, however, the following lines 
118-128 are the problem:

template <class _Iterator>
inline bool  _STLP_CALL operator==(const reverse_iterator<_Iterator>& __x,
                        const reverse_iterator<_Iterator>& __y) {
   return __x.base() == __y.base();
}

template <class _Iterator>
inline bool _STLP_CALL operator<(const reverse_iterator<_Iterator>& __x,
                       const reverse_iterator<_Iterator>& __y) {
   return __y.base() < __x.base();
}

If these lines are #if 0'd out, then the ph.c 1114 assert doesn't get triggered.


-scooter

Scott Michel wrote:
 I did some header file chasing and was able to narrow the internal error
 down to the include <stl/_algobase.c>. I wasn't able to narrow the bug to
 any specific line in _algobase.c.
 
 
 -scooter
 
 Scott Michel wrote:
 
Walter wrote:

"Scott Michel" <scottm cs.ucla.edu> wrote in message
news:bucs0g$173i$1 digitaldaemon.com...

I'm creating a precompiled header and I'm getting the following output:

Internal error: ph 1114
-- errorlevel 1

Clearly I've uncovered a compiler "feature" (**). The question is what's
the
workaround [the obvious one being to not use precompiled headers] and
how soon can this feature get fixed?
I need to be able to reproduce it to fix it. See www.digitalmars.com/faq.html#error
Much easier than I thought, it's a one line header file: --- brokenHeader.h --- #include <iostream> --- brokenHeader.h --- I'm compiling it as follows: sc -cpp -I\dm\stlport\stlport -HFbrokenHeader.sym brokenHeader.h Produces: Internal error: ph 1114 -- errorlevel 1
Jan 18 2004
parent Phil Thompson <phil electricvisions.com> writes:
Yes this problem has had me going for a while too. In fact it only seems 
to be the first operator, the equality operator, that causes the 1114 
internal error for me.

I'd love to know when this is fixed as I have a large VC++ project that 
uses precompiled headers all the way through and having to compile these 
everytime would really slow things down.

Thanks.

Regards,
Phil


-scooter- wrote:

 Taking a break from dissertation writing, I've tracked the problem down 
 a little more to stl/_iterator.h. If you try to compile _iterator.h by 
 itself, everything is fine. When used in _algobase.c, however, the 
 following lines 118-128 are the problem:
 
 template <class _Iterator>
 inline bool  _STLP_CALL operator==(const reverse_iterator<_Iterator>& __x,
                        const reverse_iterator<_Iterator>& __y) {
   return __x.base() == __y.base();
 }
 
 template <class _Iterator>
 inline bool _STLP_CALL operator<(const reverse_iterator<_Iterator>& __x,
                       const reverse_iterator<_Iterator>& __y) {
   return __y.base() < __x.base();
 }
 
 If these lines are #if 0'd out, then the ph.c 1114 assert doesn't get 
 triggered.
 
 
 -scooter
 
 Scott Michel wrote:
 
 I did some header file chasing and was able to narrow the internal error
 down to the include <stl/_algobase.c>. I wasn't able to narrow the bug to
 any specific line in _algobase.c.


 -scooter

 Scott Michel wrote:

 Walter wrote:

 "Scott Michel" <scottm cs.ucla.edu> wrote in message
 news:bucs0g$173i$1 digitaldaemon.com...

 I'm creating a precompiled header and I'm getting the following 
 output:

 Internal error: ph 1114
 -- errorlevel 1

 Clearly I've uncovered a compiler "feature" (**). The question is 
 what's
the
 workaround [the obvious one being to not use precompiled headers] and
 how soon can this feature get fixed?
I need to be able to reproduce it to fix it. See www.digitalmars.com/faq.html#error
Much easier than I thought, it's a one line header file: --- brokenHeader.h --- #include <iostream> --- brokenHeader.h --- I'm compiling it as follows: sc -cpp -I\dm\stlport\stlport -HFbrokenHeader.sym brokenHeader.h Produces: Internal error: ph 1114 -- errorlevel 1
Jan 23 2004
prev sibling parent "Walter" <walter digitalmars.com> writes:
"Scott Michel" <scottm cs.ucla.edu> wrote in message
news:bud3l7$1j7p$1 digitaldaemon.com...
 Much easier than I thought, it's a one line header file:

    --- brokenHeader.h ---
    #include <iostream>
    --- brokenHeader.h ---

 I'm compiling it as follows:

    sc -cpp -I\dm\stlport\stlport -HFbrokenHeader.sym brokenHeader.h

 Produces:

    Internal error: ph 1114
    -- errorlevel 1
Thanks. That's just what I need. -Walter
Jan 18 2004
prev sibling parent reply trembb22 <trembb22_member pathlink.com> writes:
can someone help fixing this and explain its meaning a little:

Internal error: cod1 1280

thank you

Benoit
Nov 30 2004
parent reply "Walter" <newshound digitalmars.com> writes:
"trembb22" <trembb22_member pathlink.com> wrote in message
news:coibes$21rv$1 digitaldaemon.com...
 can someone help fixing this and explain its meaning a little:

 Internal error: cod1 1280
This should help: www.digitalmars.com/bugs.html
Dec 01 2004
parent reply trembb22 <trembb22_member pathlink.com> writes:
Ok, now I have more information about the internal error of the digital mars
compiler. Here the simple code that produce the internal error.

UINTCALL FctIntHandlerId(void) {
//static int Gap = GetFctIntGap();
static int Gap=1;
if (IdFctInt != NULL)
return IdFctInt[(uFV - FirstFctIntAddr) / Gap /*FctIntGap*/ ];
else
return FctIntHandlerId2TD();	// was: FctIntHandlerId2() 16juil03
}

if uncomment "static int Gap = GetFctIntGap();" I got an internal error at
compile time.
if a put everyting under comment inside GetFctIntGap(); then I still got the
internal error. 
If a comment like above, they is no more internal error.

So, the issue is about executiong GetFctIntGap only one time because of the
static variable that alwayse initalised only one time.

that was a tuff one to isolate...

Benoit


In article <cok199$1hit$1 digitaldaemon.com>, Walter says...
"trembb22" <trembb22_member pathlink.com> wrote in message
news:coibes$21rv$1 digitaldaemon.com...
 can someone help fixing this and explain its meaning a little:

 Internal error: cod1 1280
This should help: www.digitalmars.com/bugs.html
Dec 02 2004
parent "Walter" <newshound digitalmars.com> writes:
Great, but please can I have a complete standalone example that exhibits the
error, and the command line switches used, so I can duplicate it? Thanks!

"trembb22" <trembb22_member pathlink.com> wrote in message
news:cooj6n$2f27$1 digitaldaemon.com...
 Ok, now I have more information about the internal error of the digital
mars
 compiler. Here the simple code that produce the internal error.

 UINTCALL FctIntHandlerId(void) {
 //static int Gap = GetFctIntGap();
 static int Gap=1;
 if (IdFctInt != NULL)
 return IdFctInt[(uFV - FirstFctIntAddr) / Gap /*FctIntGap*/ ];
 else
 return FctIntHandlerId2TD(); // was: FctIntHandlerId2() 16juil03
 }

 if uncomment "static int Gap = GetFctIntGap();" I got an internal error at
 compile time.
 if a put everyting under comment inside GetFctIntGap(); then I still got
the
 internal error.
 If a comment like above, they is no more internal error.

 So, the issue is about executiong GetFctIntGap only one time because of
the
 static variable that alwayse initalised only one time.

 that was a tuff one to isolate...

 Benoit


 In article <cok199$1hit$1 digitaldaemon.com>, Walter says...
"trembb22" <trembb22_member pathlink.com> wrote in message
news:coibes$21rv$1 digitaldaemon.com...
 can someone help fixing this and explain its meaning a little:

 Internal error: cod1 1280
This should help: www.digitalmars.com/bugs.html
Dec 05 2004