Difference between VS2013 and GCC debug symbols

Hi guys,
I am writing you today as I am having trouble with my software. it has a Windows and a Linux version, each of them respectively using a static library (C++).
I notice that, if I build my Windows static library as RELEASE without any debug info : /O2, and Debug Information Format -> None and manually removed.pdb, the .lib file size about 40mb.
On the contrary, regarding the Linux library, I use GCC in order to build it as RELEASE as well: -O2 and -g0.
Once compiled, my .a file's size is about 12mb.
Well, those compilers are completely different, and the library's size doesn't really matter.
Of course, my application, which needs the library, has debug symbols generated (whether I am on Windows or Linux).
While debugging, I can have access to all of the members/classes of my application (and also the ones from my Windows library), using Microsoft Visual Studio 2013.
And now, while debugging with the Linux lib (within Eclipse), I have access to my class members, except the one from the library.
I was wondering what's happening in the background:
_ Why does it seem like the Windows version of my library contains more symbols/data, which allows me to debug my program using the library ?
_ Why can't I debug the objects from my Linux library ? (this one is about four times smaller than the Window's one)
If I try to access to some classes from my library, Eclipse/GDB says <incomplete type> in the Debug view.
I am lost on this point. Does anyone know about that ?
Thank you very much for your help !

Hi ddocteur,
Appreciate your patience and sharing detailed information. 
It does need to cost some time to to involve someone familiar with this topic to further look at this issue. Your detailed information will be quite helpful, and there might be some time delay.
Thanks for your sharing and understanding.
Best Regards,
Carl
We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
Click
HERE to participate the survey.

