Getconf returns compiler flags that the compiler warns about

I have Workshop 12u1 installed on my Solaris 10u8 machine (x86_64). I'm up to date with patches as of a couple weeks ago.
I'm well aware that the Workshop suite has deprecated flags like -xarch=generic64, -xarch=amd64a, etc.
However, when I run "getconf" on my Solaris 10 system, some of the conf settings still return those older flags that the compiler now warns about. That causes a lot of warning chatter when building certain applications (e.g. perl 5.10.1) that are smart enough to use "getconf" to try determine what flags to use in certain situations. Using getconf to find the right flags is even mentioned in the standards(5) page, but following its advice results in deprecation warnings from the compiler. Not good.
If you run the following code you'll see what I mean:
for f in `man getconf | egrep 'XBS'`; do echo "Checking $f"; getconf "$f"; doneIs this something that I (as a sysadmin for the system) should be able to configure, or is it something that would need to be patched to fix? The man pages for getconf, sysconf, and confstr aren't clear where the values are actually coming from.
So, how should this be fixed?
Thanks,
Tim

Enchanter wrote:
Since I'm running regular old Solaris 10, rather than OpenSolaris, I'm skeptical how much help the OpenSolaris developers are truly going to be. I can certainly give it a go, but even if they fix it in OpenSolaris, it might be a very long time before that fix filters into Solaris.Actually, it goes the other way. New features and modification go into the internal Solaris development workspace before they migrate to Open Solaris. The Solaris Express and final releases and Open Solaris releases come from the same source base. Whether a feature or update goes into a Solaris 10 patch depends partly on demand, especially demand from customers with service contracts.
I'm also a little puzzled about the "backwards compatibility" thinking of the compiler developers. In some areas (e.g. C++ and the standard library), what's shipped with the compiler is years and years behind what's current, apparently in the name of "backward compatibility". Yet where compiler flags are concerned, the developers seem to be much more cavalier about deprecating things and making changes that break backward compatibility.We try very hard not to break code or makefiles. Sun (and now Oracle) makes its money from enterprise users. Their code bases last for a long time, and changes are expensive. Changing a line in a makefile or source code file can mean having to re-certify the application.
The change from -xarch to -m specifying the memory model was more abrupt than we would have liked, and in hindsight, was probably not handled very well. We were running into combinatorial explosion of -xarch sub-options due to the increasing number of architectures that the compiler supports. Some option combinations quietly resulted in behavior that you didn't expect. (For example, the combination "*-fast -xarch=v9*"did not give the same result as "*-xarch=v9 -fast*".) Separating memory model from the other considerations made the options easier and more reliable to use.
Don't get me wrong -- I'm all for forward progress with the tool-chain -- I think that the C++ standard library and the defaults should all be brought up to what's current in the industry. Sun Studio 12 update 1 has direct support for Apache stdcxx (if installed in a standard location) in addition to libCstd and STLport. The Apache library will be in the next Open Solaris. When it will be available in a Solaris 10 update has not yet been decided.
I also think adding support for -m32/-m64 was a good move. It just seems to me that if the developers are going to deprecate a large number of flags that the compiler accepts, they should also make certain that the rest of the operating system can handle that change. To me, that means that they need to work with the developers of getconf/confstr() to make certain it knows how to check the compiler version before it emits a particular flag.Only a few options have been deprecated. It's just that they are probably the ones you used most. :-(
More than one compiler version can be installed on a system, and compilers can be installed anywhere. Programmers in medium to large shops typically run compilers installed on a remote server, although they might have other compilers installed locally. If getconf had to guess what compiler you were using, it would often guess wrong. If you have suggestions on how to match up getconf behavior with the compiler you want to use, please post them in an Open Solaris forum.

