*** Error code: -1073741819 ***

Started by Grincheux, June 22, 2014, 03:02:58 PM

Previous topic - Next topic

Grincheux


The compiler crashes when compiling (*** Error code: -1073741819 ***) this code. A big structure. Who can help me ? Thanks.

#define   MAX_STAR_NAME   63


typedef struct {


      int      iIndex ;


      double   dRa ;
      double   dDe ;
      double   dPmRa ;
      double   dPmDe ;
      double   dPlx ;
      double   dVMag ;


      int      x ;
      int      y ;
      int      Zone_X ;
      int      Zone_Y ;
      int      iConstellation ;
      int      iCouleur ;


      int      iASCC ;                              //   
      int      iGC ;                              //   General Catalog
      int      iGCRV ;                              //   General Catalog of stellar Radial Velocities
      int      iGJ ;                              //   Gliese+Jahreiss
      int      iHD ;                              //   Henry Draper Catalogue
      int      iHERZ ;                              //   
      int      iHIC ;                              //   Hipparcos Input Catalogue
      int      iHIP ;                              //   Hipparcos catalogue
      int      iHR ;                              //   Harvard obs., Revised photometry
      int      iLTT ;                              //   Luyten, Two Tenths
      int      iNLTT ;                              //   New Luyten, Two Tenths
      int      iNSV ;                              //   New catalog of Suspected Variable
      int      iPLX ;                              //   General Cat. Trigo. Parallaxes
      int      iPPM ;                              //   Position and Proper Motion
      int      iSAO ;                              //   Smithsonian Astrophysical Obs.
      int      iSBC9 ;                              //   Spectroscopic Binary Catalog, 9th
      int      iSKY ;                              //   SKYMAP
      int      iSRS ;                              //   
      int      iTD1 ;                              //   TD1 satellite
      int      iTDSC ;                              //   Tycho Double Star Catalogue


      char   sz2MASS[MAX_STAR_NAME + 1] ;            //   2Micron All-Sky Survey
      char   szADS[MAX_STAR_NAME + 1] ;               //   Aitken, Double
      char   szAG99[MAX_STAR_NAME + 1] ;               //   
      char   szASCC[MAX_STAR_NAME + 1] ;               //   All-Sky Compiled Catalogue, 2500000 stars
      char   szBD[MAX_STAR_NAME + 1] ;               //   Bonner Durchmusterung
      char   szCI[MAX_STAR_NAME + 1] ;               //   Cincinnati Publ.
      char   szCCDM[MAX_STAR_NAME + 1] ;               //   Catalog of Comp. of Double and Mult.
      char   szCSI[MAX_STAR_NAME + 1] ;               //   
      char   szGEN[MAX_STAR_NAME + 1] ;               //   Geneva Identification system
      char   szGSC[MAX_STAR_NAME + 1] ;               //   Guide Star Catalog
      char   szIDS[MAX_STAR_NAME + 1] ;               //   Index catalog of Double
      char   szIRAS[MAX_STAR_NAME + 1] ;               //   Infrared Astronomical Satellite
      char   szIRC[MAX_STAR_NAME + 1] ;               //   Infrared Catalog
      char   szLHS[MAX_STAR_NAME + 1] ;               //   Luyten, Half Second
      char   szLSPM[MAX_STAR_NAME + 1] ;               //   
      char   szRAFGL[MAX_STAR_NAME + 1] ;            //   Revised Air Force Geophys. Lab.
      char   szROT[MAX_STAR_NAME + 1] ;               //   Rotationnal velocity
      char   szUBV[MAX_STAR_NAME + 1] ;               //   UBV system
      char   szUSNO_B1[MAX_STAR_NAME + 1] ;            //   
      char   szUVBY98[MAX_STAR_NAME + 1] ;            //   uvbyß photoelectric photometric catalogue
      char   szTYCO[MAX_STAR_NAME + 1] ;               //   Tycho mission
      char   szYZ[MAX_STAR_NAME + 1] ;               //   
      char   szYZC[MAX_STAR_NAME + 1] ;               //   Yale obs., Zone Catalog
      char   szWDS[MAX_STAR_NAME + 1] ;               //   Washington Univ., Double


      char   szOfficialStarName[MAX_STAR_NAME + 1] ;
} CHLOE_DATA, *LPCHLOE_DATA ;