Similar Messages

  • What's the difference between g++ and gcc?

    For the hello.cc:
    #include <iostream.h>
    int main()
    cout << "Hello";
    return 0;
    I can compile it with g++, and it works.
    but with gcc, when
    #gcc -o hello hello.cc
    there are some errors, the errors are:
    Undefined first referenced
    symbol in file
    cout /var/tmp/cceeiWHM.o
    ostream operator<<(char *) /var/tmp/cceeiWHM.o
    I think I should setup some lib path for gcc, because it can compile, but failed in linking.
    Thanks
    Len

    iMovie enables you to edit video footage - typically from a video camera - add titles, effects, etc.
    iDVD enables you to create an authored DVD of your iMovie, complete with DVD menu, chapters, "extras", etc and can be played in a conventional DVD player.
    20" iMac Intel Core Duo 2GHz 1GB RAM   Mac OS X (10.4.7)  

  • Difference between Macros and subroutine

    Hi all,
    What is the difference between the macros subroutine and function module functinalitywise.;

    Hi,
    Macros can only be used in the program the are defined in and only after the definition.
    Macros can take max 9 parameters.
    Macros are expanded at compilation / generation.
    Subroutines (FORM) can be called from both the program the are defined in and other programs ('perform
    ' of 'perform in program ').
    Subroutines can take any amount of parameters.
    Subroutines are 'expanded' at runtime.
    Functions are just like FORMs, but are intended to be called external.
    Some differences between FUNCTIONs and FORMs:
    The name of a FORM must be unique within the program (two programs can have different FORMs with the same name). A FORM is intended to be called internal (from within the program, however by a 'trick' you can call them external).
    The name of a FUNCTION has to be unique throughout the system. A FUNCTION is intended to be called external (and is thus shared by 'many' programs).
    The latter is more important for programmers and maintenance. Since a FUNCTION is called external, it is important to keep the interface (parameters) the same. The interface of a FORM (which is intended to be called internal) is check when debugging a program (but it is only checked within the program that is debugged). So if the interface of a FORM is changed, but the call to the FORM (perform ) is not, the debugger will notice this and issue an error message.
    In general:
    A MACRO is more or less an abbreviation for some lines of code that are used more than once or twice.
    A FORM is a local subroutine (which can be called external).
    A FUNCTION is (more or less) a subroutine that is called external.
    Since debugging a MACRO is not really possible, prevent the use of them (I've never used them, but seen them in action). If the subroutine is used only local (called internal) use a FORM. If the subroutine is called external (used by more than one program) use a FUNCTION.
    --Excerpt from http://sap.ittoolbox.com/documents/popular-q-and-a/macro-vs-subroutine-1594#
    DATA p_c(10).
    FIELD-SYMBOLS: <fs> TYPE ANY.
    DATA p_old1 TYPE i VALUE 10.
    DATA p_old2 TYPE i VALUE 11.
    DATA p_old3 TYPE i VALUE 12.
    DATA p_old4 TYPE i VALUE 13.
    DATA p_old5 TYPE i VALUE 14.
    DATA p_old6 TYPE i VALUE 15.
    DATA p_old7 TYPE i VALUE 16.
    DATA p_old8 TYPE i VALUE 17.
    DATA p_old9 TYPE i VALUE 18.
    DATA p_old10 TYPE i VALUE 19.
    DATA p_old11 TYPE i VALUE 21.
    DATA p_old12 TYPE i VALUE 22.
    DATA p_old13 TYPE i VALUE 23.
    DATA p_old14 TYPE i VALUE 24.
    DEFINE ADD_MAPPING.
    p_c = &1.
    CONDENSE p_c.
    CONCATENATE 'p_old' p_c INTO p_c.
    ASSIGN (p_c) TO <fs>.
    WRITE <fs>.
    END-OF-DEFINITION.
    DO 14 TIMES.
    ADD_MAPPING sy-index.
    ENDDO.
    http://sap.ittoolbox.com/documents/popular-q-and-a/macro-vs-subroutine-1594
    http://help.sap.com/saphelp_nw2004s/helpdata/en/9f/db972835c111d1829f0000e829fbfe/frameset.htm
    Regards,
    Priyanka.

  • What is the difference between start() and run()

    Hi:
    what is the difference between start() and the run()???
    in my app, i have
    Console.debug( "starting thread to listen for clients" );
    _server = new Server( this );
    _server.start();
    _server extends Thread..
    why everytime i use server.start(); my app will terminate on it is own, even though in my servr.run() method, i have a while loop
    and if i call _server.run() explicitly in my code, that while loop will be in execution
    can someone let me know??
    thnx

    what is the difference between start() and the
    run()???start() is a method on Thread that tells it to start.
    run() is a method in the object that the thread executes.
    why everytime i use _server.start(); my app will
    terminate on it is own, Err.... I'm not convinced this is true. It'll throw an IllegalThreadStateException, if you try to restart an existing thread.
    If that's what you're saying.
    even though in my _servr.run()
    method, i have a while loopI don't see the connection. Are you saying that the while loop never terminates, and you don't see why the thread is terminating?
    and if i call _server.run() explicitly in my code,
    that while loop will be in executionIf you call server.run() explicitly, then run() will be executed in the same thread that you called it in.

  • What's the difference between PNG and JPG for exporting .idea files from the Adobe Ideas app?

    What's the difference between PNG and JPG for exporting .idea files from the Adobe Ideas app?
    What situations are better to export to to .PNG or .JPG?
    J

    iPad apps are designed specifically for the iPad and will not run on the iPhone or iPod Touch. iPhone/iPod apps will run on the iPad, but will only take up an iPhone sized portion of the iPad screen (though you get a 2x button which effectively doubles each pixel in both directions so may appear pixelated). There are also 'universal' apps (which have a '+' symbol against them in the store) which have processing in them to recognise the device that they are on and will tailor the display accordingly (so will make use of the iPad's larger screen).

  • Regional Settings differences between 2008 and 2012

    Hi There,
    Can anyone explain why some of the regional setting details have changed with Win 2012?
    Example: Dutch (Belgium) - nl-BE
    The 'Digital Grouping Symbol' has changed from a DOT to a WHITESPACE.
    2008 - €1.000,00 whereas 2012 - €1 000,00
    If the settings are changed on the servers will they persist after OS updates etc?
    Rgds,
    Frank

    Hi Vivian,
    I see no reference in the KB article to modifications for the CET timezone nor any reference to the resolution of culture format info discrepancies.
    A further issue is that the active regional settings on our PRD servers will be set to United States and it would appear that any modification to the Belgium locales (i.e. nl-BE, fr-BE) are not persisted once you switch to United States as the
    active setting.
    The knock on effect of this is that for our PRD web-applications (which are active across many regions), we have to write code to override the OS information. .NET uses the OS info to populate its Culture information.
    Could you confirm if the differences between 2008 and 2012 are the result of a bug or are the changes planned? Based on communication with some of our customers in Belgium, they are of the opinion that the 2008 (and Win 2003) settings are per their expectations.
    I really do not what to have to handle these situations across our application landscape and am sure that other people with globalized applications will also hit problems.

  • Difference between open_form and start_form

    difference between open_form and start_form?

    hi,
    Any driver program must contain Open_Form, Close_Form and Write_Form. Other function modules are optional.
    OPEN_FORM: This function module opens layout set printing. One must call this function module before he uses any of other layout set function modules like Write_Form, Start_Form, Control_Form etc., You need specify a layout set name in the export parameters of this function module. If nothing is passed to Open_Form then one should use Start_Form function module to open layout set before starting the output. The layout set opened by Open_Form should be closed by Close_Form function module, other wise output doesn’t appear. We can use any number of Open_Form, Close_Form functions in one single program. But Close_Form must be there for every Open_Form in the program.
    Some of the important export parameters we have to pass to Open_Form function module.
    Form: Enter the Layout set name here, which then controls the output formatting. If nothing is specified then we must use Start_Form for opening layout set.
    Language: Layout sets are Language dependent. Enter the desired language here. If the entered layout set is not in that language, then the function tries to open the Form entered in its original language. The default value is SY-LANGU.
    Device: SAP Script can format a text on different device types. The device can be ‘PRINTER’ or ‘TELEX’, ‘TELEFAX’, ’ABAP’ and ‘SCREEN’.
    Dialog: Use parameter DIALOG to determine whether to display a dialog box before printing, in which the user can set several spool parameters for print formatting. Possible values: SPACE displays no print parameter screen. 'X' display print parameter screen. Default value: 'X'
    Options: Use parameter OPTIONS to set several options for print formatting. The parameter has the structure ITCPO. The user can change some of the defined settings on the print control screen. The default value for Options is ‘ ‘. We will discuss about ITCPO structure in detail later.
    Other Export, Import and Exceptions are self-explanatory.
    Start_Form: In-between the function modules OPEN_FORM and CLOSE_FORM, we can use different layout sets. This allows us to combine several different layout sets into one print output. However, we can combine only those layout sets that have the same page format. To switch layout sets, use the function module START_FORM. If another layout set is still open, we must close it first using END_FORM. If we specify no layout set name when calling START_FORM, the system restarts the last open layout set. If after OPEN_FORM no layout set was activated yet, the system leaves the function module with the exception UNUSED. Some of the important export parameters for this function module are
    Form: The parameter contains the name of the layout set you want to use for printing. If you specify no layout set here, the system restarts the last active layout set.
    Language: Layout sets are language-dependent. Enter the desired language here. If the layout set does not exist in this language, the system tries to call the layout set in its original language. If the parameter LANGUAGE is empty, the system uses the language of the last active layout set.
    Startpage: Usually, SAP script starts with the page specified as start page in the layout set definition. If we want to start output with another layout set page, enter the name of the desired layout set page here. If the desired page is not defined, the system uses the start page defined in the layout set.
    Program: To replace program symbols, SAP script must know which active program contains the work areas for the values to be passed. If we omit the parameter, the system searches for the field values in the program that was specified in the parameter OPTIONS (field TDPROGRAM) of OPEN_FORM. If we enter a program name, the system replaces the program symbols with the values from this program up to the next END_FORM.
    Exceptions and other Export, Import parameters are self-explanatory.
    Regards
    Kiran Sure

  • MAIN DIFFERENCES BETWEEN PARALLEL AND SEQUENTAIL PRCESSING???

    HI PALS,
    I WANT THE COMPLETE DIFFERENCES BETWEEN PARALLEL AND SEQUENTIAL PROCESSING!
    IN THE CONTEXT OF RFC.

    Hi
    Parallel Processing
    To achieve a balanced distribution of the system load, you can use destination additions to execute function modules in parallel tasks in any application server or in a predefined application server group of an SAP system.
    Parallel-processing is implemented with a special variant of asynchonous RFC. Itu2019s important that you use only the correct variant for your own parallel processing applications: the CALL FUNCTION STARTING NEW TASK DESTINATION IN GROUP keyword. Using other variants of asynchronous RFC circumvents the built-in safeguards in the correct keyword, and can bring your system to its knees
    Details are discussed in the following subsections:
    ·        Prerequisites for Parallel Processing
    ·        Function Modules and ABAP Keywords for Parallel Processing
    ·        Managing Resources in Parallel Processing
    Prerequisites for Parallel Processing
    Before you implement parallel processing, make sure that your application and your SAP system meet these requirements:
    ·        Logically-independent units of work:
    The data processing task that is to be carried out in parallel must be logically independent of other instances of the task. That is, the task can be carried out without reference to other records from the same data set that are also being processed in parallel, and the task is not dependent upon the results of others of the parallel operations. For example, parallel processing is not suitable for data that must be sequentially processed or in which the processing of one data item is dependent upon the processing of another item of the data.
    By definition, there is no guarantee that data will be processed in a particular order in parallel processing or that a particular result will be available at a given point in processing. 
    ·        ABAP requirements:
    ¡        The function module that you call must be marked as externally callable. This attribute is specified in the Remote function call supported field in the function module definition (transaction SE37).
    ¡        The called function module may not include a function call to the destination u201CBACK.u201D
    ¡        The calling program should not change to a new internal session after making an asynchronous RFC call. That is, you should not use SUBMIT or CALL TRANSACTION in such a report after using CALL FUNCTION STARTING NEW TASK.  
    ¡        You cannot use the CALL FUNCTION STARTING NEW TASK DESTINATION IN GROUP keyword to start external programs. 
    ·        System resources: 
    In order to process tasks from parallel jobs, a server in your SAP system must have at least 3 dialog work processes. It must also meet the workload criteria of the parallel processing system: Dispatcher queue less than 10% full, at least one dialog work process free for processing tasks from the parallel job.
    Function Modules and ABAP Keywords for Parallel Processing
    You can implement parallel processing in your applications by using the following function modules and ABAP keywords:
    ·        SPBT_INITIALIZE: Optional function module. 
    Use to determine the availability of resources for parallel processing. 
    You can do the following:
    ¡        check that the parallel processing group that you have specified is correct.
    ¡        find out how many work processes are available so that you can more efficiently size the packets of data that are to be processed in your data.
    ·        CALL FUNCTION Remotefunction STARTING NEW TASK Taskname DESTINATION IN GROUP:
    With this ABAP statement, you are telling the SAP system to process function module calls in parallel. Typically, youu2019ll place this keyword in a loop in which you divide up the data that is to be processed into work packets. You can pass the data that is to be processed in the form of an internal table (EXPORT, TABLE arguments). The keyword implements parallel processing by dispatching asynchronous RFC calls to the servers that are available in the RFC server group specified for the processing.
    Note that your RFC calls with CALL FUNCTION are processed in work processes of type DIALOG. The DIALOG limit on processing of one dialog step (by default 300 seconds, system profile parameter rdisp/max_wprun_time) applies to these RFC calls. Keep this limit in mind when you divide up data for parallel processing calls. 
    ·        SPBT_GET_PP_DESTINATION: Optional function module. 
    Call immediately after the CALL FUNCTION keyword to get the name of the server on which the parallel processing task will be run. 
    ·        SPBT_DO_NOT_USE_SERVER: Optional function module. 
    Excludes a particular server from further use for processing parallel processing tasks. Use in conjunction with SPBT_GET_PP_DESTINATION if you determine that a particular server is not available for parallel processing (for example, COMMUNICATION FAILURE exception if a server becomes unavailable).
    ·        WAIT: ABAP keyword
    WAIT UNTIL
    Required if you wish to wait for all of the asynchronous parallel tasks created with CALL FUNCTION to return. This is normally a requirement for orderly background processing. May be used only if the CALL FUNCTION includes the PERFORMING ON RETURN addition.
    ·        RECEIVE: ABAP keyword
    RECEIVE RESULTS FROM FUNCTION Remotefunction
    Required if you wish to receive the results of the processing of an asynchronous RFC. RECEIVE retrieves IMPORT and TABLE parameters as well as messages and return codes.
    Managing Resources in Parallel Processing
    You use the following destination additions to perform parallel execution of function modules (asynchronous calls) in the SAP system:
    In a predefined group of application servers:
    CALL FUNCTION Remotefunction STARTING NEW TASK Taskname
    DESTINATION IN GROUP Groupname
    In all currently available and active application servers:
    CALL FUNCTION Remotefunction STARTING NEW TASK Taskname
    DESTINATION IN GROUP DEFAULT
    Sequential Processing
    In the following cases, the system chooses sequential (non-parallel) processing:
    ●      In table RSADMIN, entry QUERY_MAX_WP_DIAG has value (column value) 1.
    ●      The entire query consists of one sub-access only.
    ●      The query is running in a batch process.
    ●      The query was started from the query monitor (transaction RSRT) using various debug options (for example, SQL query display, execution plan display). See, Dividing a MultiProvider Query into Sub-Queries.
    ●      The query requests non-cumulative key figures.
    ●      Insufficient dialog processes are available when the query is executed. These are required for parallel processing.
    ●      The query is configured for non-parallel processing.
    ●      You want to save the result of the query in a file or a table.
    In Release SAP NetWeaver 7.0, the system can efficiently manage the large intermediate results produced by parallel processing. In previous releases, the system terminated when it reached a particular intermediate result size and proceeded to read data sequentially. This is no longer the case. Therefore, the RSADMIN parameter that was used in previous releases for reading a MultiProvider sequentially is no longer used.
    Reward If Helpfull,
    Naresh

  • Difference between Macros and subroutines

    Hi experts can any one tell difference between macros and subroutines.

    1) Macros can only be used in the program the are defined in and only after the definition are expanded at compilation / generation. Subroutines (FORM) can be called from both the program the are defined in and other programs . A MACRO is more or less an abbreviation for some lines of code that are used more than once or twice. A FORM is a local subroutine (which can be called external). A FUNCTION is (more or less) a subroutine that is called external. Since debugging a MACRO is not really possible, prevent the use of them (I’ve never used them, but seen them in action). If the subroutine is used only local (called internal) use a FORM. If the subroutine is called external (used by more than one program) use a FUNCTION
    2)  The macros, which we may use,
    (stored in table TRMAC)
    , we cannot debug that code.
    3) where as in subroutine,
    its a abap code, directly visile in
    the editor,
    and we can debug this code.
    4) MACROS =>
    Getting a feel of macros
    The basic syntax of macros is as follows:
    DEFINE macro_name. "Macro Definition
    ……………. Statements
    ……………. Statements
    END-OF-DEFINITION. "Macro Definition
    macro_name par1 par2 …par9. "Macro call -parameters separated by spaces
    Within the DEFINE... and END-OF-DEFINITION lies the body of the macro—the statements that you wish to be executed each time the macro is called. These statements may be any valid ABAP statements, such as WRITE, CLEAR, FORM calls, or database statements such as SELECT or UPDATE.
    To familiarize yourself with the working of macros, it's necessary to take a close look at exactly what happens when an ABAP program containing a macro call is generated. Consider Listing A.
    All ABAP programs must be generated before they can be executed. At the time of program generation, the system supplants each macro call, as shown in Listing A, with the statement(s) placed between the macro definition. Furthermore, the parameters passed at the time of macro calling are copied in place of the any placeholders (numbered &1, &2 …&9) found in the body of the macro definition. The system simply ignores the presence of the macros during the execution of the program—that is, all statements are executed as a single block of code:
    write : int1.
    write : int2.
    write : int3.
    Other than readability and meaningfulness, macros also offer performance advantages. For testing purposes, I wrote a macro that incremented the value of a variable by 1 and called the macro N times via a DO loop, as shown here:
    DEFINE INCREMENT.
    ADD 1 TO &1.
    END-OF-DEFINITION.
    DO N TIMES.
    INCREMENT VAR1.
    ENDDO.
    SUBROUTINES=>
    Subroutines
    You call subroutines from ABAP programs using the PERFORM statement.
    Subroutines are introduced with the FORM statement and concluded with the ENDFORM statement.
    You can define subroutines in any ABAP program. You can either call a subroutine that is part of the same program or an external subroutine, that is, one that belongs to a different program. If you call an internal subroutine, you can use global data to pass values between the main program and the subroutine. When you call an external subroutine, you must pass actual parameters from the main program to formal parameters in the subroutine.
    *U Shud start rewarding helpfull answers*
    amit

  • Would there be a problem with the warranty in the UK if bought in USA? Plus is there a big difference between US and UK keyboards? Thanks

    Hi, I'm from the UK and in the USA for a week. I'm thinking of purchasing an Air. Would there be a problem with the warranty in the UK if bought in the US? Plus is there a big difference between US and UK keyboards?
    Cheers
    G

    There are subtle differences on a British layout, mainly having to do with the top line (shift numbers), to permit the use of European monetary symbols. There are a few other keys different (note the enter key).
    Here are the basic layouts. Obviously the MBA won't have an eject key, as the power key resides in that location.
    British English Keyboard
    USA English Keyboard

  • What is the difference between MOVE and WRITE TO ststement?

    Hi
    What is the difference between MOVE and WRITE TO ststement?
    When do we use both of them?
    Thank You

    Hi,
    <b>MOVE</b>
    Syntax
    MOVE source {TO|?TO} destination.
    destination {=|?=} source.
    Effect
    Both these statements assign the content of the operand source to the data object destination. The variants with the language element TO or the assignment operator = are valid for all assignments between operands that are not reference variables, and for assignments between reference variables for which the static type of source is more specific than or the same as the static type of destination(narrowing cast).
    Variants with the language element ?TO or the assignment operator ?= (casting operator ) must be used if the source and destination are reference variables and the static type of source is more general than the static type of destination (widening cast). For assignments between operands that are not reference variables, use of the question mark ? is not permitted.
    The data object destination can be any data object that can be listed at a write position, and the data object source can be a data object, a predefined function or a functional method (as of release 6.10). The data type of the data object destination must either be compatible with the data type of source, or it must be possible to convert the content of source into the data type of destination according to one of the conversion rules.
    Notes
    If source and/or destination are field symbols, then, as in all ABAP commands, the system works with the content of the data objects to which the field symbols point. The actual pointer content of a field symbol can only be changed using the statement ASSIGN or the addition ASSIGNING when processing internal tables (value semantics). If source and destination are reference variables, the reference contained in source is assigned to destination (reference semantics).
    Strings and internal tables are addressed internally using references. When assignments are made between strings and between internal tables (as of release 6.10), only the reference is transferred, for performance reasons. After the assignment, the actual string or the actual table body of the source as well as the target object are addressed (sharing). When the object is accessed to change it, the sharing is canceled and a copy of the content is made. The sharing is displayed in the memory consumption display of the ABAP debugger and in the Memory Inspector tool (as of release 6.20).
    Obsolete Form: MOVE PERCENTAGE
    Exceptions
    Catchable Exceptions
    CX_SY_CONVERSION_NO_NUMBER
    Cause: Operand cannot be interpreted as number
    Runtime Error: CONVT_NO_NUMBER (catchable)
    CX_SY_CONVERSION_OVERFLOW
    Cause: Overflow with arithmetic operation (type P, with specified length)
    Runtime Error: BCD_FIELD_OVERFLOW (catchable)
    Cause: Operand too large or (intermediate) result too large
    Runtime Error: CONVT_OVERFLOW (catchable)
    CX_SY_MOVE_CAST_ERROR
    Cause: Source or target variable are not reference variables
    Runtime Error: MOVE_CAST_REF_ONLY
    Non-Catchable Exceptions
    Cause: Source field (type P) does not contain correct BCD format.
    Runtime Error: BCD_BADDATA
    Cause: Assignment for deep structures not permitted if these overlap.
    Runtime Error: MOVE_COMPLEX_OVERLAP
    Cause: Type conflict with the assignment between object references.
    Runtime Error: MOVE_INTERFACE_NOT_SUPPORTED,
    Runtime Error: MOVE_IREF_NOT_CONVERTIBLE,
    Runtime Error: MOVE_IREF_TO_OREF,
    Runtime Error: MOVE_OREF_NOT_CONVERTIBLE
    Cause: Type conflict with the assignment between data references.
    Runtime Error: MOVE_DREF_NOT_COMPATIBLE
    Cause: Assignment between the types involved not supported.
    Runtime Error: MOVE_NOT_SUPPORTED
    Cause: Constants and literals must not be overwritten.
    Runtime Error: MOVE_TO_LIT_NOTALLOWED
    Cause: onstants and literals must not be overwritten.
    Runtime Error: MOVE_TO_LIT_NOTALLOWED_NODATA
    Cause: During a loop in an internal table, an attempt was made to overwrite a reference variable that is linked with the internal table by REFERENCE INTO.
    Runtime Error: MOVE_TO_LOOP_REF
    <b>Write</b>
    Syntax Diagram
    WRITE - TO
    Syntax
    WRITE {source|(source_name)} TO destination
                                 [int_format_options].
    Effect:
    This statement assigns the formatted content of the data object source, or the formatted content of the data object whose name is contained in source_name, to the data object destination. The data objects source_name and destination must be character type and flat. source_name can contain the name of the data object to be assigned in upper or lower case. If the data object specified in source_name does not exist, the assignment is not executed, and sy-subrc is set to 4.
    The statement WRITE TO has the same effect as the statement WRITE for lists. This statement formats the content of source or the source field specified in source_name as described in the field. It does not, however, store the result in an output area of a list in the list buffer, but instead stores it in a variable. The output length is determined by the length of the variable.
    The same additions int_format_options can be specified for formatting the content as in the statement WRITE for lists, except for NO-GAP and UNDER.
    System fields
    sy-subrc Meaning
    0 The data object specified in source_name was found and the assignment was executed.
    4 The data object specified in source_name was not found and the assignment was not executed.
    For the static specification of source, sy-subrc is not set.
    Note:
    If destination is specified as an untyped field symbol or an untyped formal parameter, and is not flat and character-type when the statement is executed, this leads to an untreatable exception in a Unicode program. In non-Unicode programs, this only leads to an exception for deep types. Flat types are handled as character-type data types.
    Example:
    After the assignment, the variables date_short and date_long receive the current date in the order specified in the user master record. The variable date_long also contains the defined separators, as the output length is sufficiently long. The content of the variable date_mask is formatted according to the formatting addition DD/MM/YY.
    DATA: date_short(8) TYPE c,
          date_long(10) TYPE c,
          date_mask(8)  TYPE c.
    WRITE sy-datum TO: date_short,
                       date_long,
                       date_mask DD/MM/YY.
    Exceptions
    Non-Catchable Exceptions
    Cause: Negative length specified for offset/length
    Runtime Error: WRITE_TO_LENGTH_NEGATIVE
    Cause: Negative offset specified in offset/length
    Runtime Error: WRITE_TO_OFFSET_NEGATIVE
    Cause: Offset specified in offset/length specification is longer than the field length.
    Runtime Error: WRITE_TO_OFFSET_TOOLARGE
    Thanks
    sunil

  • What is the difference between Structure and Work area

    Hi Guys,
    What is the difference between Structure and work area?
    Are they same with different names?
    Thanks,
    mini.

    hey buddies,*
    i had this same doubt for a long time and i have my finds with me ie wa and structure are the same but wa can hold a single record but structure cannot hold data in it but according to the previous posts  folks  say structure too holds data as wa does but i guess when debugging wa holds data and structure doesnt hold bcoz i tried.
    types : begin of str_mara,
                 matnr type mara-matnr,
                ernam type mara-ernam,
                end of str_mara.
    data it_mara type table of str_mara.
    select matnr ernam from mara into it_mara where matnr = '100-101'.
    *********************if folks say wa = structure,this should work,isn't it?*********************************
    loop at it_mara into str_mara.
    write:/ str_mara-matnr , str_mara-ernam.
    endloop.
    *******************but it throws an error saying that str_mara is not a wa*******************************
    i may not be correct too plz let me know if i'm wrong
    Edited by: arun_aime on Feb 12, 2010 4:41 PM

  • Questions about the differences between Arch and Chakra.

    I'm trying to decide whether to install Arch or Chakra on my laptop. Currently, I'm running Arch on my desktop and Windows 7 on my laptop (which I plan to overwrite). My skill level with GNU/Linux is somewhat intermediate – noobs refer to me as an expert, experts refer to me as a noob. If it matters, I'm a KDE user and primarily use my computers for web browsing and python development. Anyway, I just wanted to get an objective opinion on the differences between Arch and Chakra. I have a few points that stand out to me, but I welcome any input.
    -Stability
    I started my journey into GNU/Linux with Debian back in 2009 due to it's stability. I really disliked Debian's ancient software and considered moving my system to Unstable. While doing some googling about Debian Unstable, I stumbled across Arch – it was love at first sight. I've been an Arch user ever since. I love the bleeding edge software, and haven't had any major problems since I originally installed it. However, every time I run a system update I cringe a little. While Arch hasn't broken on me yet, I've read plenty of horror stories and it makes me uneasy. I understand that Chakra is a mix between a point and rolling release model. Is it any more or less stable than Arch? I know there are other distrobutions out there, but I'm in love with the Arch philosophy.
    -Security
    Pretty self-explanatory, but is there any difference in security between the two?
    -AUR
    As much as I love Arch, I wouldn't be able to stand it if it weren't for the massive collection of software available in the AUR. While I'm perfectly capable of compiling software myself, I prefer to use a command like tool like yaourt to manage my software. I understand that Chakra doesn't officially support the AUR and that they have their own user repository. Seeing as Chakra is still relatively new, is it lacking? Will I miss the AUR as a Chakra user?
    -Repositories
    Is there much difference in the official repositories between the two distrobutions?

    avonin wrote:
    I'm trying to decide whether to install Arch or Chakra on my laptop. ... I'm a KDE user ... I just wanted to get an objective opinion on the differences between Arch and Chakra..
    -Stability...
    -AUR...
    -Repositories...
    My take on Chakra is that it's the same as Arch with different developers.  They use pacman. They have a different and rather nice build system for their developers. They're doing a good job, but I'd hate to give up the services of Allan McRae who must work full time keeping the Archlinux core and toolchain up to date.  Chakra devs probably piggy-back off his work.
    As for "semi" rolling: I don't see Chakra as having a stable core.  A stable core sounds attractive, it would be like NetBSD which has a very stable core Unix operating system with apps added via pkgsrc.  But Chakra's core and toolchain is at the same version levels as Archlinux most of the time and are no more tested and stabilized than ours. Their core packages are updated piecemeal just like ours; there is no stable core that is released as a unit (afaik). Today Chakra has gcc 4.7 / glibc 2.15 just like ours. Their kernel is a little more stable: they're using udev 181 / linux 3.2.8 while Arch is on udev 182 / linux 3.3.7.  They are more conservative in upgrading xorg and the video drivers than Arch.  For example, today they're on xorg-server 1.10.4 / intel video 2.17 while Arch is up-to-the-bleeding-edge-minute with xorg-server 1.12.1.902 and intel video 2.19.  Yeah, I would consider Chakra to be a little more "stable" than Arch mainly because of their relaxed pace in changing the kernel and the xorg stuff.
    Most of the patches that I look at for Arch packages (I build my system entirely from source and try to build monthly releases for myself) are needed because we use more recent core packages like glib2/glibc/gcc than the developers of higher level stuff like qt.  Chakra is in the same situation.  We're on the front of the wave
    The Chakra CCR is compatible with the Arch AUR and mainly draws from AUR (an AUR buildscript will usually work fine on a Chakra system -- they just add one or two additional info fields.)  With a little effort you could get any package installed on a Chakra system that is available on Arch.
    Last edited by sitquietly (2012-05-24 20:43:58)

  • Difference between Null and null?

    What is the difference between null and NULL?
    When is each used?
    Thanks,

    veryConfused wrote:
    There is a null in java, but no NULL. null means no value. However, when assigning value, the following is different:Although the empty String has no special role. Null means, the referential type is not assigned (doesn't refer) to a specific object. The empty String is just another object though, so seeing it or pointing it out as something special when it actually isn't at all (no more special than new Integer(0) or new Object[0]) just adds to the confusion.

  • Difference between GUI_UPLOAD and WS_UPLOAD

    Hi,
    Please make me clear about the difference between GUI_UPLOAD and WS_UPLOAD. In which cases we need to use these modules...??
    Thanks,
    Satish

    I would suggest to always use the GUI_UPLOAD.  I say this because this is the function module which is used in the GUI_UPLOAD method of the class CL_GUI_FRONTEND_SERVICES.   Really, you should probably use the class/method instead of the function module.
      data: filename type string.
      filename = p_file.
      call method cl_gui_frontend_services=>gui_upload
             exporting
                  filename                = filename
                  filetype                = 'ASC'
             changing
                  data_tab                = iflatf
             exceptions
                  file_open_error         = 1
                  file_read_error         = 2
                  no_batch                = 3
                  gui_refuse_filetransfer = 4
                  no_authority            = 6
                  unknown_error           = 7
                  bad_data_format         = 8
                  unknown_dp_error        = 12
                  access_denied           = 13
                  others                  = 17.
    Regards,
    Rich Heilman

Maybe you are looking for

  • What's wrong with my video?

    History: My imac g5 fan seems to have gotten a little louder, and so I tried two "fixes" I read about here, but now, I get frequent video issues, especially on startup. The screen looks all screwey/out of focus, and a warning comes up that says I hav

  • Scripting play all end jump problems.

    hi all in my project i have a script that plays all of my tracks following the 'scripting a dynamic play all button in dvd studio 3' help sheet i found on this discussion forum. for it to work i need to set the end jump of the tracks to a 'play next

  • Wifi printing

    Installed hp laserjet 1018 using hp wireless printing upgrade kit and printer worked for several years without any problems. Then on 11/29/10 I installed a hp photosmart plus printer (wifi) & now I can't print with the hp 1018 printer. The hp laserje

  • Upgrading to CS5 on MAC - last purchase was for PC

    My order is on a status of pending which is a pain when the order process purchase path makes it appear as if it would be instantaneous. I've been using Contribute on a PC for years. I switched to MAC last August and recently installed a copy of CS5

  • All images appear in negative or x-ray

    Hi I'm not sure what happened but everything(photos, internet, itunes...) in my display appears like a photo negative. Just as if you were to use the x-ray feature in photo booth for everything. I've tried the cplor sync utility and changing the disp