Similar Messages

  • When I attempt to sign up for the Samsung website using Firefox on my macbook, it returns an error that the random question answer is wrong

    I was attempting to create a user at this site:
    http://www.samsunggalaxys3forum.com/forum/register.php?do=addmember
    It asks a "random" questions "Floors are horizontal, walls are ___?" When I hit submit, it returns an error that the answer was wrong. I tried several times using my macbook running firefox.
    I get to work, where I am using an intel based machine running Windows 7, IE 9 and am able to register on the site and answer the question with no problem.
    I have had the same problem on sites that use captcha - I cannot get past inputting the captcha phrase, as it returns an error every time, while using IE9 is problem free.
    Is there something wrong with my setup of Firefox?

    The Reset Firefox feature can fix many issues by restoring Firefox to its factory default state while saving your essential information.
    Note: ''This will cause you to lose any Extensions, Open websites, and some Preferences.''
    To Reset Firefox do the following:
    #Go to Firefox > Help > Troubleshooting Information.
    #Click the "Reset Firefox" button.
    #Firefox will close and reset. After Firefox is done, it will show a window with the information that is imported. Click Finish.
    #Firefox will open with all factory defaults applied.
    Further information can be found in the [[Reset Firefox – easily fix most problems]] article.
    Did this fix your problems? Please report back to us!

  • Why can't I download digital copies? Every single digial copy I attempt to download returns an error that the code is no longer valid.

    Why can't I download digital copies? Every time I attempt to download a movie, iTunes returns an error that the code is no longer valid. Thx.

    Hi,
    I have seen users reporting on the forum that there download is not working anf stucking up at 99% but when they try it out again say after a day or two then the issue gets resolved, I believe in the mean time the store team/web team fixed that issue. Did you tried it again? Any success?
    Regards,
    Ankush

  • How do I get rid of the specific warning about not having backed up to i Cloud for 2 weeks. I cannot use my iPad at present.

    How do I get rid of the specific warning about not having backed up to i Cloud for 2 weeks. I cannot use my iPad at present.

       

  • Turn off CSS compile warning

    Hi all,
    How do I turn off the compiler warning about unused CSS
    styles. I need the solution for both locally compiled SWF and those
    compiled in Flex Data Services. flex-config.xml doesn´t have
    the node option.
    Thanks
    David

    Thanks Brent for your quick response. That works well with
    the compile locally option. I found the solution if you are
    compiling with FDS.
    Its in the docs under:
    Building and Deploying Flex 2 Applications > Building Flex
    Applications > Flex 2 SDK and Flex Data Services Configuration
    > Flex Data Services configuration
    You can change the flex-webtier-config.xml file and turn the
    production setting on, or use the queryString parameter
    (showAllWarnings=false) if you are just testing.
    Cheers
    David

  • When trying to download the IOS 7.1.1 update I continue to get a message that the update failed?  Please advise!

    When trying to download the ISO 7.1.1 update, my iPad goes through the downloading  process and then goes to the preparing mode and after a while returns a message that the "Software Update Failed, an error occurred downloading IOS 7.1.1 ."  Any suggestions?

    Make sure anti-virus and other security software is disabled.
    Error 20, 21, 23, 26, 28, 29, 34, 36, 37, 40
    These errors typically occur when security software interferes with the restore and update process. Use the steps to troubleshoot security software issues to resolve this issue. In rare cases, these errors may be a hardware issue. If the errors persist on another computer, the device may need service.
    Also, check your hosts file to verify that it's not blocking iTunes from communicating with the update server. See the steps under the heading "Blocked by configuration (Mac OS X / Windows) > Rebuild network information > Mac OS X > The hosts file may also be blocking the iTunes Store." If you have software used to perform unauthorized modifications to the iOS device, uninstall this software prior to editing the hosts file to prevent that software from automatically modifying the hosts file again on restart.
    all of this from
    iTunes: Specific update-and-restore error messages and advanced troubleshooting

  • Java 7 u45 gives yellow warning about a missing Permissions attribute that is not missing

    Hi!
    I have a Swing application distributed with Java WebStart. Since update 45 I can't get rid of the yellow warning about a missing permissions attrribute. I have reduced the JNLP to only reference a single signed jar that has the following manifest:
    Manifest-Version: 1.0
    Implementation-Vendor: Gunnar Grim
    Ant-Version: Apache Ant 1.9.1
    Implementation-Title: DOI Studio
    Implementation-Version: 5.2.5.1310201149
    Specification-Vendor: Gunnar Grim
    Application-Name: DOI Studio
    Permissions: all-permissions
    Specification-Title: DOI Studio
    Created-By: 1.7.0_45-b18 (Oracle Corporation)
    Specification-Version: 5.2.5
    Codebase: *
    Name: ....
    SHA-256-Digest: ...
    Clearly, both Permissions and Codebase are there. Still I get the warning. Anyone knows if this is bug in Java WebStart?
    TIA,
    Gunnar

    Are you signing your app with a 3rd party codesigning certificate ? Self-signing wont work anymore.

  • What’s the strangest thing about the Java platform?

    Hello All,
    In an interview (http://java.sun.com/developer/technicalArticles/Interviews/bloch_effective_08_qa.html) that I did with Joshua Bloch on java.sun.com, promoting the revised version of “Effective Java”, he discusses generics, enums, annotations, the under-use of Java libraries, the importance of minimizing the accessibility of classes and members and minimizing mutability, and other matters.
    To my question: “What’s the strangest thing about the Java platform?” his answer was: “I'm going to say that the strangest thing about the Java platform is that the byte type is signed. I've never heard an explanation for this. It's quite counterintuitive and causes all sorts of errors.”
    You also might be interested in checking out the lively discussion activated by the jsc QA
    over here on the serverside: http://www.theserverside.com/news/thread.tss?thread_id=51624
    Jan Heiss, writer for java.sun.com

    DrClap wrote:
    I liked how he said "What Not to Do" and then brought up java.util.Calendar. I always thought the idea of starting the months' numbering from zero instead of one was one of the most bizarre language design decisions ever made. But it made me think of the TV show "What Not to Wear". We definitely need Clinton and Stacy to show up in Calendar's apartment and send it out for a refit. (Although apparently that's actually happening in Java 7.)Isn't that a carry over from [C's struct tm|http://www.cplusplus.com/reference/clibrary/ctime/tm.html], where tm_mon (0-11) was the number of months since January?

  • Cannot launch vivado simulator 2015.1: behav/compile.bat' script "Please check that the file has the correct 'read/write/execute' permissions"

    Hi,
    I'm trying to run a verilog simulation using the vivado simulator 2015.1 on Windows 7.
    I get the following error when I attempt to launch simulation:    
    ERROR: [USF-XSim-62] 'compile' step failed with error(s) while executing 'D:/projects/axi/axi_test_system/axi_test_system.sim/sim_1/behav/compile.bat' script. Please check that the file has the correct 'read/write/execute' permissions and the Tcl console output for any other possible errors or warnings.
    The tcl console repeats the same message, "Please check that the file has the correct 'read/write/execute' permissions"
    I cannot find any problem with the permissions.  I believe that windows will always execute a .bat file.   Within the same project, I can run elaboration, synthesis and implementation without problems. 
    Any idea why the simulation compile script won't run?
    Thanks,
    Ed

    Hi,
    Thanks very much for your detailed reply. These were the right questions based upon what I told you.   
    However, I took the code home last night and ran it on my webpack 2014.2 release.   It still failed, but I got completely different error messages.   These messages correctly pointed me to an undeclared signal in my testbench. Once fixed, the compile worked and the simulator launched. 
    This morning, I fixed the signal name in my 2015.1 setup, and it also compiled and launched correctly. 
    So, the problem wasn't actually related to file permissions.  It seems like the 2015.1 error message may be broken compared to 2014.2.  
    I was running the Vivado GUI, clicking on "Simulate > Run Behavioral Simulation"
    Thanks again for your help. 
    Regards,
    Ed  
      

  • Compiler warning with Collections.sort() method

    Hi,
    I am sorting a Vector that contains CardTiles objects. CardTiles is a class that extends JButton and implements Comparable. The code works fine but i get the following warning after compilation.
    Note: DeckOfCards.java uses unchecked or unsafe operations.
    Note: Recompile with -Xlint:unchecked for details.
    After compiling with -Xlint, i get the following warning;
    DeckOfCards.java:173: warning: [unchecked] unchecked method invocation: <T>sort(java.util.List<T>) in java.util.Collections is applied to (java.util.Vector<CardTiles>)
    Collections.sort(handTwo);
    ^
    What could be the problem? Is Collections.sort() only intended for Collections of type List?
    Many thanks!

    Hi Jverd, my handTwo Vector was declared as follows;
    Vector<CardTiles> handTwo = new Vector<CardTiles>();
    The CardTiles Source code is as follows;
    import javax.swing.*;
    import java.util.*;
    public class CardTiles extends JButton implements Comparable{
         static String typeOfSort = "face";
         public static final long serialVersionUID = 24362462L;
         int i=1;
         public ImageIcon myIcon;
         public Card myCard;
         public CardTiles(ImageIcon i, Card c){
              super(i);
              myIcon = i;
              myCard = c;
         public int compareTo(Object o){
              CardTiles compare = (CardTiles)o;
              if(typeOfSort.equals("face")){
                   Integer ref1 = new Integer(this.myCard.getFaceValue());
                   Integer ref2 = new Integer(compare.myCard.getFaceValue());
                   return ref1.compareTo(ref2);
              }else{
                   if(this.myCard.getFaceValue() > 9 || compare.myCard.getFaceValue() >9){
                        if(this.myCard.getFaceValue() > 9 && compare.myCard.getFaceValue() >9){
                             String ref1 = this.myCard.getSuit().substring(0,(this.myCard.getSuit().length()-1));
                             String ref2 = compare.myCard.getSuit().substring(0,(compare.myCard.getSuit().length()-1));
                             return ref1.compareTo(ref2);
                        }else{
                             if(this.myCard.getFaceValue() > 9 || compare.myCard.getFaceValue() >9){
                                  String ref1 = this.myCard.getSuit().substring(0,(this.myCard.getSuit().length()-1));
                                  String ref2 = compare.myCard.getSuit() + Integer.toString(compare.myCard.getFaceValue());
                                  return ref1.compareTo(ref2);
                             }else{
                                  String ref1 = this.myCard.getSuit() + Integer.toString(this.myCard.getFaceValue());
                                  String ref2 = compare.myCard.getSuit().substring(0,(compare.myCard.getSuit().length()-1));
                                  return ref1.compareTo(ref2);
                   }else{
                        String ref1 = this.myCard.getSuit() + Integer.toString(this.myCard.getFaceValue());
                        String ref2 = compare.myCard.getSuit() + Integer.toString(compare.myCard.getFaceValue());
                        return ref1.compareTo(ref2);
         public String toString(){
              return ( myCard.toString() + " with fileName " + myIcon.toString());
    }What could be wrong?
    Many thanks!

  • Can java provide a follow/depend/attatch compiling warning?

    I wrote a class called Query.It connect to database and return ResultSet.So user must manually call my method close() to close the ResultSet and Connection, otherwise resource will be avaliable.
    But user maybe forget call the close() method.If codes are released,problem will occur.
    For this reason I want java provides a compile warning if a important method is not called.
    e.g. Codes maybe like this:
    /**Start**/
    class Query(){
    ResultSet getResultSet(DataSource ds){
    //Codes get resultset
    return ResultSet;
    void close() follow getResultSet(DataSource){
    //Close databse
    //Note: "follow getResultSet(DataSource)" is my idea.
    class test{
    Query query = new Query();
    RsultSet rst = query.getResultSet();
    //query.close();//#1
    /**End**/
    If user forget writing line #1 (to close Database,etc), java compiler will give a warning:
    The method close() must follow method getResultSet!
    You will get error when running.
    Can java provide this function?
    Thanks!

    to mchan0 :
    I konw you mean I can copy ResultSet to another Object.But if databse is very very large,ResultSet will use large memory.It is not we want.
    e.g. our project database need to store 40,000,000 records.Once load large numbers records,server will crack.
    So I can only use ResultSet.
    If I wrong,please correct me.
    Thanks

  • Compiler warning PLW-05003 parameter at IN and COPY may have side effects

    For the following Procedure:
    create or replace
    PROCEDURE lob_replace
    p_lob IN OUT NOCOPY CLOB,
    p_what IN VARCHAR2,
    p_with IN VARCHAR2 )
    AS
    n NUMBER;
    BEGIN
    dbms_output.put_line('p_what = ' || p_what);
    dbms_output.put_line('p_with = ' || p_with);
    n := dbms_lob.instr( p_lob, p_what );
    dbms_output.put_line('n = ' || n);
    IF ( NVL(n,0) &gt; 0 ) THEN
    dbms_lob.copy( p_lob, p_lob, dbms_lob.getlength(p_lob), n+LENGTH(p_with), n+LENGTH(p_what) );
    dbms_lob.write( p_lob, LENGTH(p_with), n, p_with );
    IF ( LENGTH(p_what) &gt; LENGTH(p_with) ) THEN
    dbms_lob.trim( p_lob, dbms_lob.getlength(p_lob)-(LENGTH(p_what)-LENGTH(p_with)) );
    END IF;
    END IF;
    END;
    When I compile this, I receive the following warning "Warning(15,5): PLW-05003: same actual parameter(P_LOB and P_LOB) at IN and NOCOPY may have side effect"
    Line 15, column 5 is:
    dbms_lob.copy( p_lob, p_lob, dbms_lob.getlength(p_lob), n+LENGTH(p_with), n+LENGTH(p_what) );
    I'm reading about the NOCOPY Compiler hint at
    http://download-west.oracle.com/docs/cd/B10501_01/appdev.920/a96624/08_subs.htm#12813 but I'm not for sure what exactly the issue is here?
    The syntax for dbms_lob.copy is:
    DBMS_LOB.COPY (
    dest_lob IN OUT NOCOPY BLOB,
    src_lob IN BLOB,
    amount IN INTEGER,
    dest_offset IN INTEGER := 1,
    src_offset IN INTEGER := 1);
    Do I need to copy the p_lob to another variable, not sure what do here?

    Hi,
    Is this really a stand alone procedure, or is it in fact part of a package?
    That warning usually comes when parameter is declared with NOCOPY in specification but without in body. Or vice versa.
    Could this be the case?
    Regards
    Peter

  • [svn:fx-trunk] 5029: Extending the mxmlc warning to apply to any application that uses a type selector (i.e.

    Revision: 5029
    Author: [email protected]
    Date: 2009-02-20 16:10:37 -0800 (Fri, 20 Feb 2009)
    Log Message:
    Extending the mxmlc warning to apply to any application that uses a type selector (i.e. not a universal selector) in the subject when the
    QE: If we could create a negative test cases for the warning that'd be great.
    Doc: Not yet, this will be captured in the Advanced CSS spec.
    Checkintests: Pass
    mustella: Advanced CSS, Button, MenuBar all Pass
    Reviewer: For Paul.
    Bugs:
    SDK-19272 - [Advanced CSS] Pseudo selectors shouldn't be allowed in mxml components
    Ticket Links:
    http://bugs.adobe.com/jira/browse/SDK-19272
    Modified Paths:
    flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/css/StylesContainer.java

    Thanks for the crash log  It looks like you have AIR 3.2 installed.  Could you try updating to 3.3 and generate another log?
    http://get.adobe.com/air

  • Compile warning level

    Dear all,
    Can VC++ trigger compile warning msg when hitting the following conditions related to MFC:
    CString _str;
    if (_str = L"abc") //<--- (should be ==)
    if we use some basic type like int or string(STL) to define for the above conditions, VC compiler can trigger warning msg(warning C4706: assignment within conditional expression) under level 4 warning, but not for MFC CString.
    Thanks and regards,
    Wallace Chan
    P.S: We're using VC++ 2003

    Can VC++ trigger compile warning msg when hitting the following conditions related to MFC:
    It would appear not.
    CString _str;
    if (_str = L"abc") //<--- (should be ==)
    if we use some basic type like int or string(STL) to define for the above conditions, VC compiler can trigger warning msg(warning C4706: assignment within conditional expression) under level 4 warning, but not for MFC CString.
    It's interesting that std::string gives rise to an error in this
    situation (I get a C2451 error with VS2015 CTP), so it'd be neat if
    CString did similar.
    Can you file a bug/suggestion for this on MS connect
    https://connect.microsoft.com/visualStudio/. Post a link back here to
    your report so anyone who sees this can easily find it and vote for
    it.
    Dave

  • Compilation warning

    Hi All,
    Can any one suggest me.
    I have compilation warning .
    my code :
    K is String type
    K key;
    key = (K)(key.toString().replace("'", "''"));
    warninig :
    java:22: warning: [unchecked] unchecked cast
    found : java.lang.String
    required: K
    key = (K)(key.toString().replace("'", "''"));
    Please hekp me
    Thanks in advance

    Here is my code
    public class DataMap<K, V> extends HashMap<K,V>
         public V put(K key, V value)
              if(key == null || value == null) return null;
              if(key.getClass() == String.class)
              key = (K)(key.toString().replace("'", "''"));
              if(value.getClass() == String.class)
              value = (V)(value.toString().replace("'", "''"));
              return super.put(key, value);
    }

Maybe you are looking for