Skip to Main Content
IBM Z Software


This portal is to open public enhancement requests against IBM Z Software products. To view all of your ideas submitted to IBM, create and manage groups of Ideas, or create an idea explicitly set to be either visible by all (public) or visible only to you and IBM (private), use the IBM Unified Ideas Portal (https://ideas.ibm.com).


Shape the future of IBM!

We invite you to shape the future of IBM, including product roadmaps, by submitting ideas that matter to you the most. Here's how it works:

Search existing ideas

Start by searching and reviewing ideas and requests to enhance a product or service. Take a look at ideas others have posted, and add a comment, vote, or subscribe to updates on them if they matter to you. If you can't find what you are looking for,

Post your ideas
  1. Post an idea.

  2. Get feedback from the IBM team and other customers to refine your idea.

  3. Follow the idea through the IBM Ideas process.


Specific links you will want to bookmark for future use

Welcome to the IBM Ideas Portal (https://www.ibm.com/ideas) - Use this site to find out additional information and details about the IBM Ideas process and statuses.

IBM Unified Ideas Portal (https://ideas.ibm.com) - Use this site to view all of your ideas, create new ideas for any IBM product, or search for ideas across all of IBM.

ideasibm@us.ibm.com - Use this email to suggest enhancements to the Ideas process or request help from IBM for submitting your Ideas.

Status Delivered
Workspace COBOL Compilers
Created by Guest
Created on Oct 22, 2013

Performance-critical Statements (with extra generated Code by Compiler) should be flagged

When compiling a program with OPTIMIZE, the compiler should flag performance-critical statements and expressions.
The Compiler-Program "knows" when to insert extra code for number converting,
so it could give a hint to the Programmer, such as an "Informational" Message.
Thanks to Andreas H. for this idea.

Idea priority Medium
  • Guest
    Reply
    |
    Sep 14, 2015

    Due to processing by IBM, this request was reassigned to have the following updated attributes:
    Brand - Servers and Systems Software
    Product family - Programming Languages
    Product - COBOL Compilers

    For recording keeping, the previous attributes were:
    Brand - Rational
    Product family - Design & development
    Product - COBOL Compilers

  • Guest
    Reply
    |
    Feb 11, 2015

    This RFE has been delivered in Enterprise COBOL, V5.2

  • Guest
    Reply
    |
    Aug 12, 2014

    This item has been put into plan for a future compiler release.

  • Guest
    Reply
    |
    Jan 31, 2014

    Hello Tom,

    of course it is ok to flag all all instances of poor code not only in loops.
    Your bad Perform-Varying-Example would also be flagged (multiple, i think).

    To decide if the statement is called only once or multiple (by loop or any other construct) a normal programmer should be able to know.

  • Guest
    Reply
    |
    Jan 23, 2014

    miss-aligned Variables could also be a candidate.
    So when extra code is used to bring them to 4-byte-margins and an simple "sync" in sourcecode would be sufficent.

  • Guest
    Reply
    |
    Nov 21, 2013

    This is a valid feature request. This request may not be delivered within the release currently under development, but the theme is aligned with the current multi-year strategy.

  • Guest
    Reply
    |
    Nov 14, 2013

    With that comments there are coming a few ideas . . . ;-))

    Hi, (cobol-)folks all over in Germany and the world: Think about that also and comment your ideas!!!


    What about numerical operations where conversions have to be done?
    Example 1: Compute bin = packed * display + packed + bin - display ;-))
    Example 2: perform varying display from 1 by 1 until bin (or the other way round)

    Or: perform varying display (why don't use bin-field?)


    See also RFE 34824.
    and: please flag binary fields which aren't "correctly" defined as halfword / fullword / double. bin-field pic s9(1) binary isn't well (shall I open a RFE for that?)


    How clever is the compiler for interpreting string, unstring, inspect? You can handle "easy" using of that commands inline (available in V5.1 I hope). Where this is not possible it could be flagged with an information when you can it handle inline. Perhaps the programmer can change the code a little bit. ;-)


    I'm thinking about how it's possible - with low expense - to eliminate the option TRUNC(BIN) from our applications. Any ideas?

  • Guest
    Reply
    |
    Nov 13, 2013

    Hello,
    INITIALIZE statement seems also to be worth looking at the output ASM instructions.
    When intializing a large table with field mix between PIC X, PIC 9, X, 9and so on, sometimes refined with some redefines-Entries,
    the runtime is quite long.
    Maybe only the first line should be initialized and then moved (with overlapping move?) to the Rest of the whole table.

    Also i think about COMPUTE-Statement and fields with different length or sign-Attributes (or binary vs. packed), which results in number reformatting before (and maybe after) doing the arithmetic.

    I am sure there are existing more situations than mentioned by me. Maybe the community can put in more ideas, too.

    Guenter

  • Guest
    Reply
    |
    Nov 8, 2013

    Hi Gunter,

    Thank you for the request.

    For clarification, are there any other particular situations (other than the ones you listed) you have in mind that would also need to be flagged?

    Also, this type of flagging capability would have to be controlled via an extra option.