Segfault on new?

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • Scoots

    Segfault on new?

    Okay, I have a really simple program that illustrates a problem I'm
    having.

    I'm using VC++6.0 (yes, an upgrade is in the works). Anywho, I have
    this problem:


    int main (int argc, char * argv[])
    {
    int iNumFuncs = 1;
    int * hey = new int [iNumFuncs]; <<--Segfaults. ??????
    return 0;
    }


    Is my installation just gone out the window, or am I so incredibly
    tired that I can't even do a dynamic allocation anymore?
  • Victor Bazarov

    #2
    Re: Segfault on new?

    Scoots wrote:
    Okay, I have a really simple program that illustrates a problem I'm
    having.
    >
    I'm using VC++6.0 (yes, an upgrade is in the works). Anywho, I have
    this problem:
    >
    >
    int main (int argc, char * argv[])
    {
    int iNumFuncs = 1;
    int * hey = new int [iNumFuncs]; <<--Segfaults. ??????
    return 0;
    }
    >
    >
    Is my installation just gone out the window, or am I so incredibly
    tired that I can't even do a dynamic allocation anymore?
    The code seems OK (the memory leak is beside the point, I guess). If
    you need your question answered with VC++ in mind, then you need to ask
    it in the VC++ newsgroup, though: microsoft.publi c.vc.language.

    There can be some compiler specific settings that are off-topic here,
    try the other newsgroup and see what they say...

    V
    --
    Please remove capital 'A's when replying by e-mail
    I do not respond to top-posted replies, please don't ask

    Comment

    • Scoots

      #3
      Re: Segfault on new?



      On Sep 30, 5:54 pm, Victor Bazarov <v.Abaza...@com Acast.netwrote:
      Scoots wrote:
      Okay, I have a really simple program that illustrates a problem I'm
      having.
      >
      I'm using VC++6.0 (yes, an upgrade is in the works). Anywho, I have
      this problem:
      >
      int main (int argc, char * argv[])
      {
      int iNumFuncs = 1;
      int * hey = new int [iNumFuncs]; <<--Segfaults. ??????
      return 0;
      }
      >
      Is my installation just gone out the window, or am I so incredibly
      tired that I can't even do a dynamic allocation anymore?
      >
      The code seems OK (the memory leak is beside the point, I guess). If
      you need your question answered with VC++ in mind, then you need to ask
      it in the VC++ newsgroup, though: microsoft.publi c.vc.language.
      >
      There can be some compiler specific settings that are off-topic here,
      try the other newsgroup and see what they say...
      >
      V
      --
      Please remove capital 'A's when replying by e-mail
      I do not respond to top-posted replies, please don't ask- Hide quoted text -
      >
      - Show quoted text -
      Well, the memory leak is kinda irrelevant, I just commented out the
      few hundred other lines in the code and didn't bother posting them
      here. There IS a delete[], it's just commented out.

      And I didn't think this was a VC++ question in particular, since I'm
      not using a single call to anything relating to VC++. What I posted
      should be standard c++ in it's entirety.

      My question, is what can be causing that. And I believe your answer
      was: "Compiler."

      Thanks,
      ~Scoots.

      (P.S. I appologize for any seeming rudeness, it is unintentional.)

      Comment

      • Chris Gordon-Smith

        #4
        Re: Segfault on new?

        Scoots wrote:
        >
        >
        On Sep 30, 5:54 pm, Victor Bazarov <v.Abaza...@com Acast.netwrote:
        >Scoots wrote:
        Okay, I have a really simple program that illustrates a problem I'm
        having.
        >>
        I'm using VC++6.0 (yes, an upgrade is in the works). Anywho, I have
        this problem:
        >>
        int main (int argc, char * argv[])
        {
        int iNumFuncs = 1;
        int * hey = new int [iNumFuncs]; <<--Segfaults. ??????
        return 0;
        }
        >>
        Is my installation just gone out the window, or am I so incredibly
        tired that I can't even do a dynamic allocation anymore?
        >>
        >The code seems OK (the memory leak is beside the point, I guess). If
        >you need your question answered with VC++ in mind, then you need to ask
        >it in the VC++ newsgroup, though: microsoft.publi c.vc.language.
        >>
        >There can be some compiler specific settings that are off-topic here,
        >try the other newsgroup and see what they say...
        >>
        >V
        >--
        >Please remove capital 'A's when replying by e-mail
        >I do not respond to top-posted replies, please don't ask- Hide quoted
        >text -
        >>
        >- Show quoted text -
        >
        Well, the memory leak is kinda irrelevant, I just commented out the
        few hundred other lines in the code and didn't bother posting them
        here. There IS a delete[], it's just commented out.
        >
        And I didn't think this was a VC++ question in particular, since I'm
        not using a single call to anything relating to VC++. What I posted
        should be standard c++ in it's entirety.
        >
        My question, is what can be causing that. And I believe your answer
        was: "Compiler."
        >
        Thanks,
        ~Scoots.
        >
        (P.S. I appologize for any seeming rudeness, it is unintentional.)
        I don't use arrays much, so the syntax is a bit unfamiliar to me. However,
        its working fine here with gcc version 4.3.1 on OpenSUSE 11.0

        int main (int argc, char * argv[])
        {
        int iNumFuncs = 1;
        int * hey = new int [iNumFuncs]; //  <<--Segfaults.   ??????
        hey[0] = 99;
        cout << "hey = " << hey << " hey[0] = " << hey[0] << endl;
        return 0;
        }

        Output: hey = 0x804b008 hey[0] = 99

        Chris Gordon-Smith
        Origin Of Life, Chris Gordon-Smith, Oparin, Haldane, Primordial Soup, Artificial Chemistry, Flexica, Cellular Automata





        Comment

        • Paavo Helde

          #5
          Re: Segfault on new?

          Scoots <linkingfire@ms n.comkirjutas:
          Okay, I have a really simple program that illustrates a problem I'm
          having.
          >
          I'm using VC++6.0 (yes, an upgrade is in the works). Anywho, I have
          this problem:
          >
          >
          int main (int argc, char * argv[])
          {
          int iNumFuncs = 1;
          int * hey = new int [iNumFuncs]; <<--Segfaults. ??????
          return 0;
          }
          With VC++ you should not be able to get a segfault. At best you could hope
          for an access violation ;-)

          This aside, your code looks fine. Are you sure you posted the actual code?

          Paavo


          Comment

          • Rolf Magnus

            #6
            Re: Segfault on new?

            Scoots wrote:
            On Sep 30, 5:54 pm, Victor Bazarov <v.Abaza...@com Acast.netwrote:
            >Scoots wrote:
            Okay, I have a really simple program that illustrates a problem I'm
            having.
            >>
            I'm using VC++6.0 (yes, an upgrade is in the works). Anywho, I have
            this problem:
            >>
            int main (int argc, char * argv[])
            {
            int iNumFuncs = 1;
            int * hey = new int [iNumFuncs]; <<--Segfaults. ??????
            return 0;
            }
            >>
            Is my installation just gone out the window, or am I so incredibly
            tired that I can't even do a dynamic allocation anymore?
            >>
            >The code seems OK (the memory leak is beside the point, I guess). If
            >you need your question answered with VC++ in mind, then you need to ask
            >it in the VC++ newsgroup, though: microsoft.publi c.vc.language.
            >>
            >There can be some compiler specific settings that are off-topic here,
            >try the other newsgroup and see what they say...
            >
            Well, the memory leak is kinda irrelevant, I just commented out the
            few hundred other lines in the code and didn't bother posting them
            here. There IS a delete[], it's just commented out.
            >
            And I didn't think this was a VC++ question in particular, since I'm not
            using a single call to anything relating to VC++.

            Your question wasn't specific to VC++. It was fine, but cannot be answered
            here.
            What I posted should be standard c++ in it's entirety.
            Yes, it is.
            My question, is what can be causing that. And I believe your answer
            was: "Compiler."
            Yes. Regarding standard C++, your code is - as far as I can see - correct,
            so it must be some compiler issue. And for that, a VC++ group will be more
            appropriate.

            Comment

            • Scoots

              #7
              Re: Segfault on new?

              Indeed, this was the code, minus a few thousand lines that were
              essentially commented out (the calls to other files/functions) which
              is why I took out the includes. But I had yes, actually reduced my
              main to that through commenting out code.

              And yes, it wasn't a true segfault :-)

              Too many years in school to take segfault out of my vocabulary though!

              I took your advice and asked over there and the issue has been...
              well, avoided if not resolved.

              Comment

              Working...