CHLOE_DATA   Hip[]   =   {
                     {1,0.000899,1.089009,9.1,3.54,-5.2,-1.88,0,3,0,0,0,0xffffff,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,"-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","HIP1"},
                     {2,0.004265,-19.49884,9.27,21.9,181.21,-0.93,0,481,0,13,0,0xffffff,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,"-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","HIP2"},
                     {3,0.005024,38.859279,6.61,2.81,5.24,-2.91,0,116,0,3,0,0xffffff,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,"-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","HIP3"},
                     {4,0.008629,-51.893546,8.06,7.75,62.85,0.16,0,384,0,10,0,0xffffff,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,"-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","HIP4"},
                     {5,0.009973,-40.591202,8.55,2.87,2.53,9.07,0,418,0,11,0,0xffffff,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,"-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","HIP5"},
                     {117954,119.454882,-60.683636,8.55,1.14,-9.08,9.25,358,357,4,9,0,0xffffff,0,0,0,0,0,0,0,120403,0,0,0,0,0,0,0,0,0,0,0,0,"-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","HIP120403"},
                     {117955,119.51213,-60.614785,7.62,1.95,-4.71,10.99,358,358,4,9,0,0xffffff,0,0,0,0,0,0,0,120404,0,0,0,0,0,0,0,0,0,0,0,0,"-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","HIP120404"},
                     {117956,0,0,0,0,0,0,0,0,0,0,2,0xffffff,0,0,0,0,0,0,0,999991,0,0,0,0,0,0,0,0,0,0,0,0,"-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","WASP-1"},
                     {117957,0,0,0,0,0,0,0,0,0,0,2,0xffffff,0,0,0,0,0,0,0,999992,0,0,0,0,0,0,0,0,0,0,0,0,"-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","Ross 248"},
                     {117958,0,0,0,0,0,0,0,0,0,0,2,0xffffff,0,0,0,0,0,0,0,999993,0,0,0,0,0,0,0,0,0,0,0,0,"-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","SN 1885A"},
                     {-1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","Fin de la liste"}
                  } ;

frankie

The problem don't seem to be the structures (look attached sample).
Can you produce a snippet to to reproduce the error?
"It is better to be hated for what you are than to be loved for what you are not." - Andre Gide

Grincheux

I think that structures are too big.
There are 117958 structures into the tab !

Grincheux

Command line : > pocc.exe -std:C11 -Tx64-coff -Os -Ob1 -fp:precise -W1 -Gr -Ze -Zx -J "D:\# Stars #\MyStars\Hip.c" -Fo"D:\# Stars #\MyStars\output\Hip.obj"

frankie

#4
If I put:

CHLOE_DATA   Hip[117958]   =   {
                     {1,0.000899,1.089009,9.1,3.54,-5.2,-1.88,0,3,0,0,0,0xffffff,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,"-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","HIP1"},
                     {2,0.004265,-19.49884,9.27,21.9,181.21,-0.93,0,481,0,13,0,0xffffff,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,"-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","HIP2"},
                     {3,0.005024,38.859279,6.61,2.81,5.24,-2.91,0,116,0,3,0,0xffffff,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,"-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","HIP3"},
                     {4,0.008629,-51.893546,8.06,7.75,62.85,0.16,0,384,0,10,0,0xffffff,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,"-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","HIP4"},
                     {5,0.009973,-40.591202,8.55,2.87,2.53,9.07,0,418,0,11,0,0xffffff,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,"-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","HIP5"},
                     {117954,119.454882,-60.683636,8.55,1.14,-9.08,9.25,358,357,4,9,0,0xffffff,0,0,0,0,0,0,0,120403,0,0,0,0,0,0,0,0,0,0,0,0,"-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","HIP120403"},
                     {117955,119.51213,-60.614785,7.62,1.95,-4.71,10.99,358,358,4,9,0,0xffffff,0,0,0,0,0,0,0,120404,0,0,0,0,0,0,0,0,0,0,0,0,"-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","HIP120404"},
                     {117956,0,0,0,0,0,0,0,0,0,0,2,0xffffff,0,0,0,0,0,0,0,999991,0,0,0,0,0,0,0,0,0,0,0,0,"-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","WASP-1"},
                     {117957,0,0,0,0,0,0,0,0,0,0,2,0xffffff,0,0,0,0,0,0,0,999992,0,0,0,0,0,0,0,0,0,0,0,0,"-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","Ross 248"},
                     {117958,0,0,0,0,0,0,0,0,0,0,2,0xffffff,0,0,0,0,0,0,0,999993,0,0,0,0,0,0,0,0,0,0,0,0,"-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","SN 1885A"},
                     {-1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","-","Fin de la liste"}
                  } ;

I get a 210Mb object, but no errors (each struct size is 1760 bytes in X32 and should be 1864bytes in X64).
I can't test for X64, but doesn't expect big differences. Maybe the error is due to interaction with other code in your source.

P.S. Maybe is not a good idea to put so much data in an executable, consider to use sqlite or any other external storage.
"It is better to be hated for what you are than to be loved for what you are not." - Andre Gide

Grincheux

You are right but SQLITE is not 64 bits ready !
I removed many items from the structure and there is no problem now.
Thank you for your help.

frankie

You're welcome.
Maybe you can write a small app to write in a binary file the data then, because the size of each chunk of data is the same you can access it with simple fset a fread...
"It is better to be hated for what you are than to be loved for what you are not." - Andre Gide